Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
5.5(EOL), 10.0(EOL), 10.1(EOL), 10.2(EOL), 10.3(EOL)
-
None
Description
The code in TABLE_SHARE::init_from_binary_frm_image() is not safe for broken FRM files.
In debug mode it can crash on assert.
In release mode its behavior is not predictable.
interval_nr= (uint) strpos[12];
|
...
|
DBUG_ASSERT(interval_nr); // Expect non-null expression |
...
|
vcol_info_length= interval_nr;
|
vcol_expr_length= vcol_info_length -
|
(uint)(FRM_VCOL_OLD_HEADER_SIZE(opt_interval_id));
|
...
|
|
The same problem presents in the branch for MYSQL57_GENERATED_FIELD (since 10.2), it's reported as a separate issue MDEV-16518.
Attachments
Issue Links
- blocks
-
MDEV-4912 Data type plugin API version 1
- Closed
- relates to
-
MDEV-16518 MYSQL57_GENERATED_FIELD: The code in TABLE_SHARE::init_from_binary_frm_image() is not safe
- Closed