Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
5.5.33
-
None
-
None
Description
An frm file found "in the wild" had 0x2b as its 4th byte. This "works" fine in MariaDB <5.5.33 but causes crashes in MariaDB 5.5.33. Changing this byte in the .frm file to 0x2a allows the table to be used in MariaDB 5.5.33, but the first use gives this warning:
| Note | 1194 | Zerofilling moved table ./test/kb3_domains |
|
It is not clear how this .frm file was originally created, but I am assured that it was generated by MariaDB.
Stacktrace:
??:0(my_print_stacktrace)[0xa8962e]
|
??:0(handle_fatal_signal)[0x6d002b]
|
??:0(??)[0x7fa17becb500]
|
??:0(TABLE_SHARE::destroy())[0x61da55]
|
??:0(my_hash_delete)[0xa6ea34]
|
??:0(_Z15get_table_shareP3THDP10TABLE_LISTPcjjPij.clone.7)[0x541ae7]
|
??:0(open_table(THD*, TABLE_LIST*, st_mem_root*, Open_table_context*))[0x54ac1d]
|
??:0(open_tables(THD*, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*))[0x54bf01]
|
??:0(open_and_lock_tables(THD*, TABLE_LIST*, bool, unsigned int, Prelocking_strategy*))[0x54cc54]
|
??:0(execute_sqlcom_select(THD*, TABLE_LIST*))[0x585915]
|
??:0(mysql_execute_command(THD*))[0x58c0f6]
|
??:0(mysql_parse(THD*, char*, unsigned int, Parser_state*))[0x58ee19]
|
??:0(dispatch_command(enum_server_command, THD*, char*, unsigned int))[0x590270]
|
??:0(do_handle_one_connection(THD*))[0x649c1f]
|
??:0(handle_one_connection)[0x649cbc]
|
??:0(??)[0x7fa17bec3851]
|
??:0(??)[0x7fa17a83790d]
|
Attachments
Issue Links
- duplicates
-
MDEV-5036 Upgrade to 5.5.33 breakes aria table and causes server crash
-
- Closed
-
Activity
Field | Original Value | New Value |
---|---|---|
Fix Version/s | 5.5.34 [ 13500 ] |
Assignee | Sergei Golubchik [ serg ] |
Description |
An frm file found "in the wild" had 0x2b as its 4th byte. This "works" fine in MariaDB <5.5.33 but causes crashes in MariaDB 5.5.33. Changing this byte in the .frm file to 0x2a allows the table to be used in MariaDB 5.5.33, but the first use gives this warning: | Note | 1194 | Zerofilling moved table ./test/kb3_domains | It is not clear how this .frm file was originally created, but I am assured that it was generated by MariaDB. Stacktrace: ??:0(my_print_stacktrace)[0xa8962e] ??:0(handle_fatal_signal)[0x6d002b] ??:0(??)[0x7fa17becb500] ??:0(TABLE_SHARE::destroy())[0x61da55] ??:0(my_hash_delete)[0xa6ea34] ??:0(_Z15get_table_shareP3THDP10TABLE_LISTPcjjPij.clone.7)[0x541ae7] ??:0(open_table(THD*, TABLE_LIST*, st_mem_root*, Open_table_context*))[0x54ac1d] ??:0(open_tables(THD*, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*))[0x54bf01] ??:0(open_and_lock_tables(THD*, TABLE_LIST*, bool, unsigned int, Prelocking_strategy*))[0x54cc54] ??:0(execute_sqlcom_select(THD*, TABLE_LIST*))[0x585915] ??:0(mysql_execute_command(THD*))[0x58c0f6] ??:0(mysql_parse(THD*, char*, unsigned int, Parser_state*))[0x58ee19] ??:0(dispatch_command(enum_server_command, THD*, char*, unsigned int))[0x590270] ??:0(do_handle_one_connection(THD*))[0x649c1f] ??:0(handle_one_connection)[0x649cbc] ??:0(??)[0x7fa17bec3851] ??:0(??)[0x7fa17a83790d] |
An frm file found "in the wild" had 0x2b as its 4th byte. This "works" fine in MariaDB <5.5.33 but causes crashes in MariaDB 5.5.33. Changing this byte in the .frm file to 0x2a allows the table to be used in MariaDB 5.5.33, but the first use gives this warning: {noformat} | Note | 1194 | Zerofilling moved table ./test/kb3_domains | {noformat} It is not clear how this .frm file was originally created, but I am assured that it was generated by MariaDB. Stacktrace: {noformat} ??:0(my_print_stacktrace)[0xa8962e] ??:0(handle_fatal_signal)[0x6d002b] ??:0(??)[0x7fa17becb500] ??:0(TABLE_SHARE::destroy())[0x61da55] ??:0(my_hash_delete)[0xa6ea34] ??:0(_Z15get_table_shareP3THDP10TABLE_LISTPcjjPij.clone.7)[0x541ae7] ??:0(open_table(THD*, TABLE_LIST*, st_mem_root*, Open_table_context*))[0x54ac1d] ??:0(open_tables(THD*, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*))[0x54bf01] ??:0(open_and_lock_tables(THD*, TABLE_LIST*, bool, unsigned int, Prelocking_strategy*))[0x54cc54] ??:0(execute_sqlcom_select(THD*, TABLE_LIST*))[0x585915] ??:0(mysql_execute_command(THD*))[0x58c0f6] ??:0(mysql_parse(THD*, char*, unsigned int, Parser_state*))[0x58ee19] ??:0(dispatch_command(enum_server_command, THD*, char*, unsigned int))[0x590270] ??:0(do_handle_one_connection(THD*))[0x649c1f] ??:0(handle_one_connection)[0x649cbc] ??:0(??)[0x7fa17bec3851] ??:0(??)[0x7fa17a83790d] {noformat} |
Status | Open [ 1 ] | In Progress [ 3 ] |
Status | In Progress [ 3 ] | Stalled [ 10000 ] |
Resolution | Fixed [ 1 ] | |
Status | Stalled [ 10000 ] | Closed [ 6 ] |
Workflow | defaullt [ 29016 ] | MariaDB v2 [ 44110 ] |
Workflow | MariaDB v2 [ 44110 ] | MariaDB v3 [ 64243 ] |
Workflow | MariaDB v3 [ 64243 ] | MariaDB v4 [ 147041 ] |
Sorry, I should specify that this is an Aria table and is supposed to be an Aria table. It was, about a year ago, converted to Aria from MyISAM. I haven't done too much investigation into what version of MariaDB might have been used at the time or anything like that...
ALTER TABLE ... ENGINE=ARIA; seems to fix this and put the correct engine ID (0x2a) into the .frm file.