4 Replies Latest reply on May 8, 2014 1:40 PM by userBDBDMS-Oracle

    Stress-testing CDB as used by RPM causes a crash

    982876

      (Re-openning this https://community.oracle.com/message/10776786; archived as I was way too slow to respond.)

       

      Summary:

       

      1.) RPM in RHEL corrupts its database when used extensively

      2.) I've been able to craft a reproducer for the issue.

      3.) I can reliably reproduce the problem with all versions I used (including latest db-6.0.20)

      4.) Cindy Zeng was not able to reproduce the problem, the reproducer does not crash for her

       

      My reproducer is available here: http://v3.sk/~lkundrak/bdb-crash/

      The run on RHEL 7 Beta on x86_64:

       

      bdb-crash♥ make CFLAGS="-I/usr/local/BerkeleyDB.6.0/include" LDFLAGS="-L/usr/local/BerkeleyDB.6.0/lib -Wl,-rpath=/usr/local/BerkeleyDB.6.0/lib"
      cc -I/usr/local/BerkeleyDB.6.0/include -c -o reader.o -DREADERS test.c
      cc -L/usr/local/BerkeleyDB.6.0/lib -Wl,-rpath=/usr/local/BerkeleyDB.6.0/lib -ldb -lpthread  reader.o   -o reader
      cc -I/usr/local/BerkeleyDB.6.0/include -c -o writer.o -DWRITER test.c
      cc -L/usr/local/BerkeleyDB.6.0/lib -Wl,-rpath=/usr/local/BerkeleyDB.6.0/lib -ldb -lpthread  writer.o   -o writer
      bdb-crash♥ sh test.sh
      Mon Feb 10 14:35:21 CET 2014
      BDB0113 Thread/process 30877/30877 failed: BDB1507 Thread died in Berkeley DB library
      test.c:53: BDB0087 DB_RUNRECOVERY: Fatal error, run database recoveryReader died
      test.sh: line 12: 30871 Terminated              ( while ./writer; do
          :;
      done; echo 'Writer died' )
      Mon Feb 10 14:35:21 CET 2014
      bdb-crash♥ sh test.sh
      Mon Feb 10 14:35:23 CET 2014
      test.c:53: BDB0087 DB_RUNRECOVERY: Fatal error, run database recoveryReader died
      test.sh: line 12: 30900 Terminated              ( while ./writer; do
          :;
      done; echo 'Writer died' )
      Mon Feb 10 14:35:28 CET 2014
      bdb-crash♥