[MCOL-1820] Adjust high-water mark on final valid partition and drop other partitions when DELETE removes rows from the end of a table in key order. Created: 2018-10-17  Updated: 2023-10-25  Resolved: 2023-10-25

Status: Closed
Project: MariaDB ColumnStore
Component/s: writeengine
Affects Version/s: None
Fix Version/s: Icebox

Type: New Feature Priority: Minor
Reporter: Juan Assignee: Todd Stoffel (Inactive)
Resolution: Won't Fix Votes: 0
Labels: None

Epic Link: ColumnStore Performance Improvements

 Description   

There is a possible edgecase where the end of a ColumnStore table is deleted... ie,

/* "customer" Table loaded in "custkey" order */
DELETE FROM customer
WHERE custkey > 1000;

Which may leave the end of the table with a series of rows marked as deleted. There could also be partitions at the end of the table that contain only rows marked for deletion.

Could ColumnStore recover this space automatically in the case of deletes in key order as described?



 Comments   
Comment by Andrew Hutchings (Inactive) [ 2018-11-02 ]

The initial description for this ticket makes the assumption that blocks are sequential in a column file. Unfortunately with compressed columns this isn't always the case. Updates and deletes both remap blocks to other parts of the file.

It would be better for us to implement a vacuum process that over a period of time recovers this space.

Comment by Andrew Hutchings (Inactive) [ 2018-11-02 ]

also, being able to control the extent size and partitioning (also a feature we are considering for the future) could well help here.

Comment by Juan [ 2020-07-08 ]

Hi - manjot has directed me to update the customer on 22716 which is an inquiry about this performance issue. Is there any change I can report?

Generated at Thu Feb 08 02:31:37 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.