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

LeakSanitizer errors in ft_linearize upon adding FULLTEXT key

    XMLWordPrintable

Details

    Description

      The test case is non-deterministic, run with --repeat=N. It usually fails for me within several attempts, but it can vary on different machines and builds. If it doesn't fail for you, also try to change the number of rows inserted into the table, it can affect the outcome.

      --source include/have_sequence.inc
       
      CREATE TABLE t (f varchar(255)) ENGINE=MyISAM;
      INSERT INTO t SELECT 'x' FROM seq_1_to_512;
       
      --connect (con1,localhost,root,,)
      --send
        ALTER TABLE t ADD FULLTEXT INDEX ft(f);
       
      --connection default
      --source include/restart_mysqld.inc
       
      # Cleanup
      DROP TABLE t;
      

      10.4 18990f00

      Warning: Memory not freed: 65504
       
      =================================================================
      ==1974204==ERROR: LeakSanitizer: detected memory leaks
       
      Direct leak of 65504 byte(s) in 1 object(s) allocated from:
          #0 0x7f26aecb89cf in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:69
          #1 0x55c932cd7c50 in my_malloc /data/src/10.4/mysys/my_malloc.c:101
          #2 0x55c932cb4676 in alloc_root /data/src/10.4/mysys/my_alloc.c:258
          #3 0x55c932b2c880 in ft_linearize /data/src/10.4/storage/myisam/ft_parser.c:54
          #4 0x55c932c5d983 in _mi_ft_parserecord /data/src/10.4/storage/myisam/ft_update.c:131
          #5 0x55c932b6a755 in sort_ft_key_read /data/src/10.4/storage/myisam/mi_check.c:3176
          #6 0x55c932c459f8 in find_all_keys /data/src/10.4/storage/myisam/sort.c:310
          #7 0x55c932c44cea in _create_index_by_sort /data/src/10.4/storage/myisam/sort.c:226
          #8 0x55c932b6369b in mi_repair_by_sort /data/src/10.4/storage/myisam/mi_check.c:2407
          #9 0x55c932b3dc6b in ha_myisam::repair(THD*, st_handler_check_param&, bool) /data/src/10.4/storage/myisam/ha_myisam.cc:1344
          #10 0x55c932b4076d in ha_myisam::enable_indexes(unsigned int) /data/src/10.4/storage/myisam/ha_myisam.cc:1683
          #11 0x55c932b41dc1 in ha_myisam::end_bulk_insert() /data/src/10.4/storage/myisam/ha_myisam.cc:1878
          #12 0x55c9318f03d0 in handler::ha_end_bulk_insert() /data/src/10.4/sql/handler.cc:4491
          #13 0x55c9313b5ac6 in copy_data_between_tables /data/src/10.4/sql/sql_table.cc:11199
          #14 0x55c9313b0335 in mysql_alter_table(THD*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, HA_CREATE_INFO*, TABLE_LIST*, Recreate_info*, Alter_info*, unsigned int, st_order*, bool) /data/src/10.4/sql/sql_table.cc:10549
          #15 0x55c9315363c3 in Sql_cmd_alter_table::execute(THD*) /data/src/10.4/sql/sql_alter.cc:531
          #16 0x55c93113f83e in mysql_execute_command(THD*) /data/src/10.4/sql/sql_parse.cc:6218
          #17 0x55c93114b0b8 in mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) /data/src/10.4/sql/sql_parse.cc:8012
          #18 0x55c931121347 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) /data/src/10.4/sql/sql_parse.cc:1857
          #19 0x55c93111deb6 in do_command(THD*) /data/src/10.4/sql/sql_parse.cc:1378
          #20 0x55c93151d74f in do_handle_one_connection(CONNECT*) /data/src/10.4/sql/sql_connect.cc:1420
          #21 0x55c93151d066 in handle_one_connection /data/src/10.4/sql/sql_connect.cc:1324
          #22 0x55c93218e1cf in pfs_spawn_thread /data/src/10.4/storage/perfschema/pfs.cc:1869
          #23 0x7f26ae5c8fd3 in start_thread nptl/pthread_create.c:442
       
      SUMMARY: AddressSanitizer: 65504 byte(s) leaked in 1 allocation(s).
      

      There is also a similar error with Aria observed in concurrent tests, although it's much less frequent, and I couldn't reproduce it by changing MyISAM to Aria in the test case above:

      10.5 cf816263

      Warning: Memory not freed: 65520
      ==11391==ERROR: LeakSanitizer: detected memory leaks
          #0 0x7f53c5020808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144
          #1 0x5616fde709f4 in my_malloc /home/vsts/src/mysys/my_malloc.c:91
          #2 0x5616fde5284c in alloc_root /home/vsts/src/mysys/my_alloc.c:256
          #3 0x5616fd0073a2 in maria_ft_linearize /home/vsts/src/storage/maria/ma_ft_parser.c:57
          #4 0x5616fd19cf67 in _ma_ft_parserecord /home/vsts/src/storage/maria/ma_ft_update.c:133
          #5 0x5616fd189f1b in sort_maria_ft_key_read /home/vsts/src/storage/maria/ma_check.c:4852
          #6 0x5616fd1a1897 in find_all_keys /home/vsts/src/storage/maria/ma_sort.c:344
          #7 0x5616fd1a0a26 in _ma_create_index_by_sort /home/vsts/src/storage/maria/ma_sort.c:237
          #8 0x5616fd182f4b in maria_repair_by_sort /home/vsts/src/storage/maria/ma_check.c:3995
          #9 0x5616fd017b0a in ha_maria::repair(THD*, st_handler_check_param*, bool) /home/vsts/src/storage/maria/ha_maria.cc:1711
          #10 0x5616fd019c6f in ha_maria::enable_indexes(unsigned int) /home/vsts/src/storage/maria/ha_maria.cc:2075
          #11 0x5616fd01b6b8 in ha_maria::end_bulk_insert() /home/vsts/src/storage/maria/ha_maria.cc:2313
          #12 0x5616fcaaca72 in handler::ha_end_bulk_insert() /home/vsts/src/sql/handler.cc:4738
          #13 0x5616fc5779ac in copy_data_between_tables /home/vsts/src/sql/sql_table.cc:11760
          #14 0x5616fc571fa1 in mysql_alter_table(THD*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, HA_CREATE_INFO*, TABLE_LIST*, Recreate_info*, Alter_info*, unsigned int, st_order*, bool, bool) /home/vsts/src/sql/sql_table.cc:11033
          #15 0x5616fc6f0a0f in Sql_cmd_alter_table::execute(THD*) /home/vsts/src/sql/sql_alter.cc:598
          #16 0x5616fc2f766f in mysql_execute_command(THD*) /home/vsts/src/sql/sql_parse.cc:6085
          #17 0x5616fc303b18 in mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) /home/vsts/src/sql/sql_parse.cc:8120
          #18 0x5616fc2db803 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) /home/vsts/src/sql/sql_parse.cc:1891
          #19 0x5616fc2d89b1 in do_command(THD*) /home/vsts/src/sql/sql_parse.cc:1375
          #20 0x5616fc6d70df in do_handle_one_connection(CONNECT*, bool) /home/vsts/src/sql/sql_connect.cc:1416
          #21 0x5616fc6d6a6e in handle_one_connection /home/vsts/src/sql/sql_connect.cc:1318
          #22 0x5616fd24d4ed in pfs_spawn_thread /home/vsts/src/storage/perfschema/pfs.cc:2201
          #23 0x7f53c49fe608 in start_thread /build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:477
      

      Attachments

        Activity

          People

            sanja Oleksandr Byelkin
            elenst Elena Stepanova
            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.