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

501 lines
4.0 KiB
Plaintext

define
a.SET.1:1 b.SET.2:2
c.SET.3:3 d.SET.4:4
dd.SET.5:5
----
iter
seek-ge a
next
next
next
next
next
----
a#1,1:1
b#2,1:2
c#3,1:3
d#4,1:4
dd#5,1:5
.
iter
seek-ge b
next
next
next
next
----
b#2,1:2
c#3,1:3
d#4,1:4
dd#5,1:5
.
iter
seek-ge c
next
next
next
----
c#3,1:3
d#4,1:4
dd#5,1:5
.
iter
seek-ge d
next
next
----
d#4,1:4
dd#5,1:5
.
iter
seek-ge dd
next
----
dd#5,1:5
.
iter
seek-ge e
----
.
iter
seek-lt a
----
.
iter
seek-lt b
prev
----
a#1,1:1
.
iter
seek-lt c
prev
prev
----
b#2,1:2
a#1,1:1
.
iter
seek-lt d
prev
prev
prev
----
c#3,1:3
b#2,1:2
a#1,1:1
.
iter
seek-lt e
prev
prev
prev
prev
prev
----
dd#5,1:5
d#4,1:4
c#3,1:3
b#2,1:2
a#1,1:1
.
iter
seek-prefix-ge a
next
----
a#1,1:1
b#2,1:2
iter
seek-prefix-ge d
next
next
----
d#4,1:4
dd#5,1:5
.
iter
seek-prefix-ge dd
next
----
dd#5,1:5
.
iter
seek-prefix-ge d
next
prev
prev
----
d#4,1:4
dd#5,1:5
d#4,1:4
c#3,1:3
iter
seek-prefix-ge d
prev
----
d#4,1:4
c#3,1:3
iter
seek-prefix-ge dd
prev
----
dd#5,1:5
d#4,1:4
iter lower=a
seek-ge a
first
----
a#1,1:1
a#1,1:1
iter
set-bounds lower=a
seek-ge a
first
----
a#1,1:1
a#1,1:1
iter
set-bounds lower=dd upper=f
seek-lt dc
set-bounds lower=a upper=f
seek-lt dc
prev
prev
prev
prev
----
.
d#4,1:4
c#3,1:3
b#2,1:2
a#1,1:1
.
iter
set-bounds lower=a upper=b
seek-ge c
set-bounds lower=a upper=f
seek-ge c
next
next
next
----
.
c#3,1:3
d#4,1:4
dd#5,1:5
.
# levelIter trims lower/upper bound in the options passed to sstables.
load a
----
[,]
load b lower=aa upper=bb
----
[aa,]
load b lower=aa upper=c
----
[aa,]
load c lower=b upper=d
----
[,d]
load c lower=b upper=e
----
[,]
# levelIter only checks lower bound when loading sstables.
iter lower=b
seek-ge a
first
----
a#1,1:1
a#1,1:1
iter lower=c
seek-ge a
first
----
c#3,1:3
c#3,1:3
iter
set-bounds lower=b
seek-ge a
first
----
a#1,1:1
a#1,1:1
iter
set-bounds lower=c
seek-ge a
first
----
c#3,1:3
c#3,1:3
# levelIter only checks lower bound when loading sstables.
iter lower=d
seek-ge a
first
----
c#3,1:3
c#3,1:3
iter lower=e
seek-ge a
first
----
.
.
iter upper=e
seek-lt e
last
----
dd#5,1:5
dd#5,1:5
iter
set-bounds lower=d
seek-ge a
first
----
c#3,1:3
c#3,1:3
iter
set-bounds lower=e
seek-ge a
first
----
.
.
iter
set-bounds upper=e
seek-lt e
last
----
dd#5,1:5
dd#5,1:5
# levelIter only checks upper bound when loading sstables.
iter upper=d
seek-lt e
last
----
d#4,1:4
d#4,1:4
iter upper=c
seek-lt e
last
----
b#2,1:2
b#2,1:2
iter
set-bounds upper=d
seek-lt e
last
----
d#4,1:4
d#4,1:4
iter
set-bounds upper=c
seek-lt e
last
----
b#2,1:2
b#2,1:2
# levelIter only checks upper bound when loading sstables.
iter upper=b
seek-lt e
last
----
b#2,1:2
b#2,1:2
iter upper=a
seek-lt e
last
----
.
.
iter upper=dd
seek-prefix-ge d
next
----
d#4,1:4
.
iter
set-bounds upper=b
seek-lt e
last
----
b#2,1:2
b#2,1:2
iter
set-bounds upper=a
seek-lt e
last
----
.
.
iter
set-bounds upper=dd
seek-prefix-ge d
next
----
d#4,1:4
.
iter upper=e
seek-prefix-ge d
next
next
----
d#4,1:4
dd#5,1:5
.
iter lower=dd
seek-prefix-ge d
next
----
dd#5,1:5
.
iter lower=d
seek-prefix-ge dd
prev
----
dd#5,1:5
d#4,1:4
iter lower=c
seek-prefix-ge dd
prev
----
dd#5,1:5
d#4,1:4
iter lower=c
seek-lt c
----
.
iter
seek-lt c
set-bounds lower=c
seek-lt c
----
b#2,1:2
.
iter upper=c
seek-ge c
----
.
iter
seek-ge c
set-bounds upper=c
seek-ge c
----
c#3,1:3
.
# The behavior of next/prev after set-bounds is undefined. We're just
# asserting the current behavior.
# The lower bound is beyond the current table's bounds.
iter
seek-ge c
set-bounds lower=e
next
----
c#3,1:3
.
# The lower bound lies within the current table's bounds.
iter
seek-ge c
set-bounds lower=d
next
----
c#3,1:3
d#4,1:4
# The upper bound is before the current table's bounds.
iter
seek-ge d
set-bounds upper=c
prev
----
d#4,1:4
.
# The upper bound lies within the current table's bounds.
iter
seek-ge d
set-bounds upper=cc
prev
----
d#4,1:4
c#3,1:3
# Setting bounds should update the table bounds, allowing a subsequent
# seek-ge/seek-lt to see the boundary keys.
iter
seek-ge d
set-bounds lower=cc
seek-lt d
----
d#4,1:4
.
iter
seek-ge c
set-bounds upper=cc
seek-ge d
----
c#3,1:3
.