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

Page format error

    • Type: Icon: Task Task
    • Resolution: Done
    • WT2.2
    • Affects Version/s: None
    • Component/s: None

      When running a workload via the MySQL API, I'm encountering the following:

      [1398992702:951372][8937:00078e1cee7f0000], file:_iibench.purchases_index_index0000.wt, cursor.insert: encountered an illegal file format or internal value
      [1398992702:951404][8937:00078e1cee7f0000], file:_iibench.purchases_index_index0000.wt, cursor.insert: the WiredTiger library cannot continue; the process must exit and restart
      

      Enabling diagnostic generates some more information:

      [1398995034:483789][18962:009717409c7f0000], file:_iibench.purchases_index_index0000.wt, cursor.insert: cell 2 on page at [evict split] is the first of two adjacent values                         
      [1398995034:483820][18962:009717409c7f0000], file:_iibench.purchases_index_index0000.wt, cursor.insert: ../src/btree/rec_write.c, 2520: __wt_verify_dsk_image( session, "[evict split]", buf->data, buf->size) == 0
      

      The workload has logging turned on, is doing checkpoints and has managed to do a fair amount of work:

      $ ls -l /ssd1/scratch/wiredtiger/mysql_data/
      total 3281808
      -rw-rw----. 1 wiredtiger wiredtiger    9241088 May  1 21:43 _iibench.purchases_index_index0000.wt
      -rw-rw----. 1 wiredtiger wiredtiger        512 May  1 21:43 _iibench.purchases_index_index0001-000001.lsm
      -rw-rw----. 1 wiredtiger wiredtiger        512 May  1 21:43 _iibench.purchases_index_index0002-000001.lsm
      -rw-rw----. 1 wiredtiger wiredtiger        512 May  1 21:43 _iibench.purchases_index_index0003-000001.lsm
      -rw-rw----. 1 wiredtiger wiredtiger        512 May  1 21:43 _metadata.wt
      -rw-rw----. 1 wiredtiger wiredtiger         46 May  1 21:42 WiredTiger
      -rw-rw----. 1 wiredtiger wiredtiger   46673792 May  1 21:43 WiredTigerLog.0000000003
      -rw-rw----. 1 wiredtiger wiredtiger        759 May  1 21:43 WiredTiger.turtle
      -rw-rw----. 1 wiredtiger wiredtiger      40960 May  1 21:43 WiredTiger.wt
      

      In order to reproduce, I start MySQL with the following command:

      rm -rf $MYSQL_DATA/* && LD_PRELOAD=/usr/lib64/libjemalloc.so ./scripts/mysql_install_db --user='wiredtiger' --defaults-file=`pwd`/../mysql-install/my_sysbench.cnf --skip-random-passwords && rm -f mysql.log && env LD_PRELOAD=/usr/lib64/libjemalloc.so $MYSQL_DIR/mysql-install/bin/mysqld --defaults-file=$MYSQL_DIR/mysql-install/my_sysbench.cnf --log-error=$MYSQL_DIR/mysql-install/mysql.log
      

      Then execute the following sequence of commands (in another shell):

      $ (cd $MYSQL_DIR/mysql-install && echo "CREATE DATABASE iibench;" | $MYSQL_DIR/mysql-install/bin/mysql --defaults-file=$MYSQL_DIR/mysql-install/my_sysbench.cnf --user='root' --socket=$MYSQL_DATA/mysql.sock)
      $ python ./iibench.py --db_name=iibench --db_user=root --db_socket=$MYSQL_DATA/mysql.sock --engine=WIREDTIGER --setup
      $ python ./iibench.py --db_name=iibench --db_user=root --db_socket=$MYSQL_DATA/mysql.sock --engine=WIREDTIGER --max_rows=50000000
      

      I'm using WiredTiger revision: dbb19ff685e4abc9b8fb661920ded503204ddc9f

      I'll try to isolate when the error was introduced.

            Assignee:
            keith.bostic@mongodb.com Keith Bostic (Inactive)
            Reporter:
            alexander.gorrod@mongodb.com Alexander Gorrod
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: