mirror of
				https://source.quilibrium.com/quilibrium/ceremonyclient.git
				synced 2025-11-04 07:37:26 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			265 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			265 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
# Ensure that a range deletion in a higher level results in a compensated level
 | 
						|
# size and a higher level score as a result.
 | 
						|
 | 
						|
define lbase-max-bytes=65536 enable-table-stats=false
 | 
						|
L5
 | 
						|
  a.RANGEDEL.2:f
 | 
						|
L6
 | 
						|
  a.SET.1:<rand-bytes=65536>
 | 
						|
  b.SET.1:<rand-bytes=65536>
 | 
						|
  c.SET.1:<rand-bytes=65536>
 | 
						|
  d.SET.1:<rand-bytes=65536>
 | 
						|
  e.SET.1:<rand-bytes=65536>
 | 
						|
----
 | 
						|
5:
 | 
						|
  000004:[a#2,RANGEDEL-f#inf,RANGEDEL]
 | 
						|
6:
 | 
						|
  000005:[a#1,SET-e#1,SET]
 | 
						|
 | 
						|
scores
 | 
						|
----
 | 
						|
L       Size   Score
 | 
						|
L0  	0B     0.0
 | 
						|
L1  	0B     0.0
 | 
						|
L2  	0B     0.0
 | 
						|
L3  	0B     0.0
 | 
						|
L4  	0B     0.0
 | 
						|
L5  	729B   0.0
 | 
						|
L6  	321KB  -
 | 
						|
 | 
						|
enable-table-stats
 | 
						|
----
 | 
						|
 | 
						|
wait-pending-table-stats
 | 
						|
000004
 | 
						|
----
 | 
						|
num-entries: 1
 | 
						|
num-deletions: 1
 | 
						|
num-range-key-sets: 0
 | 
						|
point-deletions-bytes-estimate: 0
 | 
						|
range-deletions-bytes-estimate: 328519
 | 
						|
 | 
						|
scores
 | 
						|
----
 | 
						|
L       Size   Score
 | 
						|
L0  	0B     0.0
 | 
						|
L1  	0B     0.0
 | 
						|
L2  	0B     0.0
 | 
						|
L3  	0B     0.0
 | 
						|
L4  	0B     0.0
 | 
						|
L5  	729B   4.5
 | 
						|
L6  	321KB  -
 | 
						|
 | 
						|
# Ensure that point deletions in a higher level result in a compensated level
 | 
						|
# size and higher level scores as a result.
 | 
						|
 | 
						|
define lbase-max-bytes=65536  enable-table-stats=false
 | 
						|
L5
 | 
						|
  a.DEL.2:
 | 
						|
  b.DEL.2:
 | 
						|
  c.DEL.2:
 | 
						|
  d.DEL.2:
 | 
						|
  e.DEL.2:
 | 
						|
L6
 | 
						|
  a.SET.1:<rand-bytes=65536>
 | 
						|
  b.SET.1:<rand-bytes=65536>
 | 
						|
  c.SET.1:<rand-bytes=65536>
 | 
						|
  d.SET.1:<rand-bytes=65536>
 | 
						|
  e.SET.1:<rand-bytes=65536>
 | 
						|
----
 | 
						|
5:
 | 
						|
  000004:[a#2,DEL-e#2,DEL]
 | 
						|
6:
 | 
						|
  000005:[a#1,SET-e#1,SET]
 | 
						|
 | 
						|
scores
 | 
						|
----
 | 
						|
L       Size   Score
 | 
						|
L0  	0B     0.0
 | 
						|
L1  	0B     0.0
 | 
						|
L2  	0B     0.0
 | 
						|
L3  	0B     0.0
 | 
						|
L4  	0B     0.0
 | 
						|
L5  	715B   0.0
 | 
						|
L6  	321KB  -
 | 
						|
 | 
						|
enable-table-stats
 | 
						|
----
 | 
						|
 | 
						|
wait-pending-table-stats
 | 
						|
000004
 | 
						|
----
 | 
						|
num-entries: 5
 | 
						|
num-deletions: 5
 | 
						|
num-range-key-sets: 0
 | 
						|
point-deletions-bytes-estimate: 164581
 | 
						|
range-deletions-bytes-estimate: 0
 | 
						|
 | 
						|
scores
 | 
						|
----
 | 
						|
L       Size   Score
 | 
						|
L0  	0B     0.0
 | 
						|
L1  	0B     0.0
 | 
						|
L2  	0B     0.0
 | 
						|
L3  	0B     0.0
 | 
						|
L4  	0B     0.0
 | 
						|
L5  	715B   2.3
 | 
						|
L6  	321KB  -
 | 
						|
 | 
						|
# Run a similar test as above, but this time the table containing the DELs is
 | 
						|
# ingested after the database is initialized. When the ingested sstable's stats
 | 
						|
# are loaded and automatic compactions are re-enabled, it should trigger an
 | 
						|
# automatic compaction of the ingested sstable on account of the high
 | 
						|
# point-deletions-bytes-estimate value.
 | 
						|
#
 | 
						|
# This a regression test for an issue where the table stats collector wouldn't
 | 
						|
# attempt to schedule a compaction if a file only had compensation due to point
 | 
						|
# deletions and not range deletions.
 | 
						|
 | 
						|
define lbase-max-bytes=65536  enable-table-stats=true auto-compactions=off
 | 
						|
L6
 | 
						|
  a.SET.1:<rand-bytes=65536>
 | 
						|
  b.SET.1:<rand-bytes=65536>
 | 
						|
  c.SET.1:<rand-bytes=65536>
 | 
						|
  d.SET.1:<rand-bytes=65536>
 | 
						|
  e.SET.1:<rand-bytes=65536>
 | 
						|
----
 | 
						|
6:
 | 
						|
  000004:[a#1,SET-e#1,SET]
 | 
						|
 | 
						|
ingest ext1
 | 
						|
del a:
 | 
						|
del b:
 | 
						|
del c:
 | 
						|
del d:
 | 
						|
del e:
 | 
						|
----
 | 
						|
5:
 | 
						|
  000005:[a:#10,DEL-e:#10,DEL]
 | 
						|
6:
 | 
						|
  000004:[a#1,SET-e#1,SET]
 | 
						|
 | 
						|
wait-pending-table-stats
 | 
						|
000005
 | 
						|
----
 | 
						|
num-entries: 5
 | 
						|
num-deletions: 5
 | 
						|
num-range-key-sets: 0
 | 
						|
point-deletions-bytes-estimate: 164616
 | 
						|
range-deletions-bytes-estimate: 0
 | 
						|
 | 
						|
maybe-compact
 | 
						|
----
 | 
						|
1 compactions in progress:
 | 
						|
5: 000005:a:#10,0-e:#10,0
 | 
						|
6: 000004:a#1,1-e#1,1
 | 
						|
 | 
						|
scores
 | 
						|
----
 | 
						|
L       Size   Score
 | 
						|
L0  	0B     0.0
 | 
						|
L1  	0B     0.0
 | 
						|
L2  	0B     0.0
 | 
						|
L3  	0B     0.0
 | 
						|
L4  	0B     0.0
 | 
						|
L5  	0B     0.0
 | 
						|
L6  	321KB  -
 | 
						|
 | 
						|
lsm
 | 
						|
----
 | 
						|
6:
 | 
						|
  000006:[a#0,SET-e#0,SET]
 | 
						|
 | 
						|
# Test the adjustment of level sizes to accommodate in-progress compactions. A
 | 
						|
# compaction may be "inProgress" if it's already been applied, but is still
 | 
						|
# deleting obsolete files. These compactions' effects have already been applied
 | 
						|
# to the LSM, so size adjustment should ignore them and not doubly adjust sizes.
 | 
						|
 | 
						|
define lbase-max-bytes=65536  enable-table-stats=false auto-compactions=on pause-cleaning
 | 
						|
L5
 | 
						|
  aa.SET.2:<rand-bytes=131072>
 | 
						|
  bb.SET.2:<rand-bytes=131072>
 | 
						|
  cc.SET.2:<rand-bytes=131072>
 | 
						|
  dd.SET.2:<rand-bytes=131072>
 | 
						|
L5
 | 
						|
  e.SET.2:<rand-bytes=131072>
 | 
						|
L6
 | 
						|
  a.SET.1:<rand-bytes=65536>
 | 
						|
  b.SET.1:<rand-bytes=65536>
 | 
						|
  c.SET.1:<rand-bytes=65536>
 | 
						|
  d.SET.1:<rand-bytes=65536>
 | 
						|
L6
 | 
						|
  e.SET.1:<rand-bytes=131072>
 | 
						|
----
 | 
						|
5:
 | 
						|
  000004:[aa#2,SET-dd#2,SET]
 | 
						|
  000005:[e#2,SET-e#2,SET]
 | 
						|
6:
 | 
						|
  000006:[a#1,SET-d#1,SET]
 | 
						|
  000007:[e#1,SET-e#1,SET]
 | 
						|
 | 
						|
scores
 | 
						|
----
 | 
						|
L       Size   Score
 | 
						|
L0  	0B     0.0
 | 
						|
L1  	0B     0.0
 | 
						|
L2  	0B     0.0
 | 
						|
L3  	0B     0.0
 | 
						|
L4  	0B     0.0
 | 
						|
L5  	641KB  6.3
 | 
						|
L6  	385KB  -
 | 
						|
 | 
						|
lsm verbose
 | 
						|
----
 | 
						|
5:
 | 
						|
  000004:[aa#2,SET-dd#2,SET] seqnums:[2-2] points:[aa#2,SET-dd#2,SET]
 | 
						|
  000005:[e#2,SET-e#2,SET] seqnums:[2-2] points:[e#2,SET-e#2,SET]
 | 
						|
6:
 | 
						|
  000006:[a#1,SET-d#1,SET] seqnums:[1-1] points:[a#1,SET-d#1,SET]
 | 
						|
  000007:[e#1,SET-e#1,SET] seqnums:[1-1] points:[e#1,SET-e#1,SET]
 | 
						|
 | 
						|
# Attempting to schedule a compaction should begin a L5->L6 compaction.
 | 
						|
 | 
						|
maybe-compact
 | 
						|
----
 | 
						|
1 compactions in progress:
 | 
						|
5: 000004:aa#2,1-dd#2,1
 | 
						|
6: 000006:a#1,1-d#1,1
 | 
						|
 | 
						|
# The scores and sizes should be stable between when the version edit has been
 | 
						|
# applied but the compaction has not completed, and when the compaction is
 | 
						|
# finally complete.
 | 
						|
 | 
						|
scores wait-for-compaction=version-edit
 | 
						|
----
 | 
						|
L       Size   Score
 | 
						|
L0  	0B     0.0
 | 
						|
L1  	0B     0.0
 | 
						|
L2  	0B     0.0
 | 
						|
L3  	0B     0.0
 | 
						|
L4  	0B     0.0
 | 
						|
L5  	129KB  0.5
 | 
						|
L6  	898KB  -
 | 
						|
 | 
						|
lsm
 | 
						|
----
 | 
						|
5:
 | 
						|
  000005:[e#2,SET-e#2,SET]
 | 
						|
6:
 | 
						|
  000008:[a#0,SET-dd#0,SET]
 | 
						|
  000007:[e#1,SET-e#1,SET]
 | 
						|
 | 
						|
resume-cleaning
 | 
						|
----
 | 
						|
 | 
						|
scores wait-for-compaction=completion
 | 
						|
----
 | 
						|
L       Size   Score
 | 
						|
L0  	0B     0.0
 | 
						|
L1  	0B     0.0
 | 
						|
L2  	0B     0.0
 | 
						|
L3  	0B     0.0
 | 
						|
L4  	0B     0.0
 | 
						|
L5  	129KB  0.5
 | 
						|
L6  	898KB  -
 |