github.com/zuoyebang/bitalostable@v1.0.1-0.20240229032404-e3b99a834294/testdata/iterator (about)

     1  define
     2  a.SET.1:b
     3  ----
     4  
     5  iter seq=2
     6  seek-ge a
     7  next
     8  prev
     9  ----
    10  a:b
    11  .
    12  a:b
    13  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 1, 1)),
    14  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
    15  
    16  iter seq=2
    17  seek-ge b
    18  ----
    19  .
    20  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0))
    21  
    22  iter seq=2
    23  seek-lt a
    24  ----
    25  .
    26  stats: (interface (dir, seek, step): (fwd, 0, 0), (rev, 1, 0)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 1, 0))
    27  
    28  
    29  define
    30  a.SET.2:c
    31  a.SET.1:b
    32  ----
    33  
    34  iter seq=2
    35  seek-ge a
    36  next
    37  prev
    38  ----
    39  a:b
    40  .
    41  a:b
    42  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 1, 1)),
    43  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 4, value-bytes 4, tombstoned: 0))
    44  
    45  iter seq=3
    46  seek-ge a
    47  next
    48  prev
    49  ----
    50  a:c
    51  .
    52  a:c
    53  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 1, 2)),
    54  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 4, value-bytes 4, tombstoned: 0))
    55  
    56  iter seq=2
    57  seek-prefix-ge a
    58  next
    59  prev
    60  next
    61  ----
    62  a:b
    63  .
    64  err=bitable: unsupported reverse prefix iteration
    65  err=bitable: unsupported reverse prefix iteration
    66  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
    67  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
    68  
    69  iter seq=3
    70  seek-prefix-ge a
    71  next
    72  ----
    73  a:c
    74  .
    75  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
    76  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
    77  
    78  
    79  define
    80  a.DEL.2:
    81  a.SET.1:b
    82  ----
    83  
    84  iter seq=3
    85  seek-ge a
    86  ----
    87  .
    88  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
    89  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 1, tombstoned: 0))
    90  
    91  iter seq=2
    92  seek-ge 1
    93  next
    94  ----
    95  a:b
    96  .
    97  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
    98  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 1, tombstoned: 0))
    99  
   100  iter seq=3
   101  seek-lt b
   102  ----
   103  .
   104  stats: (interface (dir, seek, step): (fwd, 0, 0), (rev, 1, 0)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 1, 2)),
   105  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 1, tombstoned: 0))
   106  
   107  iter seq=2
   108  seek-lt b
   109  prev
   110  next
   111  ----
   112  a:b
   113  .
   114  a:b
   115  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 1)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 1, 1)),
   116  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 4, value-bytes 2, tombstoned: 0))
   117  
   118  iter seq=3
   119  seek-prefix-ge a
   120  ----
   121  .
   122  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   123  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 1, tombstoned: 0))
   124  
   125  iter seq=2
   126  seek-prefix-ge 1
   127  ----
   128  .
   129  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
   130  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 1, tombstoned: 0))
   131  
   132  define
   133  a.DEL.2:
   134  a.SET.1:b
   135  b.SET.3:c
   136  ----
   137  
   138  iter seq=4
   139  seek-ge a
   140  next
   141  ----
   142  b:c
   143  .
   144  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 3), (rev, 0, 0)),
   145  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 2, tombstoned: 0))
   146  
   147  iter seq=3
   148  seek-ge a
   149  ----
   150  .
   151  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   152  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 2, tombstoned: 0))
   153  
   154  iter seq=2
   155  seek-ge a
   156  ----
   157  a:b
   158  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
   159  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 1, tombstoned: 0))
   160  
   161  iter seq=4
   162  seek-prefix-ge a
   163  ----
   164  .
   165  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   166  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 2, tombstoned: 0))
   167  
   168  iter seq=3
   169  seek-prefix-ge a
   170  ----
   171  .
   172  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   173  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 2, tombstoned: 0))
   174  
   175  iter seq=2
   176  seek-prefix-ge a
   177  ----
   178  a:b
   179  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
   180  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 1, tombstoned: 0))
   181  
   182  iter seq=2
   183  seek-prefix-ge a
   184  seek-prefix-ge b
   185  ----
   186  a:b
   187  .
   188  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 0)),
   189  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 2, tombstoned: 0))
   190  
   191  define
   192  a.DEL.3:
   193  a.SET.1:b
   194  b.DEL.3:
   195  b.SET.2:c
   196  c.SET.3:d
   197  ----
   198  
   199  iter seq=4
   200  seek-prefix-ge a
   201  seek-prefix-ge b
   202  seek-prefix-ge c
   203  ----
   204  .
   205  .
   206  c:d
   207  stats: (interface (dir, seek, step): (fwd, 3, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 3, 4), (rev, 0, 0)),
   208  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 7, key-bytes 7, value-bytes 4, tombstoned: 0))
   209  
   210  iter seq=3
   211  seek-prefix-ge a
   212  seek-prefix-ge b
   213  seek-prefix-ge c
   214  ----
   215  a:b
   216  b:c
   217  .
   218  stats: (interface (dir, seek, step): (fwd, 3, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 3, 0), (rev, 0, 0)),
   219  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 5, value-bytes 3, tombstoned: 0))
   220  
   221  iter seq=3
   222  seek-ge a
   223  seek-ge b
   224  seek-ge c
   225  ----
   226  a:b
   227  b:c
   228  .
   229  stats: (interface (dir, seek, step): (fwd, 3, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 3, 0), (rev, 0, 0)),
   230  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 5, value-bytes 3, tombstoned: 0))
   231  
   232  define
   233  a.SET.1:a
   234  b.SET.2:b
   235  c.SET.3:c
   236  ----
   237  
   238  iter seq=4
   239  seek-ge a
   240  next
   241  next
   242  next
   243  ----
   244  a:a
   245  b:b
   246  c:c
   247  .
   248  stats: (interface (dir, seek, step): (fwd, 1, 3), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 3), (rev, 0, 0)),
   249  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 3, tombstoned: 0))
   250  
   251  iter seq=4
   252  seek-ge b
   253  next
   254  ----
   255  b:b
   256  c:c
   257  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   258  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
   259  
   260  iter seq=4
   261  seek-ge c
   262  ----
   263  c:c
   264  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
   265  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
   266  
   267  iter seq=4
   268  seek-lt a
   269  ----
   270  .
   271  stats: (interface (dir, seek, step): (fwd, 0, 0), (rev, 1, 0)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 1, 0))
   272  
   273  iter seq=4
   274  seek-lt b
   275  prev
   276  next
   277  ----
   278  a:a
   279  .
   280  a:a
   281  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 1)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 1, 1)),
   282  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
   283  
   284  iter seq=4
   285  seek-lt c
   286  prev
   287  prev
   288  next
   289  ----
   290  b:b
   291  a:a
   292  .
   293  a:a
   294  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 2)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 1, 2)),
   295  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 3, tombstoned: 0))
   296  
   297  
   298  iter seq=4
   299  seek-lt d
   300  prev
   301  prev
   302  prev
   303  next
   304  ----
   305  c:c
   306  b:b
   307  a:a
   308  .
   309  a:a
   310  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 3)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 1, 3)),
   311  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 4, value-bytes 4, tombstoned: 0))
   312  
   313  iter seq=4
   314  seek-prefix-ge a
   315  next
   316  ----
   317  a:a
   318  .
   319  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   320  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
   321  
   322  iter seq=4
   323  seek-prefix-ge b
   324  next
   325  ----
   326  b:b
   327  .
   328  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   329  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
   330  
   331  
   332  iter seq=4
   333  seek-prefix-ge c
   334  next
   335  ----
   336  c:c
   337  .
   338  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   339  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
   340  
   341  
   342  iter seq=4
   343  seek-prefix-ge d
   344  ----
   345  .
   346  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0))
   347  
   348  iter seq=4
   349  seek-prefix-ge a
   350  seek-prefix-ge c
   351  seek-prefix-ge b
   352  ----
   353  a:a
   354  c:c
   355  b:b
   356  stats: (interface (dir, seek, step): (fwd, 3, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 3, 0), (rev, 0, 0)),
   357  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 3, tombstoned: 0))
   358  
   359  define
   360  a.SET.b2:b
   361  b.SET.2:c
   362  ----
   363  
   364  iter seq=2
   365  seek-ge a
   366  next
   367  prev
   368  ----
   369  a:b
   370  .
   371  a:b
   372  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 1, 1)),
   373  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 4, value-bytes 4, tombstoned: 0))
   374  
   375  iter seq=2
   376  seek-ge b
   377  ----
   378  .
   379  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
   380  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
   381  
   382  iter seq=2
   383  seek-lt a
   384  ----
   385  .
   386  stats: (interface (dir, seek, step): (fwd, 0, 0), (rev, 1, 0)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 1, 0))
   387  
   388  iter seq=2
   389  seek-lt b
   390  prev
   391  next
   392  ----
   393  a:b
   394  .
   395  a:b
   396  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 1)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 1, 1)),
   397  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
   398  
   399  iter seq=2
   400  seek-lt c
   401  prev
   402  next
   403  ----
   404  a:b
   405  .
   406  a:b
   407  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 1)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 1, 1)),
   408  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 3, tombstoned: 0))
   409  
   410  iter seq=2
   411  seek-prefix-ge a
   412  next
   413  ----
   414  a:b
   415  .
   416  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   417  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
   418  
   419  iter seq=2
   420  seek-prefix-ge b
   421  ----
   422  .
   423  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
   424  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
   425  
   426  
   427  define
   428  a.SET.1:a
   429  aa.SET.2:aa
   430  aaa.SET.3:aaa
   431  b.SET.4:b
   432  ----
   433  
   434  iter seq=5
   435  seek-prefix-ge a
   436  next
   437  ----
   438  a:a
   439  .
   440  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   441  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 3, value-bytes 3, tombstoned: 0))
   442  
   443  iter seq=5
   444  seek-prefix-ge a
   445  next
   446  ----
   447  a:a
   448  .
   449  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   450  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 3, value-bytes 3, tombstoned: 0))
   451  
   452  iter seq=5
   453  seek-prefix-ge aa
   454  ----
   455  aa:aa
   456  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
   457  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 2, value-bytes 2, tombstoned: 0))
   458  
   459  iter seq=5
   460  seek-prefix-ge aa
   461  next
   462  ----
   463  aa:aa
   464  .
   465  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   466  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 5, value-bytes 5, tombstoned: 0))
   467  
   468  iter seq=5
   469  seek-prefix-ge aa
   470  next
   471  ----
   472  aa:aa
   473  .
   474  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   475  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 5, value-bytes 5, tombstoned: 0))
   476  
   477  iter seq=5
   478  seek-prefix-ge aaa
   479  next
   480  ----
   481  aaa:aaa
   482  .
   483  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   484  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 4, value-bytes 4, tombstoned: 0))
   485  
   486  iter seq=5
   487  seek-prefix-ge aaa
   488  ----
   489  aaa:aaa
   490  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
   491  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 3, value-bytes 3, tombstoned: 0))
   492  
   493  iter seq=5
   494  seek-prefix-ge b
   495  next
   496  ----
   497  b:b
   498  .
   499  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   500  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
   501  
   502  iter seq=5
   503  seek-prefix-ge aa
   504  last
   505  prev
   506  prev
   507  prev
   508  prev
   509  ----
   510  aa:aa
   511  b:b
   512  aaa:aaa
   513  aa:aa
   514  a:a
   515  .
   516  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 1, 4)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 1, 4)),
   517  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 9, value-bytes 9, tombstoned: 0))
   518  
   519  iter seq=5
   520  seek-prefix-ge aa
   521  first
   522  next
   523  next
   524  next
   525  next
   526  ----
   527  aa:aa
   528  a:a
   529  aa:aa
   530  aaa:aaa
   531  b:b
   532  .
   533  stats: (interface (dir, seek, step): (fwd, 2, 4), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 2, 4), (rev, 0, 0)),
   534  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 9, value-bytes 9, tombstoned: 0))
   535  
   536  iter seq=5
   537  seek-prefix-ge aaa
   538  seek-ge aa
   539  next
   540  next
   541  next
   542  ----
   543  aaa:aaa
   544  aa:aa
   545  aaa:aaa
   546  b:b
   547  .
   548  stats: (interface (dir, seek, step): (fwd, 2, 3), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 2, 3), (rev, 0, 0)),
   549  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 9, value-bytes 9, tombstoned: 0))
   550  
   551  iter seq=5
   552  seek-prefix-ge aaa
   553  seek-ge aaa
   554  next
   555  next
   556  ----
   557  aaa:aaa
   558  aaa:aaa
   559  b:b
   560  .
   561  stats: (interface (dir, seek, step): (fwd, 2, 2), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 2, 2), (rev, 0, 0)),
   562  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 7, value-bytes 7, tombstoned: 0))
   563  
   564  iter seq=5
   565  seek-prefix-ge aaa
   566  seek-lt aa
   567  next
   568  next
   569  next
   570  next
   571  ----
   572  aaa:aaa
   573  a:a
   574  aa:aa
   575  aaa:aaa
   576  b:b
   577  .
   578  stats: (interface (dir, seek, step): (fwd, 1, 4), (rev, 1, 0)), (internal (dir, seek, step): (fwd, 2, 4), (rev, 1, 1)),
   579  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 6, key-bytes 11, value-bytes 11, tombstoned: 0))
   580  
   581  
   582  iter seq=5
   583  seek-prefix-ge aaa
   584  seek-lt b
   585  next
   586  next
   587  ----
   588  aaa:aaa
   589  aaa:aaa
   590  b:b
   591  .
   592  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 1, 0)), (internal (dir, seek, step): (fwd, 1, 3), (rev, 1, 1)),
   593  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 12, value-bytes 12, tombstoned: 0))
   594  
   595  iter seq=4
   596  seek-prefix-ge a
   597  seek-prefix-ge aa
   598  seek-prefix-ge aaa
   599  seek-prefix-ge b
   600  ----
   601  a:a
   602  aa:aa
   603  aaa:aaa
   604  .
   605  stats: (interface (dir, seek, step): (fwd, 4, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 4, 0), (rev, 0, 0)),
   606  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 7, value-bytes 7, tombstoned: 0))
   607  
   608  iter seq=3
   609  seek-prefix-ge aaa
   610  seek-prefix-ge b
   611  seek-prefix-ge a
   612  seek-prefix-ge aa
   613  seek-prefix-ge aaa
   614  ----
   615  .
   616  .
   617  a:a
   618  aa:aa
   619  .
   620  stats: (interface (dir, seek, step): (fwd, 5, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 5, 0), (rev, 0, 0)),
   621  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 7, key-bytes 12, value-bytes 12, tombstoned: 0))
   622  
   623  define
   624  bb.DEL.2:
   625  bb.SET.1:1
   626  bb2.SET.3:2
   627  ----
   628  
   629  iter seq=4
   630  seek-prefix-ge bb
   631  ----
   632  .
   633  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   634  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 7, value-bytes 2, tombstoned: 0))
   635  
   636  
   637  # NB: RANGEDEL entries are ignored.
   638  define
   639  a.RANGEDEL.4:c
   640  a.MERGE.3:d
   641  a.RANGEDEL.2:c
   642  a.MERGE.2:c
   643  a.RANGEDEL.1:c
   644  a.SET.1:b
   645  b.RANGEDEL.3:c
   646  b.MERGE.2:b
   647  b.RANGEDEL.1:c
   648  b.MERGE.1:a
   649  ----
   650  
   651  iter seq=4
   652  seek-ge a
   653  next
   654  next
   655  prev
   656  ----
   657  a:bcd
   658  b:ab
   659  .
   660  b:ab
   661  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 1, 5), (rev, 1, 2)),
   662  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 15, key-bytes 15, value-bytes 15, tombstoned: 0))
   663  
   664  iter seq=3
   665  seek-ge a
   666  next
   667  ----
   668  a:bc
   669  b:ab
   670  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 4), (rev, 0, 0)),
   671  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 10, key-bytes 10, value-bytes 10, tombstoned: 0))
   672  
   673  iter seq=2
   674  seek-ge a
   675  next
   676  ----
   677  a:b
   678  b:a
   679  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   680  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 10, key-bytes 10, value-bytes 10, tombstoned: 0))
   681  
   682  iter seq=4
   683  seek-lt c
   684  prev
   685  prev
   686  next
   687  ----
   688  b:ab
   689  a:bcd
   690  .
   691  a:bcd
   692  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 2)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 1, 5)),
   693  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 16, key-bytes 16, value-bytes 16, tombstoned: 0))
   694  
   695  iter seq=3
   696  seek-lt c
   697  prev
   698  ----
   699  b:ab
   700  a:bc
   701  stats: (interface (dir, seek, step): (fwd, 0, 0), (rev, 1, 1)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 1, 4)),
   702  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 10, key-bytes 10, value-bytes 10, tombstoned: 0))
   703  
   704  iter seq=2
   705  seek-lt c
   706  prev
   707  ----
   708  b:a
   709  a:b
   710  stats: (interface (dir, seek, step): (fwd, 0, 0), (rev, 1, 1)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 1, 2)),
   711  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 10, key-bytes 10, value-bytes 10, tombstoned: 0))
   712  
   713  iter seq=4
   714  seek-ge a
   715  next
   716  prev
   717  next
   718  ----
   719  a:bcd
   720  b:ab
   721  a:bcd
   722  b:ab
   723  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 10), (rev, 1, 5)),
   724  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 30, key-bytes 30, value-bytes 30, tombstoned: 0))
   725  
   726  iter seq=3
   727  seek-ge a
   728  next
   729  prev
   730  next
   731  ----
   732  a:bc
   733  b:ab
   734  a:bc
   735  b:ab
   736  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 8), (rev, 1, 4)),
   737  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 30, key-bytes 30, value-bytes 30, tombstoned: 0))
   738  
   739  iter seq=2
   740  seek-ge a
   741  next
   742  prev
   743  next
   744  ----
   745  a:b
   746  b:a
   747  a:b
   748  b:a
   749  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 4), (rev, 1, 2)),
   750  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 30, key-bytes 30, value-bytes 30, tombstoned: 0))
   751  
   752  iter seq=4
   753  seek-lt c
   754  prev
   755  next
   756  prev
   757  ----
   758  b:ab
   759  a:bcd
   760  b:ab
   761  a:bcd
   762  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 2)), (internal (dir, seek, step): (fwd, 1, 5), (rev, 2, 10)),
   763  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 30, key-bytes 30, value-bytes 30, tombstoned: 0))
   764  
   765  iter seq=3
   766  seek-lt c
   767  prev
   768  next
   769  prev
   770  ----
   771  b:ab
   772  a:bc
   773  b:ab
   774  a:bc
   775  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 2)), (internal (dir, seek, step): (fwd, 1, 4), (rev, 2, 8)),
   776  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 30, key-bytes 30, value-bytes 30, tombstoned: 0))
   777  
   778  iter seq=2
   779  seek-lt c
   780  prev
   781  next
   782  prev
   783  ----
   784  b:a
   785  a:b
   786  b:a
   787  a:b
   788  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 2)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 2, 4)),
   789  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 30, key-bytes 30, value-bytes 30, tombstoned: 0))
   790  
   791  iter seq=3
   792  seek-prefix-ge a
   793  next
   794  ----
   795  a:bc
   796  .
   797  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   798  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 8, key-bytes 8, value-bytes 8, tombstoned: 0))
   799  
   800  iter seq=2
   801  seek-prefix-ge a
   802  next
   803  ----
   804  a:b
   805  .
   806  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   807  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 10, key-bytes 10, value-bytes 10, tombstoned: 0))
   808  
   809  iter seq=4
   810  seek-prefix-ge a
   811  next
   812  ----
   813  a:bcd
   814  .
   815  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 3), (rev, 0, 0)),
   816  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 8, key-bytes 8, value-bytes 8, tombstoned: 0))
   817  
   818  iter seq=2
   819  seek-prefix-ge a
   820  next
   821  ----
   822  a:b
   823  .
   824  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   825  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 10, key-bytes 10, value-bytes 10, tombstoned: 0))
   826  
   827  iter seq=3
   828  seek-prefix-ge a
   829  next
   830  ----
   831  a:bc
   832  .
   833  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   834  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 8, key-bytes 8, value-bytes 8, tombstoned: 0))
   835  
   836  iter seq=3
   837  seek-prefix-ge c
   838  ----
   839  .
   840  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0))
   841  
   842  iter seq=3
   843  seek-prefix-ge 1
   844  ----
   845  .
   846  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
   847  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 4, value-bytes 4, tombstoned: 0))
   848  
   849  iter seq=3
   850  seek-prefix-ge a
   851  ----
   852  a:bc
   853  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   854  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 6, key-bytes 6, value-bytes 6, tombstoned: 0))
   855  
   856  
   857  # NB: RANGEDEL entries are ignored.
   858  define
   859  a.RANGEDEL.4:c
   860  a.MERGE.3:d
   861  a.RANGEDEL.2:c
   862  a.MERGE.2:c
   863  a.RANGEDEL.1:c
   864  a.MERGE.1:b
   865  aa.RANGEDEL.3:c
   866  aa.MERGE.2:b
   867  aa.RANGEDEL.1:c
   868  aa.MERGE.1:a
   869  b.RANGEDEL.3:c
   870  b.MERGE.2:b
   871  b.RANGEDEL.1:c
   872  b.MERGE.1:a
   873  ----
   874  
   875  iter seq=3
   876  seek-prefix-ge a
   877  next
   878  next
   879  ----
   880  a:bc
   881  .
   882  .
   883  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   884  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 8, key-bytes 10, value-bytes 8, tombstoned: 0))
   885  
   886  iter seq=2
   887  seek-prefix-ge a
   888  next
   889  next
   890  ----
   891  a:b
   892  .
   893  .
   894  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   895  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 10, key-bytes 14, value-bytes 10, tombstoned: 0))
   896  
   897  iter seq=4
   898  seek-prefix-ge a
   899  next
   900  ----
   901  a:bcd
   902  .
   903  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 3), (rev, 0, 0)),
   904  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 8, key-bytes 10, value-bytes 8, tombstoned: 0))
   905  
   906  iter seq=2
   907  seek-prefix-ge a
   908  next
   909  ----
   910  a:b
   911  .
   912  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
   913  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 10, key-bytes 14, value-bytes 10, tombstoned: 0))
   914  
   915  iter seq=3
   916  seek-prefix-ge aa
   917  next
   918  ----
   919  aa:ab
   920  .
   921  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   922  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 6, key-bytes 10, value-bytes 6, tombstoned: 0))
   923  
   924  iter seq=4
   925  seek-prefix-ge aa
   926  ----
   927  aa:ab
   928  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
   929  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 6, key-bytes 10, value-bytes 6, tombstoned: 0))
   930  
   931  define
   932  a.SET.1:a
   933  b.SET.1:b
   934  c.SET.1:c
   935  d.SET.1:d
   936  ----
   937  
   938  iter seq=2 lower=a
   939  seek-ge a
   940  first
   941  prev
   942  ----
   943  a:a
   944  a:a
   945  .
   946  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)),
   947  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
   948  
   949  iter seq=2 lower=b
   950  seek-ge a
   951  first
   952  prev
   953  ----
   954  b:b
   955  b:b
   956  .
   957  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)),
   958  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
   959  
   960  iter seq=2 lower=c
   961  seek-ge a
   962  first
   963  prev
   964  ----
   965  c:c
   966  c:c
   967  .
   968  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)),
   969  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
   970  
   971  iter seq=2 lower=d
   972  seek-ge a
   973  first
   974  prev
   975  ----
   976  d:d
   977  d:d
   978  .
   979  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)),
   980  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
   981  
   982  iter seq=2 lower=e
   983  seek-ge a
   984  first
   985  ----
   986  .
   987  .
   988  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 0))
   989  
   990  iter seq=2 upper=d
   991  seek-lt d
   992  last
   993  next
   994  ----
   995  c:c
   996  c:c
   997  .
   998  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 2, 0)), (internal (dir, seek, step): (fwd, 0, 2), (rev, 2, 2)),
   999  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 5, value-bytes 5, tombstoned: 0))
  1000  
  1001  iter seq=2 upper=c
  1002  seek-lt d
  1003  last
  1004  next
  1005  ----
  1006  b:b
  1007  b:b
  1008  .
  1009  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 2, 0)), (internal (dir, seek, step): (fwd, 0, 2), (rev, 2, 2)),
  1010  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 5, value-bytes 5, tombstoned: 0))
  1011  
  1012  iter seq=2 upper=b
  1013  seek-lt d
  1014  last
  1015  next
  1016  ----
  1017  a:a
  1018  a:a
  1019  .
  1020  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 2, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 2, 2)),
  1021  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 3, tombstoned: 0))
  1022  
  1023  iter seq=2 upper=a
  1024  seek-lt d
  1025  last
  1026  ----
  1027  .
  1028  .
  1029  stats: (interface (dir, seek, step): (fwd, 0, 0), (rev, 2, 0)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 2, 0))
  1030  
  1031  iter seq=2 lower=b upper=c
  1032  seek-ge a
  1033  next
  1034  ----
  1035  b:b
  1036  .
  1037  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
  1038  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
  1039  
  1040  iter seq=2
  1041  set-bounds lower=a
  1042  seek-ge a
  1043  first
  1044  prev
  1045  ----
  1046  .
  1047  a:a
  1048  a:a
  1049  .
  1050  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)),
  1051  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
  1052  
  1053  iter seq=2
  1054  set-bounds lower=b
  1055  seek-ge a
  1056  first
  1057  prev
  1058  ----
  1059  .
  1060  b:b
  1061  b:b
  1062  .
  1063  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)),
  1064  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
  1065  
  1066  iter seq=2
  1067  set-bounds lower=c
  1068  seek-ge a
  1069  first
  1070  prev
  1071  ----
  1072  .
  1073  c:c
  1074  c:c
  1075  .
  1076  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)),
  1077  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
  1078  
  1079  iter seq=2
  1080  set-bounds lower=d
  1081  seek-ge a
  1082  first
  1083  prev
  1084  ----
  1085  .
  1086  d:d
  1087  d:d
  1088  .
  1089  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)),
  1090  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
  1091  
  1092  iter seq=2
  1093  set-bounds lower=e
  1094  seek-ge a
  1095  first
  1096  ----
  1097  .
  1098  .
  1099  .
  1100  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 0))
  1101  
  1102  iter seq=2
  1103  set-bounds upper=d
  1104  seek-lt d
  1105  last
  1106  next
  1107  ----
  1108  .
  1109  c:c
  1110  c:c
  1111  .
  1112  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 2, 0)), (internal (dir, seek, step): (fwd, 0, 2), (rev, 2, 2)),
  1113  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 5, value-bytes 5, tombstoned: 0))
  1114  
  1115  iter seq=2
  1116  set-bounds upper=c
  1117  seek-lt d
  1118  last
  1119  next
  1120  ----
  1121  .
  1122  b:b
  1123  b:b
  1124  .
  1125  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 2, 0)), (internal (dir, seek, step): (fwd, 0, 2), (rev, 2, 2)),
  1126  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 5, value-bytes 5, tombstoned: 0))
  1127  
  1128  iter seq=2
  1129  set-bounds upper=b
  1130  seek-lt d
  1131  last
  1132  next
  1133  ----
  1134  .
  1135  a:a
  1136  a:a
  1137  .
  1138  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 2, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 2, 2)),
  1139  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 3, tombstoned: 0))
  1140  
  1141  iter seq=2
  1142  set-bounds upper=a
  1143  seek-lt d
  1144  last
  1145  ----
  1146  .
  1147  .
  1148  .
  1149  stats: (interface (dir, seek, step): (fwd, 0, 0), (rev, 2, 0)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 2, 0))
  1150  
  1151  iter seq=2
  1152  set-bounds lower=a
  1153  seek-lt d
  1154  next
  1155  next
  1156  ----
  1157  .
  1158  c:c
  1159  d:d
  1160  .
  1161  stats: (interface (dir, seek, step): (fwd, 0, 2), (rev, 1, 0)), (internal (dir, seek, step): (fwd, 0, 3), (rev, 1, 1)),
  1162  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 4, value-bytes 4, tombstoned: 0))
  1163  
  1164  iter seq=2
  1165  set-bounds lower=b upper=c
  1166  seek-ge a
  1167  next
  1168  ----
  1169  .
  1170  b:b
  1171  .
  1172  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
  1173  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
  1174  
  1175  iter seq=2
  1176  set-bounds lower=b
  1177  seek-ge a
  1178  set-bounds lower=b upper=z
  1179  seek-ge a
  1180  ----
  1181  .
  1182  b:b
  1183  .
  1184  b:b
  1185  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 0)),
  1186  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
  1187  
  1188  iter seq=2
  1189  seek-ge a
  1190  set-bounds upper=e
  1191  ----
  1192  a:a
  1193  .
  1194  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
  1195  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
  1196  
  1197  iter seq=2
  1198  set-bounds lower=b
  1199  seek-ge a
  1200  set-bounds upper=e
  1201  ----
  1202  .
  1203  b:b
  1204  .
  1205  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
  1206  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
  1207  
  1208  iter seq=2
  1209  set-bounds lower=b
  1210  first
  1211  ----
  1212  .
  1213  b:b
  1214  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
  1215  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
  1216  
  1217  iter seq=2
  1218  set-bounds upper=b
  1219  first
  1220  ----
  1221  .
  1222  a:a
  1223  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
  1224  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
  1225  
  1226  iter seq=2
  1227  set-bounds lower=b
  1228  last
  1229  ----
  1230  .
  1231  d:d
  1232  stats: (interface (dir, seek, step): (fwd, 0, 0), (rev, 1, 0)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 1, 1)),
  1233  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
  1234  
  1235  iter seq=2
  1236  set-bounds upper=b
  1237  last
  1238  ----
  1239  .
  1240  a:a
  1241  stats: (interface (dir, seek, step): (fwd, 0, 0), (rev, 1, 0)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 1, 1)),
  1242  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
  1243  
  1244  # The prev call after "set-bounds upper=c" will assume that the iterator
  1245  # is exhausted due to having stepped up to c. Which means prev should step
  1246  # back to below c, hence returning b.
  1247  iter seq=2
  1248  last
  1249  next
  1250  set-bounds upper=c
  1251  prev
  1252  ----
  1253  d:d
  1254  .
  1255  .
  1256  b:b
  1257  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 1)), (internal (dir, seek, step): (fwd, 0, 2), (rev, 2, 2)),
  1258  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 5, value-bytes 5, tombstoned: 0))
  1259  
  1260  # The next call after "set-bounds lower=b" will assume that the iterator
  1261  # is exhausted due to having stepped below b. Which means next should step
  1262  # up to b (or higher), hence returning b.
  1263  iter seq=2
  1264  first
  1265  prev
  1266  set-bounds lower=b
  1267  next
  1268  ----
  1269  a:a
  1270  .
  1271  .
  1272  b:b
  1273  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)),
  1274  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
  1275  
  1276  iter seq=2
  1277  set-bounds lower=b
  1278  seek-lt c
  1279  next
  1280  ----
  1281  .
  1282  b:b
  1283  c:c
  1284  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 1, 1)),
  1285  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 3, tombstoned: 0))
  1286  
  1287  iter seq=2
  1288  set-bounds upper=d
  1289  seek-ge c
  1290  prev
  1291  ----
  1292  .
  1293  c:c
  1294  b:b
  1295  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 2)),
  1296  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 3, tombstoned: 0))
  1297  
  1298  define
  1299  a.SET.1:a
  1300  aa.SET.1:aa
  1301  aaa.SET.1:aaa
  1302  b.SET.1:b
  1303  ----
  1304  
  1305  iter seq=2 lower=a
  1306  seek-prefix-ge a
  1307  first
  1308  prev
  1309  ----
  1310  a:a
  1311  a:a
  1312  .
  1313  stats: (interface (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 2, 0), (rev, 0, 1)),
  1314  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 2, tombstoned: 0))
  1315  
  1316  
  1317  iter seq=2 lower=aa
  1318  seek-prefix-ge a
  1319  ----
  1320  err=bitable: SeekPrefixGE supplied with key outside of lower bound
  1321  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 0, 0), (rev, 0, 0))
  1322  
  1323  iter seq=2 lower=a upper=aa
  1324  seek-prefix-ge a
  1325  next
  1326  ----
  1327  a:a
  1328  .
  1329  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
  1330  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 1, tombstoned: 0))
  1331  
  1332  iter seq=2 lower=a upper=aaa
  1333  seek-prefix-ge a
  1334  next
  1335  ----
  1336  a:a
  1337  .
  1338  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
  1339  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 3, value-bytes 3, tombstoned: 0))
  1340  
  1341  iter seq=2 lower=a upper=b
  1342  seek-prefix-ge a
  1343  next
  1344  ----
  1345  a:a
  1346  .
  1347  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
  1348  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 3, value-bytes 3, tombstoned: 0))
  1349  
  1350  iter seq=2 lower=a upper=c
  1351  seek-prefix-ge a
  1352  next
  1353  ----
  1354  a:a
  1355  .
  1356  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
  1357  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 3, value-bytes 3, tombstoned: 0))
  1358  
  1359  iter seq=2 lower=a upper=aaa
  1360  seek-prefix-ge aa
  1361  ----
  1362  aa:aa
  1363  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
  1364  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 2, value-bytes 2, tombstoned: 0))
  1365  
  1366  iter seq=2 lower=a upper=aaa
  1367  seek-prefix-ge aa
  1368  next
  1369  ----
  1370  aa:aa
  1371  .
  1372  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
  1373  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 2, value-bytes 2, tombstoned: 0))
  1374  
  1375  # NB: RANGEDEL entries are ignored.
  1376  define
  1377  a.RANGEDEL.2:c
  1378  a.SET.1:a
  1379  b.RANGEDEL.3:d
  1380  b.SET.2:b
  1381  b.RANGEDEL.1:d
  1382  ----
  1383  
  1384  iter seq=4
  1385  first
  1386  next
  1387  next
  1388  ----
  1389  a:a
  1390  b:b
  1391  .
  1392  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
  1393  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 5, key-bytes 5, value-bytes 5, tombstoned: 0))
  1394  
  1395  define
  1396  a.SINGLEDEL.1:
  1397  ----
  1398  
  1399  iter seq=2
  1400  first
  1401  ----
  1402  .
  1403  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)),
  1404  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 1, key-bytes 1, value-bytes 0, tombstoned: 0))
  1405  
  1406  define
  1407  a.SINGLEDEL.2:
  1408  a.SINGLEDEL.1:
  1409  ----
  1410  
  1411  iter seq=3
  1412  first
  1413  ----
  1414  .
  1415  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
  1416  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 0, tombstoned: 0))
  1417  
  1418  define
  1419  a.SINGLEDEL.2:
  1420  a.DEL.1:
  1421  ----
  1422  
  1423  iter seq=3
  1424  first
  1425  ----
  1426  .
  1427  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
  1428  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 0, tombstoned: 0))
  1429  
  1430  define
  1431  a.SINGLEDEL.2:
  1432  a.MERGE.1:
  1433  ----
  1434  
  1435  iter seq=3
  1436  first
  1437  ----
  1438  .
  1439  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
  1440  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 0, tombstoned: 0))
  1441  
  1442  define
  1443  a.SINGLEDEL.2:
  1444  a.SET.1:b
  1445  ----
  1446  
  1447  iter seq=3
  1448  first
  1449  ----
  1450  .
  1451  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
  1452  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 1, tombstoned: 0))
  1453  
  1454  define
  1455  a.SET.2:b
  1456  a.SINGLEDEL.1:
  1457  ----
  1458  
  1459  iter seq=3
  1460  first
  1461  next
  1462  ----
  1463  a:b
  1464  .
  1465  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
  1466  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 2, key-bytes 2, value-bytes 1, tombstoned: 0))
  1467  
  1468  define
  1469  a.SINGLEDEL.2:
  1470  a.SET.1:b
  1471  b.SET.3:c
  1472  ----
  1473  
  1474  iter seq=4
  1475  first
  1476  next
  1477  ----
  1478  b:c
  1479  .
  1480  stats: (interface (dir, seek, step): (fwd, 1, 1), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 3), (rev, 0, 0)),
  1481  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 2, tombstoned: 0))
  1482  
  1483  define
  1484  a.SINGLEDEL.3:
  1485  a.SET.2:b
  1486  a.SET.1:a
  1487  ----
  1488  
  1489  iter
  1490  first
  1491  ----
  1492  .
  1493  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)),
  1494  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 2, tombstoned: 0))
  1495  
  1496  define
  1497  a.SINGLEDEL.3:
  1498  a.MERGE.2:b
  1499  a.MERGE.1:a
  1500  ----
  1501  
  1502  iter seq=4
  1503  first
  1504  ----
  1505  .
  1506  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 3), (rev, 0, 0)),
  1507  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 2, tombstoned: 0))
  1508  
  1509  define
  1510  a.SINGLEDEL.4:
  1511  a.SET.3:val
  1512  a.SINGLEDEL.2:
  1513  a.SET.1:val
  1514  ----
  1515  
  1516  iter seq=5
  1517  first
  1518  ----
  1519  .
  1520  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 4), (rev, 0, 0)),
  1521  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 4, value-bytes 6, tombstoned: 0))
  1522  
  1523  define
  1524  a.SINGLEDEL.4:
  1525  a.SET.3:val
  1526  a.DEL.2:
  1527  a.SET.1:val
  1528  ----
  1529  
  1530  iter seq=5
  1531  first
  1532  ----
  1533  .
  1534  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 4), (rev, 0, 0)),
  1535  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 4, value-bytes 6, tombstoned: 0))
  1536  
  1537  define
  1538  a.SINGLEDEL.4:
  1539  a.SET.3:c
  1540  a.MERGE.2:b
  1541  a.SET.1:a
  1542  ----
  1543  
  1544  iter seq=5
  1545  first
  1546  ----
  1547  .
  1548  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 4), (rev, 0, 0)),
  1549  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 4, key-bytes 4, value-bytes 3, tombstoned: 0))
  1550  
  1551  define
  1552  a.SINGLEDEL.3:
  1553  a.RANGEDEL.2:c
  1554  a.SET.1:val
  1555  ----
  1556  
  1557  iter seq=4
  1558  first
  1559  ----
  1560  .
  1561  stats: (interface (dir, seek, step): (fwd, 1, 0), (rev, 0, 0)), (internal (dir, seek, step): (fwd, 1, 2), (rev, 0, 0)),
  1562  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 3, key-bytes 3, value-bytes 4, tombstoned: 0))
  1563  
  1564  # Exercise iteration with limits, when there are no deletes.
  1565  define
  1566  a.SET.1:a
  1567  b.SET.1:b
  1568  c.SET.1:c
  1569  d.SET.1:d
  1570  ----
  1571  
  1572  iter seq=2
  1573  seek-ge-limit a b
  1574  next-limit b
  1575  prev-limit a
  1576  next-limit b
  1577  next-limit b
  1578  seek-lt-limit d d
  1579  prev-limit d
  1580  next-limit e
  1581  prev-limit d
  1582  prev-limit c
  1583  prev-limit b
  1584  prev-limit a
  1585  prev-limit a
  1586  next-limit a
  1587  next-limit b
  1588  ----
  1589  a:a valid
  1590  . at-limit
  1591  a:a valid
  1592  . at-limit
  1593  . at-limit
  1594  . at-limit
  1595  . at-limit
  1596  d:d valid
  1597  . at-limit
  1598  c:c valid
  1599  b:b valid
  1600  a:a valid
  1601  . exhausted
  1602  . at-limit
  1603  a:a valid
  1604  stats: (interface (dir, seek, step): (fwd, 1, 6), (rev, 1, 7)), (internal (dir, seek, step): (fwd, 3, 3), (rev, 1, 6)),
  1605  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 11, key-bytes 11, value-bytes 11, tombstoned: 0))
  1606  
  1607  # Exercise iteration with limits when we have deletes.
  1608  
  1609  define
  1610  a.SET.1:a
  1611  b.DEL.3:
  1612  b.SET.2:b
  1613  c.DEL.3:
  1614  c.SET.2:c
  1615  d.SET.1:d
  1616  ----
  1617  
  1618  iter seq=4
  1619  seek-ge-limit a b
  1620  next-limit b
  1621  prev-limit a
  1622  prev-limit a
  1623  next-limit b
  1624  next-limit b
  1625  next-limit b
  1626  prev-limit a
  1627  next-limit c
  1628  prev-limit b
  1629  next-limit c
  1630  next-limit d
  1631  next-limit e
  1632  next-limit e
  1633  prev-limit d
  1634  next-limit e
  1635  ----
  1636  a:a valid
  1637  . at-limit
  1638  a:a valid
  1639  . exhausted
  1640  a:a valid
  1641  . at-limit
  1642  . at-limit
  1643  a:a valid
  1644  . at-limit
  1645  . at-limit
  1646  . at-limit
  1647  . at-limit
  1648  d:d valid
  1649  . exhausted
  1650  d:d valid
  1651  . exhausted
  1652  stats: (interface (dir, seek, step): (fwd, 1, 10), (rev, 0, 5)), (internal (dir, seek, step): (fwd, 3, 13), (rev, 1, 8)),
  1653  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 21, key-bytes 21, value-bytes 14, tombstoned: 0))
  1654  
  1655  iter seq=4
  1656  seek-ge-limit b d
  1657  next-limit d
  1658  prev-limit b
  1659  next-limit e
  1660  ----
  1661  . at-limit
  1662  . at-limit
  1663  . at-limit
  1664  d:d valid
  1665  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 1)), (internal (dir, seek, step): (fwd, 1, 9), (rev, 0, 5)),
  1666  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 15, key-bytes 15, value-bytes 9, tombstoned: 0))
  1667  
  1668  iter seq=4
  1669  seek-lt-limit d c
  1670  prev-limit c
  1671  prev-limit b
  1672  prev-limit a
  1673  prev-limit a
  1674  next-limit b
  1675  ----
  1676  . at-limit
  1677  . at-limit
  1678  . at-limit
  1679  a:a valid
  1680  . exhausted
  1681  a:a valid
  1682  stats: (interface (dir, seek, step): (fwd, 0, 1), (rev, 1, 4)), (internal (dir, seek, step): (fwd, 1, 0), (rev, 1, 5)),
  1683  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 6, key-bytes 6, value-bytes 4, tombstoned: 0))
  1684  
  1685  # NB: Zero values are skipped by deletable merger.
  1686  define merger=deletable
  1687  a.MERGE.1:1
  1688  a.MERGE.2:2
  1689  a.MERGE.3:-1
  1690  a.MERGE.4:-2
  1691  b.MERGE.4:-3
  1692  b.MERGE.3:3
  1693  b.MERGE.2:2
  1694  b.MERGE.1:-2
  1695  ----
  1696  
  1697  iter seq=5
  1698  seek-ge a
  1699  next
  1700  next
  1701  prev
  1702  prev
  1703  ----
  1704  .
  1705  .
  1706  .
  1707  .
  1708  .
  1709  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 2)), (internal (dir, seek, step): (fwd, 1, 8), (rev, 1, 8)),
  1710  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 16, key-bytes 16, value-bytes 24, tombstoned: 0))
  1711  
  1712  iter seq=4
  1713  seek-ge a
  1714  next
  1715  next
  1716  prev
  1717  prev
  1718  ----
  1719  a:2
  1720  b:3
  1721  .
  1722  b:3
  1723  a:2
  1724  stats: (interface (dir, seek, step): (fwd, 1, 2), (rev, 0, 2)), (internal (dir, seek, step): (fwd, 1, 6), (rev, 1, 6)),
  1725  (internal-stats: (block-bytes: (total 0 B, cached 0 B)), (points: (count 16, key-bytes 16, value-bytes 24, tombstoned: 0))