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

MSAN/valgrind errors in temp_file_size_cb_func, main.tmp_space_usage fails

    XMLWordPrintable

Details

    • Bug
    • Status: Open (View Workflow)
    • Critical
    • Resolution: Unresolved
    • N/A
    • 13.0
    • Server
    • None

    Description

      https://buildbot.mariadb.org/#/builders/867/builds/9386/steps/6/logs/stdio

      bb-13.0-MDEV-25292-acor 291a9c28c

      main.tmp_space_usage                     w24 [ fail ]
              Test ended at 2026-03-23 08:09:53
      CURRENT_TEST: main.tmp_space_usage
      mysqltest: At line 121: query 'insert into t2 (a,v) select seq, repeat(char(64+mod(seq,32)),mod(seq,254)+1) from seq_1_to_3000' failed with wrong errno <Unknown> (2013): 'Lost connection to server during query', instead of <Unknown> (42)...
       
      ==82534==WARNING: MemorySanitizer: use-of-uninitialized-value
          #0 0x562eec13ee0d in temp_file_size_cb_func(tmp_file_tracking*, int) /home/buildbot/amd64-msan-clang-20/build/sql/mysqld.cc:3830:21
          #1 0x562eedf3f483 in tmp_file_track /home/buildbot/amd64-msan-clang-20/build/mysys/mf_iocache.c:87:19
          #2 0x562eedf3f483 in _my_b_cache_write /home/buildbot/amd64-msan-clang-20/build/mysys/mf_iocache.c:1606:7
          #3 0x562eedf389f0 in my_b_flush_io_cache /home/buildbot/amd64-msan-clang-20/build/mysys/mf_iocache.c:1823:18
          #4 0x562eedf39594 in _my_b_write /home/buildbot/amd64-msan-clang-20/build/mysys/mf_iocache.c:639:7
          #5 0x562eed23ffcc in Log_event_writer::write_internal(unsigned char const*, unsigned long) /home/buildbot/amd64-msan-clang-20/build/sql/log_event_server.cc:737:7
      

      The essential part of the failing test is this:

      --source include/have_sequence.inc
      --source include/have_innodb.inc
      --source include/have_binlog_format_row.inc
       
      SET @max_space = @@global.max_tmp_total_space_usage;
      SET GLOBAL max_tmp_total_space_usage = 768 * 1024;
       
      connect(c1, localhost, root,,);
      connection default;
      create table t1 (a int primary key, v varchar(256), c int default(0)) engine=innodb;
      create table t2 (a int primary key, v varchar(256), c int default(0)) engine=innodb;
      begin;
      insert into t1 (a,v) select seq, repeat(char(64+mod(seq,32)),mod(seq,254)+1) from seq_1_to_3000;
      connection c1;
      --error 42
      insert into t2 (a,v) select seq, repeat(char(64+mod(seq,32)),mod(seq,254)+1) from seq_1_to_3000;
       
      --connection default
      ROLLBACK;
      SET GLOBAL max_tmp_total_space_usage = @max_space;
      DROP TABLE t2, t1;
      

      ==811183==WARNING: MemorySanitizer: use-of-uninitialized-value
          #0 0x55d25a904c03 in temp_file_size_cb_func(tmp_file_tracking*, int) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/mysqld.cc:3829:11
          #1 0x55d25cbc3ffb in tmp_file_track /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/mysys/mf_iocache.c:87:19
          #2 0x55d25cbc3ffb in _my_b_cache_write /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/mysys/mf_iocache.c:1606:7
          #3 0x55d25cbbcb44 in my_b_flush_io_cache /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/mysys/mf_iocache.c:1823:18
          #4 0x55d25cbbd8fa in _my_b_write /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/mysys/mf_iocache.c:639:7
          #5 0x55d25bb8bf1d in Log_event_writer::write_internal(unsigned char const*, unsigned long) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/log_event_server.cc:737:7
          #6 0x55d25bbbbf53 in Log_event_writer::write_data(unsigned char const*, unsigned long) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/log_event_server.cc:844:3
          #7 0x55d25bbbbf53 in Log_event::write_data(Log_event_writer*, unsigned char const*, unsigned long) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/log_event.h:1552:20
          #8 0x55d25bbbbf53 in Rows_log_event::write_data_body_rows(Log_event_writer*, unsigned long, unsigned long) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/log_event_server.cc:5849:10
          #9 0x55d25bbbbf53 in Rows_log_event::write_data_body(Log_event_writer*) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/log_event_server.cc:5855:15
          #10 0x55d25bb85d72 in Log_event::write(Log_event_writer*) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/log_event.h:1564:5
          #11 0x55d25bb2e2b7 in Log_event_writer::write(Log_event*) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/log_event.h:5949:16
          #12 0x55d25bb2e2b7 in Event_log::flush_and_set_pending_rows_event(THD*, Rows_log_event*, binlog_cache_data*, bool) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/log.cc:8219:16
          #13 0x55d25bb2ef27 in Event_log::prepare_pending_rows_event(THD*, TABLE*, binlog_cache_data*, unsigned int, unsigned long, bool, Rows_event_factory) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/log.cc:8321:9
          #14 0x55d25abb00f9 in THD::binlog_write_row(TABLE*, Event_log*, binlog_cache_data*, bool, unsigned char const*) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_class.cc:7692:22
          #15 0x55d25b7086c4 in Write_rows_log_event::binlog_row_logging_function(THD*, TABLE*, Event_log*, binlog_cache_data*, bool, unsigned long, unsigned char const*, unsigned char const*) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/log_event.h:5212:17
          #16 0x55d25b6f44b9 in binlog_log_row_to_binlog(TABLE*, unsigned char const*, unsigned char const*, bool (*)(THD*, TABLE*, Event_log*, binlog_cache_data*, bool, unsigned long, unsigned char const*, unsigned char const*), bool) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/handler.cc:8015:10
          #17 0x55d25b6f44b9 in handler::binlog_log_row(unsigned char const*, unsigned char const*, bool (*)(THD*, TABLE*, Event_log*, binlog_cache_data*, bool, unsigned long, unsigned char const*, unsigned char const*)) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/handler.cc:8029:12
          #18 0x55d25b6f9db3 in handler::ha_write_row(unsigned char const*) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/handler.cc:8613:10
          #19 0x55d25ac11845 in Write_record::single_insert(unsigned long long*) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_insert.cc:2390:27
          #20 0x55d25ac0a20c in Write_record::write_record() /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_insert.cc:2432:10
          #21 0x55d25ac224db in select_insert::send_data(List<Item>&) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_insert.cc:4555:19
          #22 0x55d25ab927d8 in select_result_sink::send_data_with_check(List<Item>&, st_select_lex_unit*, unsigned long long) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_class.cc:3309:11
          #23 0x55d25ae3b6d1 in end_send(JOIN*, st_join_table*, bool) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_select.cc:25937:9
          #24 0x55d25aec07a0 in evaluate_join_record(JOIN*, st_join_table*, int) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_select.cc:24809:11
          #25 0x55d25add35be in sub_select(JOIN*, st_join_table*, bool) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_select.cc:24613:9
          #26 0x55d25ae4d32b in do_select(JOIN*, Procedure*) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_select.cc:24087:14
          #27 0x55d25ae4b313 in JOIN::exec_inner() /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_select.cc:5126:50
          #28 0x55d25ae492a1 in JOIN::exec() /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_select.cc:4914:8
          #29 0x55d25add4e1c in mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_select.cc:5440:21
          #30 0x55d25add483c in handle_select(THD*, LEX*, select_result*, unsigned long long) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_select.cc:637:10
          #31 0x55d25ad07027 in mysql_execute_command(THD*, bool) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_parse.cc:4697:16
          #32 0x55d25aceaf59 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_parse.cc:7937:18
          #33 0x55d25ace41dc in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_parse.cc:1896:7
          #34 0x55d25acebfbc in do_command(THD*, bool) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_parse.cc:1432:17
          #35 0x55d25b19c4cc in do_handle_one_connection(CONNECT*, bool) /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_connect.cc:1503:11
          #36 0x55d25b19bfa6 in handle_one_connection /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/sql_connect.cc:1415:5
          #37 0x55d25c0051a7 in pfs_spawn_thread /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/storage/perfschema/pfs.cc:2198:3
          #38 0x7f0acacee1c3 in start_thread nptl/pthread_create.c:442:8
          #39 0x7f0acad6e85b in clone3 misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
       
        Memory was marked as uninitialized
          #0 0x55d25a884d5d in __msan_allocated_memory (/share8t/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/mariadbd+0x97bd5d) (BuildId: 7736ddd69c096b2e16019b576c56ab520e2b6756)
          #1 0x55d25cc11bf4 in my_malloc /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/mysys/my_malloc.c:117:7
       
      SUMMARY: MemorySanitizer: use-of-uninitialized-value /data/bld/testing/bb-13.0-MDEV-25292-acor-msan/sql/mysqld.cc:3829:11 in temp_file_size_cb_func(tmp_file_tracking*, int)
      Exiting
      

      ==811251== Conditional jump or move depends on uninitialised value(s)
      ==811251==    at 0xC54122: temp_file_size_cb_func (mysqld.cc:3830)
      ==811251==    by 0x1E34DB8: tmp_file_track (mf_iocache.c:87)
      ==811251==    by 0x1E3856B: _my_b_cache_write (mf_iocache.c:1606)
      ==811251==    by 0x1E3913C: my_b_flush_io_cache (mf_iocache.c:1823)
      ==811251==    by 0x1E36688: _my_b_write (mf_iocache.c:639)
      ==811251==    by 0x1E3471A: my_b_write (my_sys.h:570)
      ==811251==    by 0x1E38AEE: my_b_safe_write (mf_iocache.c:1705)
      ==811251==    by 0x153C5B7: Log_event_writer::write_internal(unsigned char const*, unsigned long) (log_event_server.cc:737)
      ==811251==    by 0x153CCBF: Log_event_writer::write_data(unsigned char const*, unsigned long) (log_event_server.cc:844)
      ==811251==    by 0x1558F84: Log_event::write_data(Log_event_writer*, unsigned char const*, unsigned long) (log_event.h:1552)
      ==811251==    by 0x154E508: Rows_log_event::write_data_body_rows(Log_event_writer*, unsigned long, unsigned long) (log_event_server.cc:5849)
      ==811251==    by 0x154E551: Rows_log_event::write_data_body(Log_event_writer*) (log_event_server.cc:5855)
      ==811251==    by 0xD06AEC: Log_event::write(Log_event_writer*) (log_event.h:1564)
      ==811251==    by 0x151F367: Log_event_writer::write(Log_event*) (log_event.h:5949)
      ==811251==    by 0x1506FF9: Event_log::flush_and_set_pending_rows_event(THD*, Rows_log_event*, binlog_cache_data*, bool) (log.cc:8219)
      ==811251==    by 0x15074A7: Event_log::prepare_pending_rows_event(THD*, TABLE*, binlog_cache_data*, unsigned int, unsigned long, bool, Rows_event_factory) (log.cc:8321)
      ^ Found warnings in /share8t/bld/testing/bb-13.0-MDEV-25292-acor-valgrind/mysql-test/var/log/mysqld.1.err
      

      The failure started happening after the main atomic CREATE OR REPLACE commit:

      commit 4e2a46b90ea3e669158edb55bcfc602aaf2d38eb
      Author: Monty
      Date:   Fri Jan 3 14:34:21 2025 +0200
       
          MDEV-25292 Atomic CREATE OR REPLACE TABLE
      

      I'm not sure why the commit made seemingly unrelated changes, but there were indeed changes related to tmp space usage in this commit, so it doesn't appear to be a bisect mistake.

      Attachments

        Issue Links

          Activity

            People

              monty Michael Widenius
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              1 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.