| Bug #96372 | There is an obvious error in the function trx_rseg_add_rollback_segments | ||
|---|---|---|---|
| Submitted: | 30 Jul 2019 6:42 | Modified: | 12 Aug 2019 14:01 |
| Reporter: | kfpanda kf | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
| Version: | 8.0 | OS: | Any |
| Assigned to: | CPU Architecture: | Any | |
[30 Jul 2019 12:09]
MySQL Verification Team
Hello Mr. kf, Thank you for your bug report. It seems to me that you are correct. Currently, pointer is moved , instead of having the value changed. Seems that this pointer is mostly NULL. Verified as reported.
[12 Aug 2019 14:01]
Daniel Price
Posted by developer: Fixed as of the upcoming 8.0.18 release, and here's the changelog entry: An error in the internal trx_rseg_add_rollback_segments function was corrected.
[13 Aug 2019 12:42]
MySQL Verification Team
Thank you, Daniel .....

Description: Hi, I found an obvious error in the function trx_rseg_add_rollback_segments. It operates directly on the address n_total_created. The correct operation should be *n_total_created. ------ The original code if (n_total_created != nullptr) { n_total_created += n_created; } return (success); ------Fix the problem if (n_total_created != nullptr) { *n_total_created += n_created; } return (success); How to repeat: Hi, I found an obvious error in the function trx_rseg_add_rollback_segments. It operates directly on the address n_total_created. The correct operation should be *n_total_created. ------ The original code if (n_total_created != nullptr) { n_total_created += n_created; } return (success); ------Fix the problem if (n_total_created != nullptr) { *n_total_created += n_created; } return (success);