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

ALTER TABLE ... FORCE harvests 1879: Upgrade index name failed,

    XMLWordPrintable

Details

    Description

      origin/bb-10.6-MDEV-13542 a8421f9011857b2653531093d0abf75510e16d7e 2022-05-25T13:42:59+03:00
      Per Marko: The problem is around fulltext indexes and not specific to the development tree used.
       
      Scenario:
      1. Start the server and load some initial data.
      2. Several sessions run a DDL/DML mix
      3. During 2. is ongoing the server gets intentional killed (SIGSEGV) 
      4. Restart attempt with success
      5. Check user defined tables 
           CHECK TABLE `test`.`table400_innodb_int_autoinc` EXTENDED.
           ANALYZE TABLE `test`.`table400_innodb_int_autoinc`.
           OPTIMIZE TABLE `test`.`table400_innodb_int_autoinc`.
            REPAIR TABLE `test`.`table400_innodb_int_autoinc` EXTENDED.
            ALTER TABLE `test`.`table400_innodb_int_autoinc` FORCE.
            The last command  harvests 1879:
             Upgrade index name failed, please use create index(alter table)
            algorithm copy to rebuild index.
      6. RQG reacts with killing the DB server.
       
      RQG
      ====
      # git clone https://github.com/mleich1/rqg --branch experimental RQG
      #
      # GIT_SHOW: HEAD -> experimental, origin/experimental cde044cdbbf79770db78ee95394eb31fd65a1b6f 2022-05-17T16:38:21+02:00
      # rqg.pl  : Version 4.0.5 (2022-04)
      #
      # $RQG_HOME/rqg.pl \
      # --gendata=conf/engines/innodb/full_text_search.zz \
      # --max_gd_duration=1200 \
      # --short_column_names \
      # --grammar=conf/engines/innodb/full_text_search.yy \
      # --redefine=conf/mariadb/alter_table.yy \
      # --redefine=conf/mariadb/instant_add.yy \
      # --redefine=conf/mariadb/modules/alter_table_columns.yy \
      # --redefine=conf/mariadb/bulk_insert.yy \
      # --redefine=conf/mariadb/modules/foreign_keys.yy \
      # --redefine=conf/mariadb/modules/locks.yy \
      # --redefine=conf/mariadb/modules/sql_mode.yy \
      # --redefine=conf/mariadb/redefine_temporary_tables.yy \
      # --redefine=conf/mariadb/versioning.yy \
      # --redefine=conf/mariadb/sequences.yy \
      # --mysqld=--innodb_file_per_table=0 \
      # --mysqld=--loose-innodb_lock_schedule_algorithm=fcfs \
      # --mysqld=--loose-idle_write_transaction_timeout=0 \
      # --mysqld=--loose-idle_transaction_timeout=0 \
      # --mysqld=--loose-idle_readonly_transaction_timeout=0 \
      # --mysqld=--connect_timeout=60 \
      # --mysqld=--interactive_timeout=28800 \
      # --mysqld=--slave_net_timeout=60 \
      # --mysqld=--net_read_timeout=30 \
      # --mysqld=--net_write_timeout=60 \
      # --mysqld=--loose-table_lock_wait_timeout=50 \
      # --mysqld=--wait_timeout=28800 \
      # --mysqld=--lock-wait-timeout=86400 \
      # --mysqld=--innodb-lock-wait-timeout=50 \
      # --no-mask \
      # --queries=10000000 \
      # --seed=random \
      # --reporters=Backtrace \
      # --reporters=ErrorLog \
      # --reporters=Deadlock1 \
      # --validators=None \
      # --mysqld=--log_output=none \
      # --mysqld=--log_bin_trust_function_creators=1 \
      # --mysqld=--loose-debug_assert_on_not_freed_memory=0 \
      # --engine=InnoDB \
      # --restart_timeout=360 \
      # --mysqld=--plugin-load-add=file_key_management.so \
      # --mysqld=--loose-file-key-management-filename=$RQG_HOME/conf/mariadb/encryption_keys.txt \
      # --mysqld=--plugin-load-add=provider_lzo.so \
      # --mysqld=--plugin-load-add=provider_bzip2.so \
      # --mysqld=--plugin-load-add=provider_lzma.so \
      # --mysqld=--plugin-load-add=provider_snappy.so \
      # --mysqld=--plugin-load-add=provider_lz4.so \
      # --duration=300 \
      # --mysqld=--loose-innodb_fatal_semaphore_wait_threshold=300 \
      # --mysqld=--loose-innodb_read_only_compressed=OFF \
      # --reporters=CrashRecovery1 \
      # --duration=100 \
      # --mysqld=--innodb_stats_persistent=on \
      # --mysqld=--innodb_adaptive_hash_index=off \
      # --mysqld=--log-bin \
      # --mysqld=--sync-binlog=1 \
      # --mysqld=--loose-innodb_evict_tables_on_commit_debug=on \
      # --mysqld=--loose-max-statement-time=30 \
      # --threads=9 \
      # --mysqld=--innodb-use-native-aio=0 \
      # --mysqld=--loose-gdb \
      # --mysqld=--loose-debug-gdb \
      # --rr=Extended \
      # --rr_options=--chaos --wait \
      # --mysqld=--innodb_rollback_on_timeout=OFF \
      # --mysqld=--innodb_page_size=16K \
      # --mysqld=--innodb-buffer-pool-size=256M \
      # --no_mask \
      # <local settings>
       
      pluto:/data/results/1653478004/TBR-1513/dev/shm/rqg/1653478004/266/1/rr
      Error pattern for RQG
      [ 'TBR-1513', 'INFO: Reporter \'CrashRecovery1\': Attempting database recovery using the server.+INFO: Reporter \'CrashRecovery1\': Executing ALTER TABLE .{1,70} FORCE.+ERROR: ALTER TABLE .{1,70} FORCE harvested 1879: Upgrade index name failed.+\[Note\] InnoDB: Starting crash recovery from checkpoint LSN.+\[Note\] .{1,200}mysqld: ready for connections.+RESULT: The RQG run ended with status STATUS_RECOVERY_FAILURE' ],
       
      
      

      Attachments

        Issue Links

          Activity

            People

              thiru Thirunarayanan Balathandayuthapani
              mleich Matthias Leich
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

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