ceremonyclient/pebble/testdata/iter_histories/skip_point
Cassandra Heart 2e2a1e4789
v1.2.0 (#31)
2024-01-03 01:31:42 -06:00

116 lines
1.7 KiB
Plaintext

reset
----
populate keylen=1 timestamps=(1, 10, 100)
----
wrote 78 keys
# With a filter [20,30) all keys should be hidden, in both forward and reverse
# iteration directions.
combined-iter point-key-filter=(20,30)
first
last
seek-ge d
seek-lt m
----
.
.
.
.
# With a filter [1,2) only the keys @1 should be visible.
# Test forward direction.
combined-iter point-key-filter=(1,2)
first
next
next
next
next
next
next
next
next
next
----
a@1: (a@1, .)
b@1: (b@1, .)
c@1: (c@1, .)
d@1: (d@1, .)
e@1: (e@1, .)
f@1: (f@1, .)
g@1: (g@1, .)
h@1: (h@1, .)
i@1: (i@1, .)
j@1: (j@1, .)
# With a filter [1,2) only the keys @1 should be visible.
# And reverse direction.
combined-iter point-key-filter=(1,2)
last
prev
prev
prev
prev
prev
prev
prev
prev
prev
----
z@1: (z@1, .)
y@1: (y@1, .)
x@1: (x@1, .)
w@1: (w@1, .)
v@1: (v@1, .)
u@1: (u@1, .)
t@1: (t@1, .)
s@1: (s@1, .)
r@1: (r@1, .)
q@1: (q@1, .)
# With an expansive filter, all keys should be visible.
combined-iter point-key-filter=(0,1000)
first
next
seek-ge m
prev
seek-lt m
next
last
----
a@100: (a@100, .)
a@10: (a@10, .)
m@100: (m@100, .)
l@1: (l@1, .)
l@1: (l@1, .)
m@100: (m@100, .)
z@1: (z@1, .)
# Test the case where a range key [a,z) is truncated to a seek key
# at which there exists a point key, but the point key should be skipped.
# The seek should stop at the seek key, but show no visible point key.
batch commit
range-key-set a z @5 boop
----
committed 1 keys
combined-iter point-key-filter=(9,12)
seek-ge c@1
----
c@1: (., [a-z) @5=boop UPDATED)
# Try the same scenario, but this time with a filter that should NOT skip the
# point key.
combined-iter point-key-filter=(1,12)
seek-ge c@1
----
c@1: (c@1, [a-z) @5=boop UPDATED)