Cleanup: Revert unnecessary changes and simplify some code
Revert any changes that are not needed any more. Most of the code submitted by Vinchen has been refactored so far. The redo log format changes are as they were submitted by Vinchen. FIXME: On rollback, convert the record to "old" format if the values match the 'default row' ones. There should be no need to write any new BLOBs during rollback. If we created new BLOBs during rollback, crash recovery could become very tricky. TODO: Review the changes to row0upd.cc, row0umod.cc. For new inserts and updates, if the suffix of instantly added columns match the 'default row', we can omit those fields from the clustered index record. If a non-default value is assigned to the last column, then all columns will have to be materialized. TODO: Implement update-in-place of the 'default row' record (for performing instant ADD COLUMN after instant ADD COLUMN). TODO: Implement and test rollback of the 'default row' record. TODO: Test crash recovery. Ensure that the ADD COLUMN operation is being rolled back if the server is killed during it. Also test crash recovery of DML operations on tables that were subject to instant ADD COLUMN, using all supported ROW_FORMAT (REDUNDANT, COMPACT, DYNAMIC).
Showing
Please register or sign in to comment