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

Cursor search failure during database recovery full scan in random_directio test

    • Type: Icon: Bug Bug
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Storage Engines 2018-10-22

      Cursor search failed in random_directio test while doing full scan check of the database post recovery run, in wiredtiger-valgrind job on 'margay'.  

      FAIL: random_directio/smoke.sh
      ==============================
      
      CONFIG: ./test_random_directio -t 5 -m none -T 5
      Parent: Create 5 threads; sleep 5 seconds
      Create 5 writer threads
      Spawned 5 writer threads
      CONFIG: ./test_random_directio -t 5 -m none -T 5
      Parent: Create 5 threads; sleep 5 seconds
      Beginning cycle 1/5
      Suspend child
      Check DB
      Copy database home directory using direct I/O to run recovery,
      along with a saved 'pre-recovery' copy.
      Open database, run recovery and verify content
      starting full scan at 0
      test_random_directio: FAILED: check_db/907: cursor->search(cursor): WT_NOTFOUND: item not found
      process aborting 

      The failure was hit under below code context in test/csuite/random_directio/main.c:

      check_db()
      {
          ...
              printf("starting full scan at %" PRIu64 "\n", id);
              gen_kv(keybuf, kvsize, id, 0, large_arr[0], true);
              cursor->set_key(cursor, keybuf);
              testutil_check(cursor->search(cursor));   // failed here
              th = 0;
          ...
      } 

       

            Assignee:
            backlog-server-execution [DO NOT USE] Backlog - Storage Execution Team
            Reporter:
            luke.chen@mongodb.com Luke Chen
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: