Uploaded image for project: 'Percona Server for MySQL'
  1. Percona Server for MySQL
  2. PS-2152

LP #1588845: mysqldump get_view_structure does not free MYSQL_RES in one error path

    Details

    • Type: Bug
    • Status: Done
    • Priority: Low
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None

      Description

      **Reported in Launchpad by Laurynas Biveinis last update 06-06-2016 12:53:26

      Copy of http://bugs.mysql.com/bug.php?id=81714:

      [3 Jun 14:14] Laurynas Biveinis
      Description:
      A minor code review bug, credit to my colleague Yura Sorokin:

      static my_bool get_view_structure(char table, char db)
      {
      MYSQL_RES *table_res;
      ...
      if (mysql_query_with_error_report(mysql, &table_res, query))
      ...
      if (path)
      {
      if (!(sql_file= open_sql_file_for_table(table, O_WRONLY)))
      DBUG_RETURN(1);

      Thus, mysql_free_result is not called here.

      How to repeat:
      Code review

      Suggested fix:
      For 5.7, call mysql_free_result there.

      For lower versions, backport [1], and call mysql_free_result there.

      [1]:

      commit 353dbcee4a27b8cfbbd127a28a043bdda764dcf1
      Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
      Date: Fri Jun 12 14:55:35 2015 +0200

      Bug#21246627: ASAN: MEMORY LEAK IN PROCESS_SET_GTID_PURGED()
      Bug#21250584: ASAN: MEMORY LEAK IN MYSQLDUMP

      Fix three different memory leaks in mysqldump:
      1) Remember to call dynstr_free() on DYNAMIC_STRING.
      2) Remember to call mysql_free_result() on MYSQL_RES.
      3) Remember to call my_free() on string allocated by alloc_query_str().

        Smart Checklist

          Attachments

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                lpjirasync lpjirasync (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: