mirror of
https://source.quilibrium.com/quilibrium/ceremonyclient.git
synced 2024-12-25 08:05:17 +00:00
352 lines
3.7 KiB
Plaintext
352 lines
3.7 KiB
Plaintext
# Test with overlapping keys across levels, should pick top level to compact after allowed-seeks goes to 0
|
|
# Verify that Iterator.First(), Iterator.SeekGE() and Iterator.Next() call maybe sample read.
|
|
define auto-compactions=off
|
|
L0
|
|
a.SET.4:4
|
|
L1
|
|
a.SET.3:3
|
|
L2
|
|
d.SET.2:2
|
|
L3
|
|
d.SET.1:1
|
|
----
|
|
0.0:
|
|
000004:[a#4,SET-a#4,SET]
|
|
1:
|
|
000005:[a#3,SET-a#3,SET]
|
|
2:
|
|
000006:[d#2,SET-d#2,SET]
|
|
3:
|
|
000007:[d#1,SET-d#1,SET]
|
|
|
|
set allowed-seeks=2
|
|
----
|
|
|
|
|
|
iter
|
|
first
|
|
----
|
|
a: (4, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(none)
|
|
|
|
iter
|
|
first
|
|
----
|
|
a: (4, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(level: 0, start: a, end: a)
|
|
|
|
read-compactions
|
|
----
|
|
(none)
|
|
|
|
close-iter
|
|
----
|
|
|
|
read-compactions
|
|
----
|
|
(level: 0, start: a, end: a)
|
|
|
|
iter
|
|
seek-ge d
|
|
----
|
|
d: (2, .)
|
|
|
|
iter
|
|
prev
|
|
----
|
|
a: (4, .)
|
|
|
|
iter
|
|
next
|
|
----
|
|
d: (2, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(level: 2, start: d, end: d)
|
|
|
|
close-iter
|
|
----
|
|
|
|
read-compactions
|
|
----
|
|
(level: 0, start: a, end: a)
|
|
(level: 2, start: d, end: d)
|
|
|
|
|
|
|
|
# Verify that Iterator.Last(), Iterator.SeekLT() and Iterator.Prev() call maybe sample read.
|
|
define auto-compactions=off
|
|
L0
|
|
a.SET.4:4
|
|
c.SET.8:8
|
|
L1
|
|
a.SET.3:3
|
|
c.SET.9:9
|
|
L2
|
|
d.SET.2:2
|
|
l.SET.7:7
|
|
L3
|
|
d.SET.1:1
|
|
l.SET.8:8
|
|
----
|
|
0.0:
|
|
000004:[a#4,SET-c#8,SET]
|
|
1:
|
|
000005:[a#3,SET-c#9,SET]
|
|
2:
|
|
000006:[d#2,SET-l#7,SET]
|
|
3:
|
|
000007:[d#1,SET-l#8,SET]
|
|
|
|
set allowed-seeks=2
|
|
----
|
|
|
|
|
|
iter
|
|
last
|
|
----
|
|
l: (8, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(none)
|
|
|
|
iter
|
|
last
|
|
----
|
|
l: (8, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(level: 2, start: d, end: l)
|
|
|
|
read-compactions
|
|
----
|
|
(none)
|
|
|
|
close-iter
|
|
----
|
|
|
|
read-compactions
|
|
----
|
|
(level: 2, start: d, end: l)
|
|
|
|
iter
|
|
seek-lt d
|
|
----
|
|
c: (9, .)
|
|
|
|
iter
|
|
next
|
|
----
|
|
d: (2, .)
|
|
|
|
iter
|
|
prev
|
|
----
|
|
c: (9, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(level: 0, start: a, end: c)
|
|
|
|
close-iter
|
|
----
|
|
|
|
read-compactions
|
|
----
|
|
(level: 2, start: d, end: l)
|
|
(level: 0, start: a, end: c)
|
|
|
|
|
|
# For Iterator.Last(), Iterator.SeekLT() and Iterator.Prev(), if the key is the first key of the file or
|
|
# the only key, sampling skips it because the iterator has already moved past it.
|
|
define auto-compactions=off
|
|
L0
|
|
a.SET.4:4
|
|
L1
|
|
a.SET.3:3
|
|
L2
|
|
d.SET.2:2
|
|
L3
|
|
d.SET.1:1
|
|
----
|
|
0.0:
|
|
000004:[a#4,SET-a#4,SET]
|
|
1:
|
|
000005:[a#3,SET-a#3,SET]
|
|
2:
|
|
000006:[d#2,SET-d#2,SET]
|
|
3:
|
|
000007:[d#1,SET-d#1,SET]
|
|
|
|
set allowed-seeks=2
|
|
----
|
|
|
|
|
|
iter
|
|
last
|
|
----
|
|
d: (2, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(none)
|
|
|
|
iter
|
|
last
|
|
----
|
|
d: (2, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(none)
|
|
|
|
read-compactions
|
|
----
|
|
(none)
|
|
|
|
close-iter
|
|
----
|
|
|
|
read-compactions
|
|
----
|
|
(none)
|
|
|
|
iter
|
|
seek-lt d
|
|
----
|
|
a: (4, .)
|
|
|
|
iter
|
|
next
|
|
----
|
|
d: (2, .)
|
|
|
|
iter
|
|
prev
|
|
----
|
|
a: (4, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(none)
|
|
|
|
close-iter
|
|
----
|
|
|
|
read-compactions
|
|
----
|
|
(none)
|
|
|
|
|
|
|
|
|
|
# Test with no overlapping keys across levels, should not pick any compaction
|
|
define auto-compactions=off
|
|
L0
|
|
a.SET.4:4
|
|
L1
|
|
b.SET.3:3
|
|
L2
|
|
c.SET.2:2
|
|
L3
|
|
d.SET.1:1
|
|
----
|
|
0.0:
|
|
000004:[a#4,SET-a#4,SET]
|
|
1:
|
|
000005:[b#3,SET-b#3,SET]
|
|
2:
|
|
000006:[c#2,SET-c#2,SET]
|
|
3:
|
|
000007:[d#1,SET-d#1,SET]
|
|
|
|
set allowed-seeks=3
|
|
----
|
|
|
|
iter
|
|
first
|
|
----
|
|
a: (4, .)
|
|
|
|
iter
|
|
first
|
|
----
|
|
a: (4, .)
|
|
|
|
iter
|
|
first
|
|
----
|
|
a: (4, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(none)
|
|
|
|
close-iter
|
|
----
|
|
|
|
read-compactions
|
|
----
|
|
(none)
|
|
|
|
# Test to see if the allowedSeeks associated with a file
|
|
# is reset once it hits 0.
|
|
define auto-compactions=off
|
|
L0
|
|
a.SET.4:4
|
|
c.SET.8:8
|
|
L1
|
|
a.SET.3:3
|
|
c.SET.9:9
|
|
L2
|
|
d.SET.2:2
|
|
l.SET.7:7
|
|
L3
|
|
d.SET.1:1
|
|
l.SET.8:8
|
|
----
|
|
0.0:
|
|
000004:[a#4,SET-c#8,SET]
|
|
1:
|
|
000005:[a#3,SET-c#9,SET]
|
|
2:
|
|
000006:[d#2,SET-l#7,SET]
|
|
3:
|
|
000007:[d#1,SET-l#8,SET]
|
|
|
|
set allowed-seeks=1
|
|
----
|
|
|
|
iter
|
|
last
|
|
----
|
|
l: (8, .)
|
|
|
|
iter-read-compactions
|
|
----
|
|
(level: 2, start: d, end: l)
|
|
|
|
close-iter
|
|
----
|
|
|
|
read-compactions
|
|
----
|
|
(level: 2, start: d, end: l)
|
|
|
|
# The allowedSeeks on this file should have been reset.
|
|
# Since the value of allowedSeeks determined
|
|
# by the code is 100, we check if allowed-seeks has been
|
|
# reset to 100.
|
|
show allowed-seeks=(000006,)
|
|
----
|
|
100
|