Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-9459

Fix tiered_abort file name verification error

      Discovered while testing a workaround fix for WT-7833 and removing the flush_lock from tiered_abort.  So this may need WT-7833 to be merged before this bug shows itself.

      On verifying the directory after failure, tiered_abort looks for unexpected files left around after the forced crash.  The point of failure looks like this.  Sometimes the file name is "collection-00000000x.wtobj" rather than "shadow-....".

       Program terminated with signal SIGABRT, Aborted.
      #0  0x00007fa68a26ef47 in raise () from /lib/x86_64-linux-gnu/libc.so.6
      [Current thread is 1 (Thread 0x7fa68afa3340 (LWP 6530))]
      (gdb) up
      #4  0x00005614c53a9469 in verify_tiered (session=0x5614c70cedb0)
          at /home/ubuntu/wt/git/wt-7833-concurrent-tiered-writers/test/csuite/tiered_abort/main.c:610
      610                         testutil_assert(
      (gdb) list
      605                      * Logged tables, i.e. "oplog" or "local" may be unable to remove the last object
      606                      * from before the restart due to recovery applying log records. So if we get a stat
      607                      * return that indicates the file exists, verify it is one of those tables.
      608                      */
      609                     if (i == last - 1 && ret == 0)
      610                         testutil_assert(
      611                           WT_PREFIX_MATCH(name, uri_local) || WT_PREFIX_MATCH(name, uri_oplog));
      612                     else
      613                         testutil_assert(ret != 0);
      614                     /* Verify earlier objects exist in the bucket directory. */
      (gdb) p name
      $1 = 0x5614c7f30d40 "shadow-0000000009.wtobj"

            sue.loverso@mongodb.com Susan LoVerso
            donald.anderson@mongodb.com Donald Anderson
            0 Vote for this issue
            2 Start watching this issue