Bug #102891 | MySQL driver crashed several times a day | ||
---|---|---|---|
Submitted: | 10 Mar 2021 2:50 | Modified: | 16 Jul 2021 9:28 |
Reporter: | Yang Oracle | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | Connector / ODBC | Severity: | S2 (Serious) |
Version: | OS: | Windows | |
Assigned to: | CPU Architecture: | Any |
[10 Mar 2021 2:50]
Yang Oracle
[10 Mar 2021 6:24]
MySQL Verification Team
Hello Yang, Thank you for the bug report. Could you please let us know the version of ODBC driver? Thanks. Regards, Ashwini Patil
[10 Mar 2021 6:55]
Bogdan Degtyariov
Can you please confirm the version of MySQL ODBC Driver is 8.0.18 64-bit? Thanks.
[10 Mar 2021 11:32]
Bogdan Degtyariov
The crash happens because of the buffer overrun inside table_status_i_s() function when calling SQLColumns(). This can be seen in the minidump. Even though the problem looks serious it is not S1 because a workaround exists for it (changing to S2): The crash can be avoided by using NO_I_S=1 connection option either by adding it to the connection string or by ticking a box inside ODBC Data Source Administrator - > MySQL Connector ODBC Data Source Configuration dialog: Details >> Metadata >> [x] Don't use INFORMATION_SCHEMA for metadata Handling of catalog functions such as SQLColumns() was improved since the version 8.0.18, so you can also try MySQL ODBC Driver version 8.0.23. Nevertheless, table_status_i_s() has to be re-implemented to be sure that the issue with buffer overrun does not happen again.
[16 Mar 2021 6:16]
Bogdan Degtyariov
Posted by developer: The buffer overrun inside SQLColumns() has been fixed by optimizing the memory management and using std classes instead of static allocation.
[16 Mar 2021 8:03]
Yang Oracle
New mini dump
Attachment: DE198016.dmp (application/octet-stream, text), 67.97 KiB.
[16 Mar 2021 8:06]
Yang Oracle
Hi, Our customer send us a new crash dump. Could you please help us double check whether it is the same crash as previous one? Cuz the crash comes from the same customer. Regards,
[23 Apr 2021 10:31]
Yang Oracle
HI Mysql Team, Could you please help to confirm whether the newly uploaded crash dump Attachment: DE198016.dmp is duplicate to the previous one? Thanks a lot.
[23 Apr 2021 10:31]
Yang Oracle
HI Mysql Team, Could you please help to confirm whether the newly uploaded crash dump Attachment: DE198016.dmp is duplicate to the previous one? Thanks a lot.
[11 May 2021 7:01]
Yang Oracle
HI Mysql Team, Could you please help to confirm whether the newly uploaded crash dump Attachment: DE198016.dmp is duplicate to the previous one? Thanks a lot.
[9 Jun 2021 5:25]
Philip Olson
Posted by developer: Fixed as of the upcoming MySQL Connector/ODBC 8.0.26 release, and here's the proposed changelog entry from the documentation team: A buffer overrun inside SQLColumns() caused Connector/ODBC to unexpectedly halt; memory management was optimized to prevent this problem. A workaround was to either use the NO_I_S=1 connection option or enable "Don't use INFORMATION_SCHEMA for metadata" from the ODBC Data Source Administrator. Thank you for the bug report.
[16 Jul 2021 9:28]
Yang Oracle
Could I say the newly upload core dump shares the same root cause of the first one? WE need your confirmation on this. Thanks a lot.
[16 Jul 2021 9:28]
Yang Oracle
Could I say the newly upload core dump shares the same root cause of the first one? WE need your confirmation on this. Thanks a lot.