/mysql-server

MySQL Server, the world's most popular open source database, and MySQL Cluster, a real-time, open source transactional database.

Primary LanguageC++OtherNOASSERTION

MySQL with VilniusDB Patches

This branch of MySQL includes some additional patches developed by me at VilniusDB. They all have been submitted to Oracle but have not yet been applied. I am going to use this branch for any future rebases and to keep new patches, if any.

The patches fix compilation issues, improve AddressSanitizer support, and add some missing features to the clone plugin to work with more than one transactional storage engine.

The original README is renamed to README.Oracle.

The patches

  1. Fix for Bug 115120: Provide memory debugging macro implementations for AddressSanitizer.
  2. Fix for Bug 113123: Compilation fails with LLVM 17 and XCode 15.3.
  3. Fix for Bug 109922: SEs do not coordinate clone rollbacks on instance startup.
  4. Fix for Bug 109920: SEs cannot add to clone data size estimates.
  5. Fix for Bug 109919: Clone plugin does not support arbitrary length O_DIRECT files.
  6. Fix for Bug 107715: Multiple SE clone not calling clone_end after mixed clone_begin failure/success.
  7. Fix for Bug 106750: Some clone tests needlessly marked as Linux-only.
  8. Fix for Bug 106737: Wrong SE called to ack clone application if >1 SE.

One patch that is missing is Bug 109921: Cannot clone with synchronization across SEs. Originally developed for 8.0.32, the InnoDB redo log has changed sufficiently in 8.4.0 that I'd need to invest more time in its rebase than I can spare at the moment.