mirror of
https://github.com/MariaDB/server.git
synced 2025-09-20 08:05:30 +02:00
![]() Multi-delete code invokes ha_rnd_end after applying deferred deletes, following the pattern as in multi-update. The CSV engine batches deletes made via calls to delete_row, then applies them all at once during ha_rnd_end. For each row batched, the CSV engine decrements an internal counter of the total rows in the table. The multi-delete code was not calling ha_rnd_end, so this internal counter was not consistent with the total number of rows in the table, triggering the assertion. In the CSV engine, explicitly delete the destination file before renaming the source file over it. This avoids a file rename problem on Windows. This change would have been necessary before the latest multi-delete changes, had this test case existed at that point in time, because the end_read_record call in do_table_deletes swallowed the rename failure on Windows. |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
ha_tina.cc | ||
ha_tina.h | ||
transparent_file.cc | ||
transparent_file.h |