1. 13 Feb, 2019 4 commits
    • Monty's avatar
      Fixed two bugs related to column level constraints · 438811b4
      Monty authored
      - CREATE TABLE ... SELECT drops constraints for columns that
        are both in the create and select part.
        - Fixed by copying the constraint in
          Column_definiton::redefine_stage1_common()
      - If one has both a default expression and check constraint for a
        column, one can get the error "Expression for field `a` is refering
        to uninitialized field `a`.
        - Fixed by ignoring default expressions for current column when checking
          for CHECK constraint
      438811b4
    • Daniel Black's avatar
      my_close: Don't retry on close · 44898d28
      Daniel Black authored
      According to close(2) "Retrying the close() after a failure return is
      the wrong thing to do"
      
      Even the EINTR case its maybe closed. Take the prudent approach here
      an risk leaking one file descriptor rather than closing one that is
      nolonger ours.
      44898d28
    • Sergey Vojtovich's avatar
      Cleanup Item_func_sp::fix_fields() · 8a3a332b
      Sergey Vojtovich authored
      No need to call list.empty(): first one is called by List constructor,
      second one doesn't make sense as the object is destroyed immediately
      afterwards.
      8a3a332b
    • Daniel Black's avatar
      Aggregate functions: only create list if args exist · a3ccad0f
      Daniel Black authored
      Also always empty list rather than only if there is no error.
      a3ccad0f
  2. 11 Feb, 2019 1 commit
    • Marko Mäkelä's avatar
      MDEV-18295 IMPORT TABLESPACE fails with instant-altered tables · 4e7ee166
      Marko Mäkelä authored
      When importing a tablespace, we must initialize dummy DEFAULT NULL
      values for any instantly added columns in order to avoid a debug
      assertion failure when PageConverter::update_records() invokes
      rec_get_offsets(). Finally, when the operation completes, we must
      evict and reload the table definition, so that the correct
      default values for instantly added columns will be loaded.
      
      ha_innobase::discard_or_import_tablespace(): On successful
      IMPORT TABLESPACE, evict and reload the table definition,
      so that btr_cur_instant_init() will load the correct metadata.
      
      PageConverter::update_index_page(): Fill in dummy DEFAULT NULL values
      for instantly added columns. These will be replaced upon the
      completion of the operation by evicting and reloading the metadata.
      
      row_discard_tablespace(): Invoke dict_table_t::remove_instant().
      After DISCARD TABLESPACE, the table is no longer in "instant ALTER"
      format, because there is no data file attached.
      4e7ee166
  3. 06 Feb, 2019 5 commits
  4. 04 Feb, 2019 2 commits
  5. 02 Feb, 2019 1 commit
  6. 01 Feb, 2019 4 commits
  7. 31 Jan, 2019 10 commits
  8. 30 Jan, 2019 2 commits
    • Julius Goryavsky's avatar
      MDEV-18426: Most of the mtr tests in the galera_3nodes suite fail · c9f0a4a9
      Julius Goryavsky authored
      Most of the mtr tests in the galera_3nodes suite fail
      for a variety of reasons with a variety of errors.
      Some tests simply need to add the missing "connection"
      lines to the result files, but many of them fail due
      to substantial errors that require reworking test files.
      
      This patch adds the missing "connection" lines to
      the result files and fixes several substantial flaws
      in the galera_3nodes suite tests and in the mtr framework
      service files, adapting the tests from galera_3nodes
      for the current version of MariaDB.
      
      https://jira.mariadb.org/browse/MDEV-18426
      c9f0a4a9
    • Thirunarayanan Balathandayuthapani's avatar
      MDEV-16849 Extending indexed VARCHAR column should be instantaneous · b8aef872
      Thirunarayanan Balathandayuthapani authored
      Analysis:
      ========
      Increasing the length of the indexed varchar column is not an instant operation for
      innodb.
      
      Fix:
      ===
      - Introduce the new handler flag 'Alter_inplace_info::ALTER_COLUMN_INDEX_LENGTH' to
      indicate the index length differs due to change of column length changes.
      
      - InnoDB makes the ALTER_COLUMN_INDEX_LENGTH flag as instant operation.
      
      This is a port of Mysql fix.
      
          commit 913071c0b16cc03e703308250d795bc381627e37
          Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
          Date:   Wed May 30 14:54:46 2018 +0530
      
              BUG#26848813: INDEXED COLUMN CAN'T BE CHANGED FROM VARCHAR(15)
                            TO VARCHAR(40) INSTANTANEOUSLY
      b8aef872
  9. 28 Jan, 2019 2 commits
    • Marko Mäkelä's avatar
      MDEV-18399 Recognize the deprecated parameters innodb_file_format, innodb_large_prefix · 36be0a5a
      Marko Mäkelä authored
      The parameters innodb_file_format and innodb_large_prefix were overridden
      in the Debian-distributed configuration files, because the default values
      of these parameters between MariaDB 5.5 and MariaDB 10.2
      did not make any sense.
      
      To allow a more seamless upgrade from MariaDB 10.1 to later versions,
      let InnoDB recognize the parameters innodb_file_format and
      innodb_large_prefix and issue deprecation warnings for them if they
      are specified. A deprecation period of only one major release
      (one year between the MariaDB 10.2 and 10.3 releases) is insufficient
      for these widely used parameters.
      36be0a5a
    • Jan Lindström's avatar
      Merge pull request #1142 from codership/10.2-MDEV-15740 · 97930df1
      Jan Lindström authored
      MDEV-15740 Fixes to Galera transaction recovery
      97930df1
  10. 27 Jan, 2019 3 commits
  11. 25 Jan, 2019 6 commits