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

main.group_min_max fails in buildbot with valgrind

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 10.1
    • Fix Version/s: 10.1.4
    • Component/s: Optimizer, Tests
    • Labels:
      None

      Description

      http://buildbot.askmonty.org/buildbot/builders/work-amd64-valgrind/builds/7010/steps/test/logs/stdio

      main.group_min_max                       w1 [ fail ]  Found warnings/errors in server log file!
              Test ended at 2015-04-04 07:38:32
      line
      ==25800== Thread 5:
      ==25800== Invalid read of size 4
      ==25800==    at 0x7B3383: Field_newdate::cmp(unsigned char const*, unsigned char const*) (field.cc:6000)
      ==25800==    by 0x8B38A9: key_cmp(st_key_part_info*, unsigned char const*, unsigned int) (key.cc:526)
      ==25800==    by 0x9014B6: QUICK_GROUP_MIN_MAX_SELECT::next_max_in_range() (opt_range.cc:14934)
      ==25800==    by 0x901907: QUICK_GROUP_MIN_MAX_SELECT::next_max() (opt_range.cc:14575)
      ==25800==    by 0x907671: QUICK_GROUP_MIN_MAX_SELECT::get_next() (opt_range.cc:14433)
      ==25800==    by 0x927808: rr_quick(READ_RECORD*) (records.cc:346)
      ==25800==    by 0x635A72: sub_select(JOIN*, st_join_table*, bool) (sql_select.cc:17891)
      ==25800==    by 0x65FF1C: do_select(JOIN*, List<Item>*, TABLE*, Procedure*) (sql_select.cc:17551)
      ==25800==    by 0x6614F5: JOIN::exec_inner() (sql_select.cc:3094)
      ==25800==    by 0x663432: JOIN::exec() (sql_select.cc:2394)
      ==25800==    by 0x66377F: mysql_select(THD*, Item***, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:3322)
      ==25800==    by 0x664593: handle_select(THD*, LEX*, select_result*, unsigned long) (sql_select.cc:373)
      ==25800==    by 0x5F746C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5782)
      ==25800==    by 0x5FCE0B: mysql_execute_command(THD*) (sql_parse.cc:2926)
      ==25800==    by 0x603E69: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:7165)
      ==25800==    by 0x607091: dispatch_command(enum_server_command, THD*, char*, unsigned int) (sql_parse.cc:1462)
      ==25800==  Address 0xaba853d is 13 bytes inside a block of size 16 alloc'd
      ==25800==    at 0x4C25DD6: malloc (vg_replace_malloc.c:270)
      ==25800==    by 0xE52DEA: my_malloc (my_malloc.c:100)
      ==25800==    by 0x901460: QUICK_GROUP_MIN_MAX_SELECT::next_max_in_range() (opt_range.cc:14928)
      ==25800==    by 0x901907: QUICK_GROUP_MIN_MAX_SELECT::next_max() (opt_range.cc:14575)
      ==25800==    by 0x907671: QUICK_GROUP_MIN_MAX_SELECT::get_next() (opt_range.cc:14433)
      ==25800==    by 0x927808: rr_quick(READ_RECORD*) (records.cc:346)
      ==25800==    by 0x635A72: sub_select(JOIN*, st_join_table*, bool) (sql_select.cc:17891)
      ==25800==    by 0x65FF1C: do_select(JOIN*, List<Item>*, TABLE*, Procedure*) (sql_select.cc:17551)
      ==25800==    by 0x6614F5: JOIN::exec_inner() (sql_select.cc:3094)
      ==25800==    by 0x663432: JOIN::exec() (sql_select.cc:2394)
      ==25800==    by 0x66377F: mysql_select(THD*, Item***, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:3322)
      ==25800==    by 0x664593: handle_select(THD*, LEX*, select_result*, unsigned long) (sql_select.cc:373)
      ==25800==    by 0x5F746C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5782)
      ==25800==    by 0x5FCE0B: mysql_execute_command(THD*) (sql_parse.cc:2926)
      ==25800==    by 0x603E69: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:7165)
      ==25800==    by 0x607091: dispatch_command(enum_server_command, THD*, char*, unsigned int) (sql_parse.cc:1462)
      ^ Found warnings in /dev/shm/var_auto_Axsl/1/log/mysqld.1.err
      ok

      It might have appeared after this commit (not confirmed, it's a theory):

       

      Category None
      Changed by Alexander Barkov <bar@mariadb.org>
      Changed at Thu 12 Mar 2015 16:12:15
      Repository https://github.com/MariaDB/server
      Branch 10.1
      Revision bb3115b256113097bcfd0d80213e160339e4b00b
      Comments

      MDEV-6990 GROUP_MIN_MAX optimization is not applied in some cases when it could
      {noformat]

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                bar Alexander Barkov
                Reporter:
                elenst Elena Stepanova
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: