[MCOL-3317] test000 does not clear out all files it's supposed to Created: 2019-05-17  Updated: 2019-09-20  Resolved: 2019-09-20

Status: Closed
Project: MariaDB ColumnStore
Component/s: writeengine
Affects Version/s: 1.4
Fix Version/s: 1.4.0

Type: Bug Priority: Blocker
Reporter: Patrick LeBlanc (Inactive) Assignee: Daniel Lee (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Environment:

Ubuntu 18, not-root dev environment


Issue Links:
Problem/Incident
is caused by MCOL-498 provide option to not preallocate dis... Closed
Sprint: 2019-06

 Description   

Looking into why our S3 stuff wasn't deleting everything it should, I found it was a CS-side problem in develop as of commit 355e2f91. I can't say when it started happening. It is not currently happening in develop-1.2.

Running test000 once takes up about 7.2GB of disk space. Running it again, it should use the same 7.2GB, but instead uses about 12GB. It adds about 5GB of disk usage per run.

Some add'l info...
Ubuntu 18.04
running as non-root
SKIP_OAM_INIT & starting with startcs/stopcs scripts



 Comments   
Comment by Andrew Hutchings (Inactive) [ 2019-08-13 ]

Confirmed using non-root and skip OAM. When a table is dropped the extent files are not being deleted and are remaining in the extent map. Essentially orphaned.

Comment by Andrew Hutchings (Inactive) [ 2019-08-14 ]

In a test build I took develop and reverted all the MCOL-498 commits. The bug went away. So it is caused by MCOL-498.

Comment by Andrew Hutchings (Inactive) [ 2019-08-14 ]

Cause is commit https://github.com/mariadb-corporation/mariadb-columnstore-engine/pull/738/commits/7cf0d55dd0d43c24a0a405c050b7fbbbe77863fe

Comment by Roman [ 2019-08-16 ]

Please review this.

Comment by Roman [ 2019-08-17 ]

The issue worths the explanation.

The proactive fill-block-with-empty-magic-values happens to overwrite a legitimate block with data if the first value of the block has been erased by DELETE operation. This logic is fired by INSERT SQL operation. I moved the the logic into a higher level to allow me to call the logic only when it is needed.

Comment by Daniel Lee (Inactive) [ 2019-09-20 ]

Build verified: 1.4.0-1

engine commit:
975463c

The reported issue no longer occurring.

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