github.com/cockroachdb/pebble@v1.1.1-0.20240513155919-3622ade60459/testdata/compaction_check_ordering (about)

     1  check-ordering
     2  L0
     3    a.SET.1-b.SET.2
     4  ----
     5  OK
     6  
     7  check-ordering
     8  L0
     9    a.SET.1-b.SET.2
    10    c.SET.3-d.SET.4
    11  ----
    12  OK
    13  
    14  check-ordering
    15  L0
    16    c.SET.3-d.SET.4
    17    a.SET.1-b.SET.2
    18  ----
    19  L0 files 000001 and 000002 are not properly ordered: <#3-#4> vs <#1-#2>
    20  
    21  # Seqnum overlaps are allowed in L0 as long as no key ranges overlap.
    22  check-ordering
    23  L0
    24    c.SET.3-d.SET.4
    25    a.SET.1-b.SET.5
    26  ----
    27  OK
    28  
    29  check-ordering
    30  L0
    31    a.SET.3-d.SET.3
    32    a.SET.1-b.SET.2
    33  ----
    34  L0 files 000001 and 000002 are not properly ordered: <#3-#3> vs <#1-#2>
    35  
    36  check-ordering
    37  L0
    38    a.SET.2-d.SET.4
    39    a.SET.3-b.SET.3
    40  ----
    41  L0 files 000001 and 000002 are not properly ordered: <#2-#4> vs <#3-#3>
    42  
    43  check-ordering
    44  L0
    45    a.SET.3-d.SET.3
    46    a.SET.3-b.SET.3
    47  ----
    48  OK
    49  
    50  check-ordering
    51  L1
    52    a.SET.1-b.SET.2
    53  ----
    54  OK
    55  
    56  check-ordering
    57  L1
    58    b.SET.1-a.SET.2
    59  ----
    60  L1 : file 000001 has inconsistent bounds: b#1,SET vs a#2,SET
    61  
    62  check-ordering
    63  L1
    64    a.SET.1-b.SET.2
    65    c.SET.3-d.SET.4
    66  ----
    67  OK
    68  
    69  check-ordering
    70  L1
    71    a.SET.1-b.SET.2
    72    d.SET.3-c.SET.4
    73  ----
    74  L1 : file 000002 has inconsistent bounds: d#3,SET vs c#4,SET
    75  
    76  check-ordering
    77  L1
    78    a.SET.1-b.SET.2
    79    b.SET.1-d.SET.4
    80  ----
    81  OK
    82  
    83  check-ordering
    84  L1
    85    a.SET.1-b.SET.2
    86    b.SET.2-d.SET.4
    87  ----
    88  L1 files 000001 and 000002 have overlapping ranges: [a#1,SET-b#2,SET] vs [b#2,SET-d#4,SET]
    89  
    90  check-ordering
    91  L1
    92    a.SET.1-c.SET.2
    93    b.SET.3-d.SET.4
    94  ----
    95  L1 files 000001 and 000002 have overlapping ranges: [a#1,SET-c#2,SET] vs [b#3,SET-d#4,SET]
    96  
    97  check-ordering
    98  L1
    99    a.SET.1-c.SET.2
   100  L2
   101    b.SET.3-d.SET.4
   102  ----
   103  OK
   104  
   105  check-ordering
   106  L1
   107    a.SET.1-c.SET.2
   108  L2
   109    b.SET.3-d.SET.4
   110    c.SET.5-e.SET.6
   111  ----
   112  L2 files 000002 and 000003 have overlapping ranges: [b#3,SET-d#4,SET] vs [c#5,SET-e#6,SET]
   113  
   114  # Single sublevel, ordering is fine.
   115  check-ordering
   116  L0.0
   117    a.SET.1-b.SET.2
   118    b.SET.1-d.SET.5
   119  ----
   120  L0.0 files 000001 and 000002 have overlapping ranges: [a#1,SET-b#2,SET] vs [b#1,SET-d#5,SET]
   121  
   122  # Single sublevel, ordering is incorrect.
   123  check-ordering
   124  L0.0
   125    a.SET.1-b.SET.2
   126    b.SET.2-d.SET.4
   127  ----
   128  L0.0 files 000001 and 000002 have overlapping ranges: [a#1,SET-b#2,SET] vs [b#2,SET-d#4,SET]
   129  
   130  # Two sublevels, but ordering is fine.
   131  check-ordering
   132  L0.0
   133    a.SET.1-b.SET.2
   134    c.SET.3-d.SET.4
   135  L0.1
   136    a.SET.5-b.SET.6
   137    c.SET.6-d.SET.8
   138  ----
   139  OK
   140  
   141  # Two sublevels, but first ordering is broken
   142  check-ordering
   143  L0.0
   144    a.SET.1-b.SET.2
   145    b.SET.3-d.SET.4
   146  L0.1
   147    a.SET.5-b.SET.6
   148    c.SET.6-d.SET.8
   149  ----
   150  L0.0 files 000001 and 000002 have overlapping ranges: [a#1,SET-b#2,SET] vs [b#3,SET-d#4,SET]
   151  
   152  # Two sublevels, but second ordering is broken
   153  check-ordering
   154  L0.0
   155    a.SET.1-b.SET.2
   156    b.SET.1-d.SET.4
   157  L0.1
   158    a.SET.5-b.SET.6
   159    b.SET.7-d.SET.8
   160  ----
   161  L0.0 files 000001 and 000002 have overlapping ranges: [a#1,SET-b#2,SET] vs [b#1,SET-d#4,SET]