github.com/cockroachdb/pebble@v0.0.0-20231214172447-ab4952c5f87b/internal/manifest/testdata/file_metadata_bounds (about) 1 # Points only (single update). 2 3 extend-point-key-bounds 4 a.SET.0 - z.DEL.42 5 ---- 6 000000:[a#0,SET-z#42,DEL] seqnums:[0-0] points:[a#0,SET-z#42,DEL] 7 bounds: (smallest=point,largest=point) (0x00000111) 8 9 # Rangedels only (single update). 10 11 reset 12 ---- 13 14 extend-point-key-bounds 15 a.RANGEDEL.0:z 16 ---- 17 000000:[a#0,RANGEDEL-z#inf,RANGEDEL] seqnums:[0-0] points:[a#0,RANGEDEL-z#inf,RANGEDEL] 18 bounds: (smallest=point,largest=point) (0x00000111) 19 20 # Range keys only (single update). 21 22 reset 23 ---- 24 25 extend-range-key-bounds 26 a.RANGEKEYSET.0:z 27 ---- 28 000000:[a#0,RANGEKEYSET-z#inf,RANGEKEYSET] seqnums:[0-0] ranges:[a#0,RANGEKEYSET-z#inf,RANGEKEYSET] 29 bounds: (smallest=range,largest=range) (0x00000000) 30 31 # Multiple updates with various key kinds. 32 33 reset 34 ---- 35 36 extend-point-key-bounds 37 m.SET.0 - n.SET.0 38 ---- 39 000000:[m#0,SET-n#0,SET] seqnums:[0-0] points:[m#0,SET-n#0,SET] 40 bounds: (smallest=point,largest=point) (0x00000111) 41 42 # Extend the lower point key bound. 43 44 extend-point-key-bounds 45 j.SET.0 - k.SET.0 46 ---- 47 000000:[j#0,SET-n#0,SET] seqnums:[0-0] points:[j#0,SET-n#0,SET] 48 bounds: (smallest=point,largest=point) (0x00000111) 49 50 # Extend the upper point key bound with a rangedel. 51 52 extend-point-key-bounds 53 k.RANGEDEL.0:o 54 ---- 55 000000:[j#0,SET-o#inf,RANGEDEL] seqnums:[0-0] points:[j#0,SET-o#inf,RANGEDEL] 56 bounds: (smallest=point,largest=point) (0x00000111) 57 58 # Extend the lower bounds bound with a range key. 59 60 extend-range-key-bounds 61 a.RANGEKEYSET.42:m 62 ---- 63 000000:[a#42,RANGEKEYSET-o#inf,RANGEDEL] seqnums:[0-0] points:[j#0,SET-o#inf,RANGEDEL] ranges:[a#42,RANGEKEYSET-m#inf,RANGEKEYSET] 64 bounds: (smallest=range,largest=point) (0x00000101) 65 66 # Extend again with a wide range key (equal keys tiebreak on seqnums descending, 67 # so the overall lower bound is unchanged). 68 69 extend-range-key-bounds 70 a.RANGEKEYSET.0:z 71 ---- 72 000000:[a#42,RANGEKEYSET-z#inf,RANGEKEYSET] seqnums:[0-0] points:[j#0,SET-o#inf,RANGEDEL] ranges:[a#42,RANGEKEYSET-z#inf,RANGEKEYSET] 73 bounds: (smallest=range,largest=range) (0x00000001) 74 75 # Extend again with a wide rangedel over the same range. 76 77 extend-point-key-bounds 78 A.RANGEDEL.0:y 79 ---- 80 000000:[A#0,RANGEDEL-z#inf,RANGEKEYSET] seqnums:[0-0] points:[A#0,RANGEDEL-y#inf,RANGEDEL] ranges:[a#42,RANGEKEYSET-z#inf,RANGEKEYSET] 81 bounds: (smallest=point,largest=range) (0x00000011)