GSoC (week 1)

Hello everyone,

After developing a prototype for MyISAM ,there were some issues to be resolved. One of the issues is related to error regarding a duplicate entry. So if there is a duplicate entry for a particular key in a row, it generates an error for another key.

After debugging, I found out that it was due to mismatch of a key number between  sql layer and MyISAM file. Keys  are stored in the order of user's input in sql layer. In table2myisam function, this order is changed as each key is either stored as mi_keydef or mi_uniquedef. In mi_create, for each unique definition, an extra key is created in the form of mi_keydef and stored in MYI file which creates the issue of mismatch.

I tried to solve the issue by adding extra member sql_key_no to mi_keydef and mi_uniquedef.I also modified mi_keydef_write and mi_keydef_read to support a new member but after compiling, I got some error related to a key file. Also with the help of my mentor, I found out that it could result in compatibility issues related to old MyISAM file.

So currently, I am trying to solve this using another approach.