mariadb/storage/innobase/row
Thirunarayanan Balathandayuthapani 955ed21a19 MDEV-36281 DML aborts during online virtual index
Reason:
=======
- InnoDB DML commit aborts the server when InnoDB does online
virtual index. During online DDL, concurrent DML commit
operation does read the undo log record and their related
current version of the clustered index record. Based on the
operation, InnoDB do build the old tuple and new tuple for
the table. If the concurrent online index can be affected
by the operation, InnoDB does build the entry
for the index and log the operation.

Problematic case is update operation, InnoDB does build the
update vector. But while building the old row, InnoDB fails
to fill the non-affected virtual column. This lead to
server abort while build the entry for index.

Fix:
===
- First, fill the virtual column entries for the new row.
Duplicate the old row based on new row and change only the
affected fields in old row based on the update vector.
2025-03-26 12:08:32 +01:00
..
row0ext.cc Merge 10.3 into 10.4 2020-07-02 07:39:33 +03:00
row0ftsort.cc Merge branch '10.5' into 10.6 2023-12-17 11:20:43 +01:00
row0import.cc MDEV-35494 fil_space_t::fil_space_t() may be unsafe with GCC -flifetime-dse 2024-12-11 14:44:42 +02:00
row0ins.cc MDEV-36015: unrepresentable value in row_parse_int() 2025-02-13 15:10:53 +01:00
row0log.cc MDEV-36281 DML aborts during online virtual index 2025-03-26 12:08:32 +01:00
row0merge.cc MDEV-35413 InnoDB: Cannot load compressed BLOB 2024-11-22 08:33:03 +02:00
row0mysql.cc MDEV-36061 Incorrect error handling on DDL with FULLTEXT INDEX 2025-02-13 16:28:06 +01:00
row0purge.cc MDEV-35508 Race condition between purge and secondary index INSERT or UPDATE 2024-11-29 10:44:38 +02:00
row0quiesce.cc Check and remove high stack usage 2024-04-23 14:12:31 +03:00
row0row.cc Merge branch '10.5' into 10.6 2024-10-29 14:20:03 +01:00
row0sel.cc MDEV-36015: unrepresentable value in row_parse_int() 2025-02-13 15:10:53 +01:00
row0uins.cc MDEV-32050: Clean up log parsing 2023-10-25 08:27:08 +03:00
row0umod.cc MDEV-32175: Reduce page_align(), page_offset() calls 2024-11-21 11:01:30 +02:00
row0undo.cc MDEV-32175: Reduce page_align(), page_offset() calls 2024-11-21 11:01:30 +02:00
row0upd.cc MDEV-34515: Contention between purge and workload 2024-08-26 12:23:06 +03:00
row0vers.cc MDEV-32175: Reduce page_align(), page_offset() calls 2024-11-21 11:01:30 +02:00