I saw a case of mt-tablet-test failing with what I think is the following scenario:
- transaction applies an update to DMS
- delta flush happens
- major delta compaction runs (the update is now part of base data and we have an UNDO)
- the RS is selected for compaction
- CHECK failure because the UNDO delta contains something that is not yet committed.
We probably need to ensure that we don't Flush data which isn't yet committed from an MVCC standpoint.