Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-29386

Index 'col_text_g' contains 4 entries, should be 2

    XMLWordPrintable

Details

    Description

      origin/10.6 8ff10969996a5349e906fab44b45c6e3ec53eea0 2022-08-24T17:06:57+03:00
       
      I have two concurrent sessions.
      thread1:
          CREATE TABLE IF NOT EXISTS t3 ( col1 INT, col_text TEXT , col_text_g TEXT GENERATED ALWAYS AS (SUBSTR(col_text,1,499)) ) ENGINE = InnoDB ROW_FORMAT = Compact |
          ALTER TABLE t3 ADD KEY ( col_text_g(9) , col_text(9) ) ;
      thread2:
          CHECK TABLE t3 |
          DELETE FROM t3 WHERE col1 = 8 OR col1 IS NULL ; INSERT INTO t3 (col1, col_text) VALUES (8,''), (8,'') ;
       
      After some runtime
      CHECK TABLE t3 harvests
         Warning InnoDB: Index 'col_text_g' contains 4 entries, should be 2.
      and RQG reacts with killing the server.
       
      pluto:/data/results/1661424131/TBR-36$ _RR_TRACE_DIR=./1/rr/ rr replay
       
      RQG
      ====
      # git clone https://github.com/mleich1/rqg --branch experimental RQG
      #
      # GIT_SHOW: HEAD -> experimental, origin/experimental 32e1b1a96b072f6a71c564d3e2d50d9cf2fb3561 2022-08-24T17:04:19+02:00
      # rqg.pl  : Version 4.0.6 (2022-05)
      #
      # $RQG_HOME/rqg.pl \
      # --duration=300 \
      # --queries=10000000 \
      # --no_mask \
      # --seed=random \
      # --rpl_mode=none \
      # --gendata_sql=conf/mariadb/table_stress.sql \
      # --max_gd_duration=1200 \
      # --gendata=conf/mariadb/table_stress.zz \
      # --engine=InnoDB \
      # --mysqld=--loose-idle_write_transaction_timeout=0 \
      # --mysqld=--wait_timeout=28800 \
      # --mysqld=--loose-idle_transaction_timeout=0 \
      # --mysqld=--log-output=none \
      # --mysqld=--interactive_timeout=28800 \
      # --mysqld=--sync-binlog=1 \
      # --mysqld=--lock-wait-timeout=86400 \
      # --mysqld=--loose-innodb_fatal_semaphore_wait_threshold=300 \
      # --mysqld=--net_read_timeout=30 \
      # --mysqld=--connect_timeout=60 \
      # --mysqld=--plugin-load-add=file_key_management.so \
      # --mysqld=--loose-table_lock_wait_timeout=50 \
      # --mysqld=--innodb-buffer-pool-size=5M \
      # --mysqld=--net_write_timeout=60 \
      # --mysqld=--innodb-lock-wait-timeout=50 \
      # --mysqld=--loose_innodb_lock_schedule_algorithm=fcfs \
      # --mysqld=--log_bin_trust_function_creators=1 \
      # --mysqld=--loose-max-statement-time=30 \
      # --mysqld=--log-bin \
      # --mysqld=--loose-plugin-load-add=provider_lz4.so \
      # --mysqld=--file-key-management-filename=$RQG_HOME/conf/mariadb/encryption_keys.txt \
      # --mysqld=--innodb_page_size=4K \
      # --mysqld=--loose-idle_readonly_transaction_timeout=0 \
      # --mysqld=--loose-innodb_read_only_compressed=OFF \
      # --mysqld=--loose-debug_assert_on_not_freed_memory=0 \
      # --mysqld=--slave_net_timeout=60 \
      # --reporters=Backtrace,Deadlock1,ErrorLog \
      # --validators=None \
      # --grammar=TBR-36.yy \
      # --threads=2 \
      # --batch \
      # --script_debug=_nix_ \
      # --rr=Extended \
      # --rr_options=--chaos --wait  \
      # <local settings>
       
      The already simplified tests replays also frequent the error patterns
      -  [ 'TBR-915-MDEV-25004', 'mysqld: .{1,200}row0upd.cc:.{1,20} dberr_t row_upd_sec_index_entry\(upd_node_t\*, que_thr_t\*\): Assertion .0. failed' ],   
          but in the current case system versioning is not involved.
      - [ 'TBR-915A', '\[ERROR\] InnoDB: Record in index .{1,70} of table .{1,150} was not found on update: TUPLE .+mysqld: .{1,200}row0upd.cc:.{1,20} dberr_t row_upd_sec_index_entry\(upd_node_t\*, que_thr_t\*\): Assertion .0. failed' ],
      - [ 'TBR-835', '\[ERROR\] InnoDB: Record in index `(?!FTS_DOC_ID_INDEX).{0,200}` of table .{1,100} was not found on update: ' ],
      I am aware that the patterns are to some extend redundant.
      
      

      Attachments

        Activity

          People

            nikitamalyavin Nikita Malyavin
            mleich Matthias Leich
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.