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

MariaBackup failure:Assertion `!(size & 4095)' failed.

    XMLWordPrintable

Details

    • Can result in hang or crash

    Description

      This issue was found during incremental backup

      origin/10.11 ebae058ae3d63d8633db48dd6231d37a7f552b4c

      mariadb-backup: /data/Server/10.11_new/storage/innobase/os/os0file.cc:1558: bool os_file_set_size(const char*, os_file_t, os_offset_t, bool): Assertion `!(size & 4095)' failed.
      

      Stacktrace

      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
      #1  __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
      #2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
      #3  0x000071f3b424527e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
      #4  0x000071f3b42288ff in __GI_abort () at ./stdlib/abort.c:79
      #5  0x000071f3b422881b in __assert_fail_base (fmt=0x71f3b43d01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x60f89deeb307 "!(size & 4095)", 
          file=file@entry=0x60f89de35eb8 "/data/Server/10.11_new/storage/innobase/os/os0file.cc", line=line@entry=1558, 
          function=function@entry=0x60f89de35720 "bool os_file_set_size(const char*, os_file_t, os_offset_t, bool)") at ./assert/assert.c:96
      #6  0x000071f3b423b517 in __assert_fail (assertion=0x60f89deeb307 "!(size & 4095)", file=0x60f89de35eb8 "/data/Server/10.11_new/storage/innobase/os/os0file.cc", 
          line=1558, function=0x60f89de35720 "bool os_file_set_size(const char*, os_file_t, os_offset_t, bool)") at ./assert/assert.c:105
      #7  0x000060f89d9745a7 in os_file_set_size (name=name@entry=0x7ffee72e4620 "./test/t7_c.ibd", file=file@entry=7, size=size@entry=14336, is_sparse=is_sparse@entry=false)
          at /data/Server/10.11_new/storage/innobase/os/os0file.cc:1558
      #8  0x000060f89d1f5fea in xtrabackup_apply_delta (dirname=<optimized out>, dbname=<optimized out>, filename=<optimized out>)
          at /data/Server/10.11_new/extra/mariabackup/xtrabackup.cc:6302
      #9  0x000060f89d1f6a52 in xb_process_datadir (path=0x60f89e892860 <xtrabackup_real_incremental_dir> "/data/repro_crash/backup_1/", 
          suffix=suffix@entry=0x60f89dea9ecc ".delta", func=func@entry=0x60f89d1f5a53 <xtrabackup_apply_delta(char const*, char const*, char const*, void*)>, 
          func_arg=func_arg@entry=0x0) at /data/Server/10.11_new/extra/mariabackup/xtrabackup.cc:6603
      #10 0x000060f89d1f6b8a in xtrabackup_apply_deltas () at /data/Server/10.11_new/extra/mariabackup/xtrabackup.cc:6639
      #11 0x000060f89d1fd6b4 in xtrabackup_prepare_func (argv=argv@entry=0x60f8d9e29630) at /data/Server/10.11_new/extra/mariabackup/xtrabackup.cc:6884
      #12 0x000060f89d201935 in main_low (argv=0x60f8d9e29630) at /data/Server/10.11_new/extra/mariabackup/xtrabackup.cc:7884
      #13 0x000060f89d201bab in main (argc=<optimized out>, argv=<optimized out>) at /data/Server/10.11_new/extra/mariabackup/xtrabackup.cc:7657
       
      (rr) frame 7
      #7  0x000060f89d9745a7 in os_file_set_size (name=name@entry=0x7ffee72e4620 "./test/t7_c.ibd", file=file@entry=7, size=size@entry=14336, is_sparse=is_sparse@entry=false)
          at /data/Server/10.11_new/storage/innobase/os/os0file.cc:1558
      1558		ut_ad(!(size & 4095));
      (rr) info args
      name = 0x7ffee72e4620 "./test/t7_c.ibd"
      file = 7
      size = 14336
      is_sparse = false
      (rr) info locals
      __PRETTY_FUNCTION__ = "bool os_file_set_size(const char*, os_file_t, os_offset_t, bool)"
      err = <optimized out>
      current_size = <optimized out>
      buf_size = <optimized out>
      buf = <optimized out>
      

      RQG startup options

      # $RQG_HOME/rqg.pl \
      # --gendata=conf/mariadb/table_stress.zz \
      # --gendata_sql=conf/mariadb/table_stress.sql \
      # --grammar=conf/mariadb/table_stress_innodb_fk_dml.yy \
      # --reporters=MariabackupIncremental_linux \
      # --mysqld=--loose-innodb-log-file-size=300M \
      # --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 \
      # --no_mask \
      # --queries=10000000 \
      # --seed=random \
      # --reporters=None \
      # --reporters=ErrorLog \
      # --reporters=Deadlock \
      # --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=240 \
      # --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 \
      # --mysqld=--loose-innodb_compression_level=1 \
      # --duration=300 \
      # --mysqld=--loose-innodb_fatal_semaphore_wait_threshold=300 \
      # --mysqld=--lock-wait-timeout=15 \
      # --mysqld=--innodb-lock-wait-timeout=10 \
      # --mysqld=--loose-innodb_fast_shutdown=1 \
      # --mysqld=--sql_mode=traditional \
      # --mysqld=--innodb_file_per_table=1 \
      # --mysqld=--loose-innodb_read_only_compressed=OFF \
      # --mysqld=--innodb_stats_persistent=on \
      # --mysqld=--innodb_adaptive_hash_index=on \
      # --mysqld=--innodb_random_read_ahead=OFF \
      # --mysqld=--loose-innodb_evict_tables_on_commit_debug=off \
      # --threads=6 \
      # --rr=Extended \
      # --rr_options=--chaos --wait \
      # --mysqld=--innodb_undo_log_truncate=OFF \
      # --mysqld=--innodb_undo_tablespaces=3 \
      # --mysqld=--innodb_rollback_on_timeout=OFF \
      # --mysqld=--innodb_page_size=4K \
      # --mysqld=--innodb-buffer-pool-size=6M \
      # --vardir_type=fast \
      # --no_mask \
      # --batch \
      # --basedir1=/Server_bin/10.11_new_debug_Og \
      # --basedir2=/Server_bin/10.11_new_debug_Og \
      # --script_debug=_nix_ \
      # --major_runid=1773905983 \
      # --minor_runid=94
      #--------
       

      RR trace present on pluto:-
      rr replay /data/repro_crash/rr_trace

      Log file path :-
      pluto:-
      /data/results/1773905983/incremental_backup

      Attachments

        Activity

          People

            thiru Thirunarayanan Balathandayuthapani
            saahil Saahil Alam
            Votes:
            0 Vote for this issue
            Watchers:
            2 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.