mirror of
				https://source.quilibrium.com/quilibrium/ceremonyclient.git
				synced 2025-11-04 15:47:26 +00:00 
			
		
		
		
	
		
			
	
	
		
			1181 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			1181 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								ingest
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest non-existent
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								open non-existent: file does not exist
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Elide ingestion of empty sstables.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext0
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext0
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext0 format=pebblev2
							 | 
						||
| 
								 | 
							
								set a 1
							 | 
						||
| 
								 | 
							
								set b 2
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext0
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								metrics
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								      |                             |       |       |   ingested   |     moved    |    written   |       |    amp
							 | 
						||
| 
								 | 
							
								level | tables  size val-bl vtables | score |   in  | tables  size | tables  size | tables  size |  read |   r   w
							 | 
						||
| 
								 | 
							
								------+-----------------------------+-------+-------+--------------+--------------+--------------+-------+---------
							 | 
						||
| 
								 | 
							
								    0 |     0     0B     0B       0 |  0.00 |    0B |     0     0B |     0     0B |     0     0B |    0B |   0  0.0
							 | 
						||
| 
								 | 
							
								    1 |     0     0B     0B       0 |  0.00 |    0B |     0     0B |     0     0B |     0     0B |    0B |   0  0.0
							 | 
						||
| 
								 | 
							
								    2 |     0     0B     0B       0 |  0.00 |    0B |     0     0B |     0     0B |     0     0B |    0B |   0  0.0
							 | 
						||
| 
								 | 
							
								    3 |     0     0B     0B       0 |  0.00 |    0B |     0     0B |     0     0B |     0     0B |    0B |   0  0.0
							 | 
						||
| 
								 | 
							
								    4 |     0     0B     0B       0 |  0.00 |    0B |     0     0B |     0     0B |     0     0B |    0B |   0  0.0
							 | 
						||
| 
								 | 
							
								    5 |     0     0B     0B       0 |  0.00 |    0B |     0     0B |     0     0B |     0     0B |    0B |   0  0.0
							 | 
						||
| 
								 | 
							
								    6 |     1   696B     0B       0 |     - |    0B |     1   696B |     0     0B |     0     0B |    0B |   1  0.0
							 | 
						||
| 
								 | 
							
								total |     1   696B     0B       0 |     - |  696B |     1   696B |     0     0B |     0   696B |    0B |   1  1.0
							 | 
						||
| 
								 | 
							
								-------------------------------------------------------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								WAL: 1 files (0B)  in: 0B  written: 0B (0% overhead)
							 | 
						||
| 
								 | 
							
								Flushes: 0
							 | 
						||
| 
								 | 
							
								Compactions: 0  estimated debt: 0B  in progress: 0 (0B)
							 | 
						||
| 
								 | 
							
								             default: 0  delete: 0  elision: 0  move: 0  read: 0  rewrite: 0  multi-level: 0
							 | 
						||
| 
								 | 
							
								MemTables: 1 (256KB)  zombie: 0 (0B)
							 | 
						||
| 
								 | 
							
								Zombie tables: 0 (0B)
							 | 
						||
| 
								 | 
							
								Backing tables: 0 (0B)
							 | 
						||
| 
								 | 
							
								Virtual tables: 0 (0B)
							 | 
						||
| 
								 | 
							
								Block cache: 6 entries (1.2KB)  hit rate: 35.7%
							 | 
						||
| 
								 | 
							
								Table cache: 1 entries (800B)  hit rate: 50.0%
							 | 
						||
| 
								 | 
							
								Secondary cache: 0 entries (0B)  hit rate: 0.0%
							 | 
						||
| 
								 | 
							
								Snapshots: 0  earliest seq num: 0
							 | 
						||
| 
								 | 
							
								Table iters: 0
							 | 
						||
| 
								 | 
							
								Filter utility: 0.0%
							 | 
						||
| 
								 | 
							
								Ingestions: 1  as flushable: 0 (0B in 0 tables)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								seek-ge a
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a: (1, .)
							 | 
						||
| 
								 | 
							
								b: (2, .)
							 | 
						||
| 
								 | 
							
								.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get
							 | 
						||
| 
								 | 
							
								a
							 | 
						||
| 
								 | 
							
								b
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a:1
							 | 
						||
| 
								 | 
							
								b:2
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								wait-pending-table-stats
							 | 
						||
| 
								 | 
							
								000006
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								num-entries: 2
							 | 
						||
| 
								 | 
							
								num-deletions: 0
							 | 
						||
| 
								 | 
							
								num-range-key-sets: 0
							 | 
						||
| 
								 | 
							
								point-deletions-bytes-estimate: 0
							 | 
						||
| 
								 | 
							
								range-deletions-bytes-estimate: 0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext1
							 | 
						||
| 
								 | 
							
								set a 3
							 | 
						||
| 
								 | 
							
								del b
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext1
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								seek-ge a
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a: (3, .)
							 | 
						||
| 
								 | 
							
								.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get
							 | 
						||
| 
								 | 
							
								a
							 | 
						||
| 
								 | 
							
								b
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a:3
							 | 
						||
| 
								 | 
							
								b: pebble: not found
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext2 format=pebblev2
							 | 
						||
| 
								 | 
							
								set a 4
							 | 
						||
| 
								 | 
							
								set b 5
							 | 
						||
| 
								 | 
							
								set c 6
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext2
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000008:[a#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								seek-ge a
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a: (4, .)
							 | 
						||
| 
								 | 
							
								b: (5, .)
							 | 
						||
| 
								 | 
							
								c: (6, .)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get
							 | 
						||
| 
								 | 
							
								a
							 | 
						||
| 
								 | 
							
								b
							 | 
						||
| 
								 | 
							
								c
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a:4
							 | 
						||
| 
								 | 
							
								b:5
							 | 
						||
| 
								 | 
							
								c:6
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext3
							 | 
						||
| 
								 | 
							
								merge b 5
							 | 
						||
| 
								 | 
							
								del c
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext3
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.2:
							 | 
						||
| 
								 | 
							
								  000009:[b#13,MERGE-c#13,DEL]
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000008:[a#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								seek-ge a
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a: (4, .)
							 | 
						||
| 
								 | 
							
								b: (55, .)
							 | 
						||
| 
								 | 
							
								.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get
							 | 
						||
| 
								 | 
							
								a
							 | 
						||
| 
								 | 
							
								b
							 | 
						||
| 
								 | 
							
								c
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a:4
							 | 
						||
| 
								 | 
							
								b:55
							 | 
						||
| 
								 | 
							
								c: pebble: not found
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext4
							 | 
						||
| 
								 | 
							
								set x 7
							 | 
						||
| 
								 | 
							
								set y 8
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext4
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.2:
							 | 
						||
| 
								 | 
							
								  000009:[b#13,MERGE-c#13,DEL]
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000008:[a#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								  000010:[x#14,SET-y#14,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								seek-lt y
							 | 
						||
| 
								 | 
							
								prev
							 | 
						||
| 
								 | 
							
								prev
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								x: (7, .)
							 | 
						||
| 
								 | 
							
								b: (55, .)
							 | 
						||
| 
								 | 
							
								a: (4, .)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get
							 | 
						||
| 
								 | 
							
								x
							 | 
						||
| 
								 | 
							
								y
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								x:7
							 | 
						||
| 
								 | 
							
								y:8
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								batch
							 | 
						||
| 
								 | 
							
								set j 9
							 | 
						||
| 
								 | 
							
								set k 10
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Overlap with point keys in memtable, hence memtable will be flushed.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext5
							 | 
						||
| 
								 | 
							
								set k 11
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext5
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								memtable flushed
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.2:
							 | 
						||
| 
								 | 
							
								  000009:[b#13,MERGE-c#13,DEL]
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000008:[a#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								  000011:[k#17,SET-k#17,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								  000014:[j#15,SET-k#16,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								  000010:[x#14,SET-y#14,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								seek-ge j
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								j: (9, .)
							 | 
						||
| 
								 | 
							
								k: (11, .)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get
							 | 
						||
| 
								 | 
							
								j
							 | 
						||
| 
								 | 
							
								k
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								j:9
							 | 
						||
| 
								 | 
							
								k:11
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# No data overlap in memtable, hence it will not be flushed.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								batch
							 | 
						||
| 
								 | 
							
								set m 12
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext6
							 | 
						||
| 
								 | 
							
								set n 13
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext6
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.2:
							 | 
						||
| 
								 | 
							
								  000009:[b#13,MERGE-c#13,DEL]
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000008:[a#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								  000011:[k#17,SET-k#17,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								  000014:[j#15,SET-k#16,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								  000015:[n#19,SET-n#19,SET]
							 | 
						||
| 
								 | 
							
								  000010:[x#14,SET-y#14,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get
							 | 
						||
| 
								 | 
							
								m
							 | 
						||
| 
								 | 
							
								n
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								m:12
							 | 
						||
| 
								 | 
							
								n:13
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext7 format=pebblev2
							 | 
						||
| 
								 | 
							
								del-range a c
							 | 
						||
| 
								 | 
							
								del-range x z
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext7
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								memtable flushed
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.3:
							 | 
						||
| 
								 | 
							
								  000016:[a#20,RANGEDEL-z#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								0.2:
							 | 
						||
| 
								 | 
							
								  000009:[b#13,MERGE-c#13,DEL]
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000008:[a#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								  000011:[k#17,SET-k#17,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								  000014:[j#15,SET-k#16,SET]
							 | 
						||
| 
								 | 
							
								  000019:[m#18,SET-m#18,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								  000015:[n#19,SET-n#19,SET]
							 | 
						||
| 
								 | 
							
								  000010:[x#14,SET-y#14,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get
							 | 
						||
| 
								 | 
							
								a
							 | 
						||
| 
								 | 
							
								b
							 | 
						||
| 
								 | 
							
								c
							 | 
						||
| 
								 | 
							
								j
							 | 
						||
| 
								 | 
							
								k
							 | 
						||
| 
								 | 
							
								m
							 | 
						||
| 
								 | 
							
								n
							 | 
						||
| 
								 | 
							
								x
							 | 
						||
| 
								 | 
							
								y
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a: pebble: not found
							 | 
						||
| 
								 | 
							
								b: pebble: not found
							 | 
						||
| 
								 | 
							
								c: pebble: not found
							 | 
						||
| 
								 | 
							
								j:9
							 | 
						||
| 
								 | 
							
								k:11
							 | 
						||
| 
								 | 
							
								m:12
							 | 
						||
| 
								 | 
							
								n:13
							 | 
						||
| 
								 | 
							
								x: pebble: not found
							 | 
						||
| 
								 | 
							
								y: pebble: not found
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								wait-pending-table-stats
							 | 
						||
| 
								 | 
							
								000016
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								num-entries: 2
							 | 
						||
| 
								 | 
							
								num-deletions: 2
							 | 
						||
| 
								 | 
							
								num-range-key-sets: 0
							 | 
						||
| 
								 | 
							
								point-deletions-bytes-estimate: 0
							 | 
						||
| 
								 | 
							
								range-deletions-bytes-estimate: 1420
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# A set operation takes precedence over a range deletion at the same
							 | 
						||
| 
								 | 
							
								# sequence number as can occur during ingestion.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext8
							 | 
						||
| 
								 | 
							
								set j 20
							 | 
						||
| 
								 | 
							
								del-range j k
							 | 
						||
| 
								 | 
							
								set m 30
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext8
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get
							 | 
						||
| 
								 | 
							
								j
							 | 
						||
| 
								 | 
							
								k
							 | 
						||
| 
								 | 
							
								m
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								j:20
							 | 
						||
| 
								 | 
							
								k:11
							 | 
						||
| 
								 | 
							
								m:30
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext9
							 | 
						||
| 
								 | 
							
								set a 40
							 | 
						||
| 
								 | 
							
								set f 40
							 | 
						||
| 
								 | 
							
								set g 40
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext9
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.4:
							 | 
						||
| 
								 | 
							
								  000021:[a#22,SET-g#22,SET]
							 | 
						||
| 
								 | 
							
								  000020:[j#21,RANGEDEL-m#21,SET]
							 | 
						||
| 
								 | 
							
								0.3:
							 | 
						||
| 
								 | 
							
								  000016:[a#20,RANGEDEL-z#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								0.2:
							 | 
						||
| 
								 | 
							
								  000009:[b#13,MERGE-c#13,DEL]
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000008:[a#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								  000011:[k#17,SET-k#17,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								  000014:[j#15,SET-k#16,SET]
							 | 
						||
| 
								 | 
							
								  000019:[m#18,SET-m#18,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								  000015:[n#19,SET-n#19,SET]
							 | 
						||
| 
								 | 
							
								  000010:[x#14,SET-y#14,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Overlap with sst boundary containing range del sentinel (fileNum 000015) is not considered an overlap since
							 | 
						||
| 
								 | 
							
								# range del's end key is exclusive. Hence ext9 gets ingested into L6.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext10
							 | 
						||
| 
								 | 
							
								set z 40
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Although ext11 falls into sst boundaries of fileNum 000019, 000015, they don't actually contain any key within ext11's boundary.
							 | 
						||
| 
								 | 
							
								# Hence ext11 is allowed to go further down and get ingested into L6.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext11
							 | 
						||
| 
								 | 
							
								set d 40
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Overlap with fileNum 000018 is not considered an overlap since ext12's end key is range del sentinel which is exclusive.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext12
							 | 
						||
| 
								 | 
							
								del-range i j
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Ingesting multiple files into L0 is allowed.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext10 ext11 ext12
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								get
							 | 
						||
| 
								 | 
							
								z
							 | 
						||
| 
								 | 
							
								d
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								z:40
							 | 
						||
| 
								 | 
							
								d:40
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.4:
							 | 
						||
| 
								 | 
							
								  000021:[a#22,SET-g#22,SET]
							 | 
						||
| 
								 | 
							
								  000020:[j#21,RANGEDEL-m#21,SET]
							 | 
						||
| 
								 | 
							
								0.3:
							 | 
						||
| 
								 | 
							
								  000016:[a#20,RANGEDEL-z#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								0.2:
							 | 
						||
| 
								 | 
							
								  000009:[b#13,MERGE-c#13,DEL]
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000008:[a#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								  000011:[k#17,SET-k#17,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								  000014:[j#15,SET-k#16,SET]
							 | 
						||
| 
								 | 
							
								  000019:[m#18,SET-m#18,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								  000023:[d#23,SET-d#23,SET]
							 | 
						||
| 
								 | 
							
								  000024:[i#24,RANGEDEL-j#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								  000015:[n#19,SET-n#19,SET]
							 | 
						||
| 
								 | 
							
								  000010:[x#14,SET-y#14,SET]
							 | 
						||
| 
								 | 
							
								  000022:[z#25,SET-z#25,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# No overlap between fileNum 000019 that contains point key f, since f is ingested file's range del sentinel.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext13
							 | 
						||
| 
								 | 
							
								del-range e f
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext13
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.4:
							 | 
						||
| 
								 | 
							
								  000021:[a#22,SET-g#22,SET]
							 | 
						||
| 
								 | 
							
								  000020:[j#21,RANGEDEL-m#21,SET]
							 | 
						||
| 
								 | 
							
								0.3:
							 | 
						||
| 
								 | 
							
								  000016:[a#20,RANGEDEL-z#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								0.2:
							 | 
						||
| 
								 | 
							
								  000009:[b#13,MERGE-c#13,DEL]
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000008:[a#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								  000011:[k#17,SET-k#17,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								  000014:[j#15,SET-k#16,SET]
							 | 
						||
| 
								 | 
							
								  000019:[m#18,SET-m#18,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								  000023:[d#23,SET-d#23,SET]
							 | 
						||
| 
								 | 
							
								  000025:[e#26,RANGEDEL-f#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								  000024:[i#24,RANGEDEL-j#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								  000015:[n#19,SET-n#19,SET]
							 | 
						||
| 
								 | 
							
								  000010:[x#14,SET-y#14,SET]
							 | 
						||
| 
								 | 
							
								  000022:[z#25,SET-z#25,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Overlap with range delete keys in memtable, hence memtable will be flushed.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								batch
							 | 
						||
| 
								 | 
							
								del-range a d
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext14
							 | 
						||
| 
								 | 
							
								set b 1
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext14
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								memtable flushed
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.6:
							 | 
						||
| 
								 | 
							
								  000026:[b#28,SET-b#28,SET]
							 | 
						||
| 
								 | 
							
								0.5:
							 | 
						||
| 
								 | 
							
								  000029:[a#27,RANGEDEL-d#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								0.4:
							 | 
						||
| 
								 | 
							
								  000021:[a#22,SET-g#22,SET]
							 | 
						||
| 
								 | 
							
								  000020:[j#21,RANGEDEL-m#21,SET]
							 | 
						||
| 
								 | 
							
								0.3:
							 | 
						||
| 
								 | 
							
								  000016:[a#20,RANGEDEL-z#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								0.2:
							 | 
						||
| 
								 | 
							
								  000009:[b#13,MERGE-c#13,DEL]
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000008:[a#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								  000011:[k#17,SET-k#17,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000007:[a#11,SET-b#11,DEL]
							 | 
						||
| 
								 | 
							
								  000014:[j#15,SET-k#16,SET]
							 | 
						||
| 
								 | 
							
								  000019:[m#18,SET-m#18,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-b#10,SET]
							 | 
						||
| 
								 | 
							
								  000023:[d#23,SET-d#23,SET]
							 | 
						||
| 
								 | 
							
								  000025:[e#26,RANGEDEL-f#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								  000024:[i#24,RANGEDEL-j#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								  000015:[n#19,SET-n#19,SET]
							 | 
						||
| 
								 | 
							
								  000010:[x#14,SET-y#14,SET]
							 | 
						||
| 
								 | 
							
								  000022:[z#25,SET-z#25,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								reset
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Tests to show that keys don't overlap with range delete sentinels.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								batch
							 | 
						||
| 
								 | 
							
								set b 1
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext15
							 | 
						||
| 
								 | 
							
								del-range a b
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext15
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[a#11,RANGEDEL-b#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								reset
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								batch
							 | 
						||
| 
								 | 
							
								del-range b c
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext16
							 | 
						||
| 
								 | 
							
								del-range a b
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext16
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[a#11,RANGEDEL-b#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								reset
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Tests for branch coverage of method overlapWithIterator,
							 | 
						||
| 
								 | 
							
								# when levelIter is used and it produces a range del sentinel boundary
							 | 
						||
| 
								 | 
							
								# because it finds no overlapping point key.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Case 1) levelIter produced boundary is less than ingested file's largest key.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext17
							 | 
						||
| 
								 | 
							
								del-range a b
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext17
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext18
							 | 
						||
| 
								 | 
							
								set a 10
							 | 
						||
| 
								 | 
							
								set c 10
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext18
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000005:[a#11,SET-c#11,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[a#10,RANGEDEL-b#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								reset
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Case 2) levelIter produced boundary is more than ingested file's largest key.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext19
							 | 
						||
| 
								 | 
							
								del-range c d
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext19
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext20
							 | 
						||
| 
								 | 
							
								set a 10
							 | 
						||
| 
								 | 
							
								set b 10
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext20
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext21
							 | 
						||
| 
								 | 
							
								set c 10
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext21
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000006:[c#12,SET-c#12,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000005:[a#11,SET-b#11,SET]
							 | 
						||
| 
								 | 
							
								  000004:[c#10,RANGEDEL-d#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								reset
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Case 3) levelIter produced boundary is equal to ingested file's largest key,
							 | 
						||
| 
								 | 
							
								# where the latter is not a range del sentinel.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext22
							 | 
						||
| 
								 | 
							
								del-range a b
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext22
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext23
							 | 
						||
| 
								 | 
							
								set a 10
							 | 
						||
| 
								 | 
							
								set b 10
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext23
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000005:[a#11,SET-b#11,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[a#10,RANGEDEL-b#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								reset
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Case 4) levelIter produced boundary is equal to ingested file's largest key,
							 | 
						||
| 
								 | 
							
								# where the latter is a range del sentinel.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext24
							 | 
						||
| 
								 | 
							
								del-range a b
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext24
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext25
							 | 
						||
| 
								 | 
							
								del-range a b
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext25
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000005:[a#11,RANGEDEL-b#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[a#10,RANGEDEL-b#inf,RANGEDEL]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Check for range key ingestion bug fix in
							 | 
						||
| 
								 | 
							
								# https://github.com/cockroachdb/pebble/pull/2082. Without the fix, we expect
							 | 
						||
| 
								 | 
							
								# the range key associated with the table ext3 to get elided. This test checks
							 | 
						||
| 
								 | 
							
								# that the elision does not happen.
							 | 
						||
| 
								 | 
							
								reset
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext1
							 | 
						||
| 
								 | 
							
								range-key-set d g 1 val1
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext1
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[d#10,RANGEKEYSET-g#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext2
							 | 
						||
| 
								 | 
							
								range-key-set b e 1 val2
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext2
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000005:[b#11,RANGEKEYSET-e#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[d#10,RANGEKEYSET-g#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext3
							 | 
						||
| 
								 | 
							
								range-key-del a c
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext3
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Without the fix in #2082 we would expect ext3 file to be ingested into L6.
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000006:[a#12,RANGEKEYDEL-c#inf,RANGEKEYDEL]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000005:[b#11,RANGEKEYSET-e#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[d#10,RANGEKEYSET-g#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext4
							 | 
						||
| 
								 | 
							
								set a a
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext4
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.2:
							 | 
						||
| 
								 | 
							
								  000007:[a#13,SET-a#13,SET]
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000006:[a#12,RANGEKEYDEL-c#inf,RANGEKEYDEL]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000005:[b#11,RANGEKEYSET-e#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[d#10,RANGEKEYSET-g#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								compact a aa
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Without the fix in #2082, we would expect the range key delete a-c to
							 | 
						||
| 
								 | 
							
								# get elided as it would be in L6 beneath the b-e range key in L0.
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000008:[a#0,SET-g#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Shouldn't show results for the b-c range as it must be deleted.
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								first
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a: (a, .)
							 | 
						||
| 
								 | 
							
								c: (., [c-e) 1=val2 UPDATED)
							 | 
						||
| 
								 | 
							
								e: (., [e-g) 1=val1 UPDATED)
							 | 
						||
| 
								 | 
							
								.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Keys can have exclusive sentinels. Check that files boundaries which contain
							 | 
						||
| 
								 | 
							
								# such keys are ingested ingested into the lowest level possible.
							 | 
						||
| 
								 | 
							
								reset
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext1
							 | 
						||
| 
								 | 
							
								set c c
							 | 
						||
| 
								 | 
							
								set e e
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext1
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[c#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext2
							 | 
						||
| 
								 | 
							
								range-key-set a c 1 val1
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext2
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000005:[a#11,RANGEKEYSET-c#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								  000004:[c#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# The following test cases will test that files where the end bound is an
							 | 
						||
| 
								 | 
							
								# exclusive sentinel due to range keys are ingested into the correct levels.
							 | 
						||
| 
								 | 
							
								build ext3
							 | 
						||
| 
								 | 
							
								set f f
							 | 
						||
| 
								 | 
							
								set h h
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext3
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000005:[a#11,RANGEKEYSET-c#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								  000004:[c#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								  000006:[f#12,SET-h#12,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext4
							 | 
						||
| 
								 | 
							
								range-key-unset eee f 1
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext4
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000005:[a#11,RANGEKEYSET-c#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								  000004:[c#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								  000007:[eee#13,RANGEKEYUNSET-f#inf,RANGEKEYUNSET]
							 | 
						||
| 
								 | 
							
								  000006:[f#12,SET-h#12,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext5
							 | 
						||
| 
								 | 
							
								range-key-set ee eee 1 val3
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext5
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000005:[a#11,RANGEKEYSET-c#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								  000004:[c#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								  000008:[ee#14,RANGEKEYSET-eee#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								  000007:[eee#13,RANGEKEYUNSET-f#inf,RANGEKEYUNSET]
							 | 
						||
| 
								 | 
							
								  000006:[f#12,SET-h#12,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext6
							 | 
						||
| 
								 | 
							
								set x x
							 | 
						||
| 
								 | 
							
								set y y
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext6
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000005:[a#11,RANGEKEYSET-c#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								  000004:[c#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								  000008:[ee#14,RANGEKEYSET-eee#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								  000007:[eee#13,RANGEKEYUNSET-f#inf,RANGEKEYUNSET]
							 | 
						||
| 
								 | 
							
								  000006:[f#12,SET-h#12,SET]
							 | 
						||
| 
								 | 
							
								  000009:[x#15,SET-y#15,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext7
							 | 
						||
| 
								 | 
							
								range-key-del s x
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext7
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000005:[a#11,RANGEKEYSET-c#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								  000004:[c#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								  000008:[ee#14,RANGEKEYSET-eee#inf,RANGEKEYSET]
							 | 
						||
| 
								 | 
							
								  000007:[eee#13,RANGEKEYUNSET-f#inf,RANGEKEYUNSET]
							 | 
						||
| 
								 | 
							
								  000006:[f#12,SET-h#12,SET]
							 | 
						||
| 
								 | 
							
								  000010:[s#16,RANGEKEYDEL-x#inf,RANGEKEYDEL]
							 | 
						||
| 
								 | 
							
								  000009:[x#15,SET-y#15,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								reset enable-split
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext10
							 | 
						||
| 
								 | 
							
								set a foo
							 | 
						||
| 
								 | 
							
								set e bar
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext10
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[a#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# The below ingestion should split one existing file.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext11
							 | 
						||
| 
								 | 
							
								set b foobar
							 | 
						||
| 
								 | 
							
								set d foobar
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext11
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-a#10,SET]
							 | 
						||
| 
								 | 
							
								  000005:[b#11,SET-d#11,SET]
							 | 
						||
| 
								 | 
							
								  000007:[e#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								first
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a: (foo, .)
							 | 
						||
| 
								 | 
							
								b: (foobar, .)
							 | 
						||
| 
								 | 
							
								d: (foobar, .)
							 | 
						||
| 
								 | 
							
								e: (bar, .)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# This ingestion should not split any files due to data overlap.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext12
							 | 
						||
| 
								 | 
							
								set c foobar
							 | 
						||
| 
								 | 
							
								set e baz
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext12
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000008:[c#12,SET-e#12,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-a#10,SET]
							 | 
						||
| 
								 | 
							
								  000005:[b#11,SET-d#11,SET]
							 | 
						||
| 
								 | 
							
								  000007:[e#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# The below ingestion should fall through one existing file and split another
							 | 
						||
| 
								 | 
							
								# file.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext13
							 | 
						||
| 
								 | 
							
								set cc foo
							 | 
						||
| 
								 | 
							
								set ccc foooo
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext13
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000008:[c#12,SET-e#12,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-a#10,SET]
							 | 
						||
| 
								 | 
							
								  000010:[b#11,SET-b#11,SET]
							 | 
						||
| 
								 | 
							
								  000009:[cc#13,SET-ccc#13,SET]
							 | 
						||
| 
								 | 
							
								  000011:[d#11,SET-d#11,SET]
							 | 
						||
| 
								 | 
							
								  000007:[e#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								seek-ge c
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								c: (foobar, .)
							 | 
						||
| 
								 | 
							
								cc: (foo, .)
							 | 
						||
| 
								 | 
							
								ccc: (foooo, .)
							 | 
						||
| 
								 | 
							
								d: (foobar, .)
							 | 
						||
| 
								 | 
							
								e: (baz, .)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Ingestion splitting doesn't kick in at L0.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext14
							 | 
						||
| 
								 | 
							
								set d updated
							 | 
						||
| 
								 | 
							
								set dd new
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext14
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								0.1:
							 | 
						||
| 
								 | 
							
								  000012:[d#14,SET-dd#14,SET]
							 | 
						||
| 
								 | 
							
								0.0:
							 | 
						||
| 
								 | 
							
								  000008:[c#12,SET-e#12,SET]
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000006:[a#10,SET-a#10,SET]
							 | 
						||
| 
								 | 
							
								  000010:[b#11,SET-b#11,SET]
							 | 
						||
| 
								 | 
							
								  000009:[cc#13,SET-ccc#13,SET]
							 | 
						||
| 
								 | 
							
								  000011:[d#11,SET-d#11,SET]
							 | 
						||
| 
								 | 
							
								  000007:[e#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								seek-lt d
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								ccc: (foooo, .)
							 | 
						||
| 
								 | 
							
								d: (updated, .)
							 | 
						||
| 
								 | 
							
								dd: (new, .)
							 | 
						||
| 
								 | 
							
								e: (baz, .)
							 | 
						||
| 
								 | 
							
								.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Multi-sstable ingestion batches. This exercises logic to find the appropriate
							 | 
						||
| 
								 | 
							
								# file to split for each newly ingested file, as we will be repeatedly splitting
							 | 
						||
| 
								 | 
							
								# files into smaller virtual files.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								reset enable-split
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext10
							 | 
						||
| 
								 | 
							
								set a foo
							 | 
						||
| 
								 | 
							
								set e bar
							 | 
						||
| 
								 | 
							
								set g baz
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext10
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[a#10,SET-g#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext11
							 | 
						||
| 
								 | 
							
								set b foobar
							 | 
						||
| 
								 | 
							
								set c foobar
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext12
							 | 
						||
| 
								 | 
							
								set cc foobar
							 | 
						||
| 
								 | 
							
								set d foobar
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# This ingestion should slide in the same gap between keys in ext10.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext11 ext12
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000007:[a#10,SET-a#10,SET]
							 | 
						||
| 
								 | 
							
								  000005:[b#11,SET-c#11,SET]
							 | 
						||
| 
								 | 
							
								  000006:[cc#12,SET-d#12,SET]
							 | 
						||
| 
								 | 
							
								  000008:[e#10,SET-g#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# A virtual sstable produced from an ingest split can be ingest split again.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext13
							 | 
						||
| 
								 | 
							
								set ee foooo
							 | 
						||
| 
								 | 
							
								set f bar
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext13
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000007:[a#10,SET-a#10,SET]
							 | 
						||
| 
								 | 
							
								  000005:[b#11,SET-c#11,SET]
							 | 
						||
| 
								 | 
							
								  000006:[cc#12,SET-d#12,SET]
							 | 
						||
| 
								 | 
							
								  000010:[e#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								  000009:[ee#13,SET-f#13,SET]
							 | 
						||
| 
								 | 
							
								  000011:[g#10,SET-g#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								reset enable-split
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext10
							 | 
						||
| 
								 | 
							
								set a foo
							 | 
						||
| 
								 | 
							
								set e bar
							 | 
						||
| 
								 | 
							
								set g baz
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext10
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000004:[a#10,SET-g#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext11
							 | 
						||
| 
								 | 
							
								set b foobar
							 | 
						||
| 
								 | 
							
								set c foobar
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext12
							 | 
						||
| 
								 | 
							
								set cc foobar
							 | 
						||
| 
								 | 
							
								set d foobar
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								build ext13
							 | 
						||
| 
								 | 
							
								set ee foooo
							 | 
						||
| 
								 | 
							
								set f bar
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# This ingestion should split ext10 twice, and land two files on one side
							 | 
						||
| 
								 | 
							
								# of a key in it, and another file on another side of it.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ingest ext11 ext12 ext13
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								lsm
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								6:
							 | 
						||
| 
								 | 
							
								  000008:[a#10,SET-a#10,SET]
							 | 
						||
| 
								 | 
							
								  000005:[b#11,SET-c#11,SET]
							 | 
						||
| 
								 | 
							
								  000006:[cc#12,SET-d#12,SET]
							 | 
						||
| 
								 | 
							
								  000010:[e#10,SET-e#10,SET]
							 | 
						||
| 
								 | 
							
								  000007:[ee#13,SET-f#13,SET]
							 | 
						||
| 
								 | 
							
								  000011:[g#10,SET-g#10,SET]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								iter
							 | 
						||
| 
								 | 
							
								first
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								next
							 | 
						||
| 
								 | 
							
								----
							 | 
						||
| 
								 | 
							
								a: (foo, .)
							 | 
						||
| 
								 | 
							
								b: (foobar, .)
							 | 
						||
| 
								 | 
							
								c: (foobar, .)
							 | 
						||
| 
								 | 
							
								cc: (foobar, .)
							 | 
						||
| 
								 | 
							
								d: (foobar, .)
							 | 
						||
| 
								 | 
							
								e: (bar, .)
							 | 
						||
| 
								 | 
							
								ee: (foooo, .)
							 | 
						||
| 
								 | 
							
								f: (bar, .)
							 | 
						||
| 
								 | 
							
								g: (baz, .)
							 | 
						||
| 
								 | 
							
								.
							 |