[MDEV-28582] atomic.alter_table_rocksdb reports UBSAN failure on old versions Created: 2022-05-16 Updated: 2022-05-17 Resolved: 2022-05-16 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Storage Engine - RocksDB |
| Affects Version/s: | 10.6 |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Major |
| Reporter: | Sergei Petrunia | Assignee: | Sergei Petrunia |
| Resolution: | Won't Fix | Votes: | 0 |
| Labels: | None | ||
| Description |
|
Build the server with BUILD/compile-pentium64-ubsan. Run atomic.alter_table_rocksdb test and observe a complaint like this:
|
| Comments |
| Comment by Sergei Petrunia [ 2022-05-16 ] | |||||||||||
|
Can be narrowed down to a very simple test:
produces this:
| |||||||||||
| Comment by Sergei Petrunia [ 2022-05-16 ] | |||||||||||
|
Note that a similar test with InnoDB
produces no errors. | |||||||||||
| Comment by Sergei Petrunia [ 2022-05-16 ] | |||||||||||
|
The complaint doesn't make much sense:
Well, myrocks::Rdb_inplace_alter_ctx does inherit from inplace_alter_handler_ctx. The line where the failure happens (handler.h:2658) is:
class inplace_alter_handler_ctx does have a virtual destructor. After having looked at the code closely, I still don't see anything wrong. A bug in UBSAN? | |||||||||||
| Comment by Sergei Petrunia [ 2022-05-16 ] | |||||||||||
|
Looks like a bug in UBSAN to me. I can observe the issue on Ubuntu Bionic (gcc 7.5). I can't observe the issue on a newer Ubuntu Impish (gcc 11.2) |