1. 15 Aug, 2023 27 commits
  2. 12 Aug, 2023 1 commit
  3. 11 Aug, 2023 11 commits
    • Sergei Golubchik's avatar
      bump the VERSION · 66f0f2f2
      Sergei Golubchik authored
      66f0f2f2
    • Sergei Golubchik's avatar
      cleanup: remove useless check · 4e87081b
      Sergei Golubchik authored
      create_table_impl() doesn't need to search for a temporary table
      when the table_name is like #sql-xxx
      4e87081b
    • Anel Husakovic's avatar
      MDEV-31618: Server crashes in... · 80439e69
      Anel Husakovic authored
      MDEV-31618: Server crashes in process_i_s_table_temporary_tables/get_all_tables after alter in rename query
      
      Any TMP_TABLE_SHARE must always have at least one TABLE instance.
      So whenever a temporary TABLE that is marked for reopen is closed,
      reopen it at once if its TMP_TABLE_SHARE list of tables becomes empty.
      80439e69
    • Anel Husakovic's avatar
      MDEV-28351: Assertion `this->file->children_attached' failed in ha_myisammrg::info · de57da73
      Anel Husakovic authored
      - Fix MSAN uninitialized value error, obtained by calling handlerton's
      `info()`, and referencing uninitialized `errkey`.
      - Reviewer: serg@mariadb.com
      de57da73
    • Anel Husakovic's avatar
      MDEV-31618: Server crashes in process_i_s_table_temporary_tables/get_all_tables · 82d9d72f
      Anel Husakovic authored
      - Pre-open temporary table on sequence creation.
      - Without this patch, if rename alter is done on the temporary sequence,
        and after that `create replace`, since table is not preopened and
        alter rename marked the table as reopen, and such table is deleted in
        the `find_temporary_table()` leaving the share without the table, that
        causes `show tables` to fail
      - Closes PR #2685
      - Reviewer: <serg@mariadb.com>
      82d9d72f
    • Sergei Golubchik's avatar
      MDEV-12459 post-review fixes · 62decb5e
      Sergei Golubchik authored
      * IS_USER_TEMP_TABLE() was misleading, name didn't match the code
      * list of temp tables was rescanned number_of_databases times
      * some temporary tables were not shown (from nonexistent databases)
      * some temporary tables were shown more than once (e.g. after self-joins)
      * sys.table_exists() - avoid querying I_S twice
      * fix handling of temporary MERGE tables - it's pointless to fully open
        them, they're not in thd->temporary_tables, so they simply fail to
        open and are skipped. Relax the assertion instead.
      62decb5e
    • Anel Husakovic's avatar
      MDEV-28343: sys.create_synonym_db fails with ER_VIEW_SELECT_TMPTABLE when... · 1fb4828b
      Anel Husakovic authored
      MDEV-28343: sys.create_synonym_db fails with ER_VIEW_SELECT_TMPTABLE when schema contains temporary tables
      
      - MDEV-28342 raised the error in case temporary table shadows base table
      - Now we are allowed to shadow base tables with temporary tables and
      `sys.create_synonym_db()` can easily check for existance of temporary table and
      ignore view creation, since it is not supported to create view from
      temporary table.
      Reviewed-by: default avatar&lt;monty@mariadb.org&gt;, <vicentiu@mariadb.org>
      1fb4828b
    • Monty's avatar
      MDEV-28351 Assertion `this->file->children_attached' failed in ha_myisammrg::info · 91bfc76f
      Monty authored
      Reviewed-by: <vicentiu@mariadb.org>
      91bfc76f
    • Anel Husakovic's avatar
      MDEV-12459 Patch sysschema · 1923ff8e
      Anel Husakovic authored
      This commit updates sysschema to work with the new behaviour of show
      tables and information_schema.tables table showing temporary tables for
      current connection.
      Co-authored-by: default avatarMonty <monty@mariadb.org>
      Reviewer: <vicentiu@mariadb.org>
      1923ff8e
    • Anel Husakovic's avatar
      MDEV-12459 Get temporary tables visible to the IS.tables for current connection · 0b7d1748
      Anel Husakovic authored
      Additionally fixes the bugs uncovered in:
        - `MDEV-28332: Alter on temporary table causes ER_TABLE_EXISTS_ERROR note`
          Since there is no `warning` issued by shadowing of base table, this MDEV
          is irrelevant. Keeping for review purposes and for future development
          in case shadowing is going to be implemented
        - `MDEV-28334: SHOW TABLE STATUS shows all temporary tables ignoring database and conditions`
        - `MDEV-28453: SHOW commands are inconsistent for temporary tables`
      
      Reviewed by: <monty@mariadb.org>,
                   <vicentiu@mariadb.org>
      0b7d1748
    • Anel Husakovic's avatar
      Cosmetic fixes · 1c052e90
      Anel Husakovic authored
      Reviewer: <vicentiu@mariadb.org>
      1c052e90
  4. 10 Aug, 2023 1 commit
    • Dmitry Shulga's avatar
      MDEV-31799 Unexpected ER_TRG_NO_SUCH_ROW_IN_TRG and server crash after ALTER TABLE · f329fe1c
      Dmitry Shulga authored
      This bug report was caused by implementation of the task MDEV-5816
      (Stored programs: validation of stored program statements).
      Changing metadata of a table that has a trigger on AFTER UPDATE or AFTER DELETE
      resulted in unexpected output of the error ER_TRG_NO_SUCH_ROW_IN_TR.
      It was caused by the fact that characteristics of the trigger dependent on
      changed table's metadata wasn't set in a new lex object created on re-parsing
      of a failing trigger statement.
      
      To fix the bug the data member lex->trg_chistics.action_time and
      lex->trg_chistics.event must be set into real values of the trigger
      whose statement being re-parsed.
      f329fe1c