1. 25 Dec, 2017 1 commit
  2. 22 Dec, 2017 6 commits
  3. 21 Dec, 2017 18 commits
  4. 20 Dec, 2017 10 commits
  5. 19 Dec, 2017 5 commits
    • Monty's avatar
      Updated result for alter_crash · b4e5d5e2
      Monty authored
      b4e5d5e2
    • Aleksey Midenkov's avatar
      MDEV-14676 Redundancy in error codes · c5d0c38e
      Aleksey Midenkov authored
      ER_VERS_NOT_VERSIONED vs ER_VERSIONING_REQUIRED
      c5d0c38e
    • Aleksey Midenkov's avatar
      MDEV-14683 Possible redundancy in error codes · fc21529f
      Aleksey Midenkov authored
      ER_VERS_GENERATED_ALWAYS_NOT_EMPTY vs ER_VERS_ALTER_SYSTEM_FIELD
      
      Related to #310 (91ba4f04).
      fc21529f
    • Marko Mäkelä's avatar
      Merge bb-10.2-ext into 10.3 · 0436a0ff
      Marko Mäkelä authored
      0436a0ff
    • Marko Mäkelä's avatar
      Follow-up to MDEV-13407 innodb.drop_table_background failed in buildbot with... · 88aff5f4
      Marko Mäkelä authored
      Follow-up to MDEV-13407 innodb.drop_table_background failed in buildbot with "Tablespace for table exists"
      
      The InnoDB background DROP TABLE queue is something that we should
      really remove, but are unable to until we remove dict_operation_lock
      so that DDL and DML operations can be combined in a single transaction.
      
      Because the queue is not persistent, it is not crash-safe. We should
      in some way ensure that the deferred-dropped tables will be dropped
      after server restart.
      
      The existence of two separate transactions complicates the error handling
      of CREATE TABLE...SELECT. We should really not break locks in DROP TABLE.
      
      Our solution to these problems is to rename the table to a temporary
      name, and to drop such-named tables on InnoDB startup. Also, the
      queue will use table IDs instead of names from now on.
      
      check-testcase.test: Ignore #sql-ib*.ibd files, because tables may enter
      the background DROP TABLE queue shortly before the test finishes.
      
      innodb.drop_table_background: Test CREATE...SELECT and the creation of
      tables whose file name starts with #sql-ib.
      
      innodb.alter_crash: Adjust the recovery, now that the #sql-ib tables
      will be dropped on InnoDB startup.
      
      row_mysql_drop_garbage_tables(): New function, to drop all #sql-ib tables
      on InnoDB startup.
      
      row_drop_table_for_mysql_in_background(): Remove an unnecessary and
      misplaced call to log_buffer_flush_to_disk(). (The call should have been
      after the transaction commit. We do not care about flushing the redo log
      here, because the table would be dropped again at server startup.)
      
      Remove the entry from the list after the table no longer exists.
      
      If server shutdown has been initiated, empty the list without actually
      dropping any tables. They will be dropped again on startup.
      
      row_drop_table_for_mysql(): Do not call lock_remove_all_on_table().
      Instead, if locks exist, defer the DROP TABLE until they do not exist.
      If the table name does not start with #sql-ib, rename it to that prefix
      before adding it to the background DROP TABLE queue.
      88aff5f4