github.com/cockroachdb/pebble@v0.0.0-20231214172447-ab4952c5f87b/replay/testdata/collect/clean_before_copy (about)

     1  # This tests a race between Clean and the workload collector. It creates an
     2  # sstable during a flush, and then immediately Cleans the file. The workload
     3  # collector's Cleaner must delay the cleaning of the file until it's been copied
     4  # and then delete it.
     5  
     6  start
     7  ----
     8  
     9  create-manifest filenum=000001
    10  ----
    11  
    12  flush
    13  000002
    14  ----
    15  created src/000002.sst
    16  [JOB 0] flushed 1 memtable (100B) to L0 [000002] (10KB), in 0.1s (0.1s total), output rate 100KB/s
    17  
    18  clean
    19  src/000002.sst
    20  ----
    21  
    22  wait
    23  ----
    24  dst:
    25    000002.sst
    26    MANIFEST-000001
    27  
    28  # The file should now be both removed from src/ and a copy should be present in
    29  # dst/.
    30  
    31  ls src dst
    32  ----
    33  src:
    34    MANIFEST-000001
    35  dst:
    36    000002.sst
    37    MANIFEST-000001
    38  
    39  stop
    40  ----