- 04 Oct, 2018 4 commits
-
-
Daniel Bartholomew authored
-
Alexander Barkov authored
-
Marko Mäkelä authored
btr_cur_instant_root_init(): Check the "infimum" and "supremum" record strings already here, and not later in btr_cur_instant_root_init(). In this way, we can properly reject files from later versions where instant ALTER TABLE could support further operations that change the format of InnoDB clustered indexes.
-
Marko Mäkelä authored
-
- 03 Oct, 2018 2 commits
-
-
Marko Mäkelä authored
Because changes of the FIL_PAGE_TYPE or PAGE_INSTANT in the root page are not undo-logged, it is possible that the fields suggest that instant ADD COLUMN is in effect, even though no metadata record exists. If the fields are set, proceed to fetch the metadata record. If the metadata record does not exist, return success if !index->is_instant(). Also, check that the "infimum" and "supremum" records carry the strings in the root page. In a later format that supports instant DROP COLUMN, we will have to store more information in the root page, so that index->n_core_null_bytes can be determined accurately.
-
Marko Mäkelä authored
btr_cur_instant_init_low(): If columns were instantly added and dropped, then index->is_instant() might not hold even though the root page type was FIL_PAGE_TYPE_INSTANT. MariaDB 10.3 must refuse to open such files, because instant DROP COLUMN is not supported. Also, refuse to open the table if the metadata record has wrong info OR status bits. Previously, we only refused to open if both bits were wrong.
-
- 02 Oct, 2018 3 commits
-
-
Jan Lindström authored
MDEV-16211 Contents of transaction_registry should not be replicated by Galera
-
Elena Stepanova authored
Addition based on Travis results
-
Sergey Vojtovich authored
truncating a temporary table TRUNCATE expects only one TABLE instance (which is used by TRUNCATE itself) to be open. However this requirement wasn't enforced after "MDEV-5535: Cannot reopen temporary table". Fixed by closing unused table instances before performing TRUNCATE.
-
- 01 Oct, 2018 4 commits
-
-
Elena Stepanova authored
-
Eugene Kosov authored
Patch fixes two bugs: 1) BEGIN_TIMESTAMP of MYSQL.TRANSACTION_REGISTY is '0-0-0' on replication record insertion 2) BEGIN_TIMESTAMP equals COMMMIT_TIMESTAMP in MYSQL.TRANSACTION_REGISTRY Fixed by calling THD::set_time() at appropriate places
-
Sergei Golubchik authored
-
Marko Mäkelä authored
-
- 30 Sep, 2018 2 commits
-
-
Marko Mäkelä authored
rec_offs_nth_extern_old() was introduced in commit a4948daf and never used.
-
Marko Mäkelä authored
-
- 28 Sep, 2018 5 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
- 26 Sep, 2018 1 commit
-
-
Marko Mäkelä authored
-
- 24 Sep, 2018 2 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
- 23 Sep, 2018 6 commits
-
-
Sergei Golubchik authored
storage/rocksdb/rdb_datadic.cc: In member function 'int myrocks::Rdb_key_def::unpack_integer(myrocks::Rdb_field_packing*, Field*, uchar*, myrocks::Rdb_string_reader*, myrocks::Rdb_string_reader*) const' storage/rocksdb/rdb_datadic.cc:1781:1: internal compiler error: Segmentation fault } on ppc64le, ubuntu bionic gcc 7.3.0 and debian stretch gcc 6.3.0 The error happens with -ftree-loop-vectorize when trying to vectorize a particular loop (see Rdb_key_def::unpack_integer()) Compiler gets confused by __attribute__((optimize("O0")) that comes from ha_rocksdb_proto.h. The intention of this __attribute__ was to prevent function from being inlined (see ha_rocksdb.cc). Let's use a more specific attribute that prevents inlining but does not confuse loop vectorizer.
-
Sergei Golubchik authored
-
Jan Lindström authored
-
Sergei Petrunia authored
An error in "group commit with MariaDB's binlog" code: we would flush the WAL even when the transaction did not do any writes (and so the logic in myrocks::Rdb_transaction::commit caused it to rollback).
-
Jan Lindström authored
-
Jan Lindström authored
Reset query cache after every test case and add wait after load infile.
-
- 22 Sep, 2018 3 commits
-
-
Sergei Golubchik authored
to guarantee that it's destroyed when plugin deinit is called, not after
-
Sergei Golubchik authored
(already fixed in 10.2. bad merge?)
-
Sergei Golubchik authored
-
- 21 Sep, 2018 8 commits
-
-
Sergei Golubchik authored
Use RedHat-recommended /var/lib/rpm-state/mariadb/ for restart flag. This also fixes SUSE where /var/lib/rpm-state doesn't necessarily exist.
-
Sergei Golubchik authored
cover ALTER TABLE
-
Sergei Golubchik authored
MDEV-16792 Assertion `m_status == DA_ERROR' failed in Diagnostics_area::sql_errno or wrong result upon SHOW TABLE STATUS after adding partition under ANSI_QUOTES if opening a table fails with a syntax error, the error shouldn't be suppressed completely as if it didn't happen at all.
-
Alexander Barkov authored
-
Alexander Barkov authored
-
Alexander Barkov authored
Unary minus operation for the smallest possible signed long long value (LONLONG_MIN) is undefined in C++. Because of this, func_time.test failed on ppc64 buildbot machines. Fixing the code to avod using undefined operations. This is fix is similar to "MDEV-7973 bigint fail with gcc 5.0"
-
Sergei Golubchik authored
-
Nikita Malyavin authored
MDEV-16429: Assertion `!table || (!table->read_set || bitmap_is_set(table->read_set, field_index))' fails upon attempt to update virtual column on partitioned versioned table When using buffered sort in `UPDATE`, keyread is used. In this case, `TABLE::update_virtual_field` should be aborted, but it actually isn't, because it is called not with a top-level handler, but with the one that is actually going to access the disk. Here the problemm is issued with partitioning, so the solution is to recursively mark for keyread all the underlying partition handlers. * ha_partition: update keyread state for child partitions Closes #800
-