The merge is still missing a few hunks related to temporary tables and
InnoDB log file size. The associated code did not seem to exist in
10.0, so the merge of that needs more work. Until this is fixed, there
are a number of test failures as a result.
For compatibility purposes let InnoDB use DATA_INT for MYSQL_TYPE_ENUM and MYSQL_TYPE_SET.
Silence the warning for these types and let the index translation table to be built anyway.
Test case by Jeremy Cole.
There was 2 problems:
1) coping/moving of the same type (usually casting) as sizeof() (solved in different ways depends on the cause);
2) using 'const' in SSL_CTX::getVerifyCallback() which return object (not reference) and so copy of the object will be created and 'const' has no sens.
Add an error code to the wait_for_commit facility.
Now, when a transaction fails, it can signal the error to
any subsequent transaction that is waiting for it to commit.
The waiting transactions then receive the error code back from
wait_for_prior_commit() and can handle the error appropriately.
Also fix one race that could cause crash if @@slave_parallel_threads
were changed several times quickly in succession.
This helps when moving from MariaDB 5.5 to MariaDB 10.0 as sometimes the log file size is rounded differently.
storage/innobase/srv/srv0start.c:
Give a warning, not an error, if the log file size in innodb doesn't match what is on disk
storage/xtradb/srv/srv0start.c:
Give a warning, not an error, if the log file size in innodb doesn't match what is on disk
Analysis: After ALTER TABLE the table statistics needs to be rebuilt and therefore stat_initialized is set false. It will be rebuilt when the table is loaded again and table is closed when alter table is completed. However, during alter table table could be used by concurrent SELECT from I_S. Therefore, we need to rebuild transient table statistics meanwhile until table can be reloaded.
When we open merge children open error is normally handled early during
open phase. But there are two exceptions when error is handled later during
attach phase: CHECK/REPAIR TABLE and tables added by the pre-locking code.
The latter case wasn't considered by assertion in the merge code. This
assertion is corrected. Note that in MySQL-5.6 this assertion is removed.
MDEV-4425 Regexp enhancements
Adding ${CMAKE_BINARY_DIR}/pcre into search path for *.h files.
Needed for find pcre.h (which is generated from pcre.h.in) when
build directory != source directory.
Analysis: There is debug assertion ut_ad(trx->start_file != 0); and ut_ad(trx->start_line != 0); on trx_start_low funcition at trx0trx.cc. These fields are initialized on include/trx0trx.h at function trx_start_if_not_started_xa. Thus at trx_prepare_for_mysql function should call trx_start_if_not_started_xa(trx); not trx_start_if_not_started_xa_low(trx) directly;
- Better error message when using huge pages
- Fixed link error
- Test suite should run even on system with huge pages
storage/tokudb/ft-index/cmake_modules/TokuThirdParty.cmake:
Fixed that linking works on systems that uses lib64
storage/tokudb/ft-index/portability/huge_page_detection.cc:
Better error message
storage/tokudb/mysql-test/rpl/suite.pm:
Test suite should run even on system with huge pages
storage/tokudb/mysql-test/tokudb/suite.pm:
Test suite should run even on system with huge pages
by Valgrind. This concerns the XML libxml2 support.
modified:
storage/connect/domdoc.cpp
storage/connect/domdoc.h
storage/connect/ha_connect.cc
storage/connect/libdoc.cpp
storage/connect/plgdbsem.h
storage/connect/plgxml.h
storage/connect/tabxml.cpp
storage/connect/tabxml.h