mirror of
https://github.com/MariaDB/server.git
synced 2025-11-27 05:41:41 +03:00
commit c07064d31a4d7ee0533fec144648d93873c0dd17 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Oct 18 00:11:00 2017 +0200 - Update version number modified: storage/connect/ha_connect.cc - Include MONGO in all Java enabled distributions Mongo will be enabled only for 10.2 and 10.3 modified: storage/connect/CMakeLists.txt - Change JDBC_SUPPORT to JAVA_SUPPORT which also replaces MONGO_SUPPORT MONGO_SUPPORT is now just used to enable the MONGO table type modified: storage/connect/filter.cpp modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h modified: storage/connect/mongo.cpp modified: storage/connect/mycat.cc modified: storage/connect/plgdbutl.cpp modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h - Move MakeSelector function from FILTER to mongo.cpp modified: storage/connect/filter.cpp modified: storage/connect/filter.h modified: storage/connect/cmgoconn.cpp modified: storage/connect/jmgoconn.cpp modified: storage/connect/mongo.cpp - Do mongo_init only on first use of the MongoDB C Driver This will permit to delay load the mongo lib on Windows modified: storage/connect/cmgoconn.cpp modified: storage/connect/cmgoconn.h modified: storage/connect/ha_connect.cc - Replace NEW_VAR by a test on MYSQL_VERSION_ID modified: storage/connect/ha_connect.cc - Suppress enable_mongo session variable modified: storage/connect/ha_connect.cc modified: storage/connect/mycat.cc - Make some function headers identical in .h and .cc file (replacing const char* by PCSZ) modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h - Change a parameter type from uchar* to const uchar* (for ScanRecord and CheckRecord) modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h - Changes on LIKE and NOT LIKE does not fix a bug yet modified: storage/connect/ha_connect.cc - Suppress PIVOT_SUPPORT (PIVOT type is unconditionnal) modified: storage/connect/ha_connect.cc modified: storage/connect/mycat.cc - Change the strz function from inline to static modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h - export the JavaConn class and the MgoColumns and IsNum functions modified: storage/connect/javaconn.h modified: storage/connect/json.h modified: storage/connect/mongo.h - Fix MDEV-13924 modified: storage/connect/jdbconn.cpp - Make a temporary fix for the compiler bug in CalculateArray modified: storage/connect/jsonudf.cpp modified: storage/connect/tabjson.cpp - Typo modified: storage/connect/jdbccat.h modified: storage/connect/reldef.h modified: storage/connect/tabext.h modified: storage/connect/tabjmg.cpp modified: storage/connect/tabxml.h modified: storage/connect/valblk.h modified: storage/connect/value.h modified: storage/connect/xtable.h - Fix a bug in MONGO tests by changing 'MONGO' to $TYPE modified: storage/connect/mysql-test/connect/t/mongo_test.inc - Record test results to reflect all changes modified: storage/connect/mysql-test/connect/r/json_java_2.result modified: storage/connect/mysql-test/connect/r/json_java_3.result modified: storage/connect/mysql-test/connect/r/json_mongo_c.result modified: storage/connect/mysql-test/connect/r/mongo_c.result modified: storage/connect/mysql-test/connect/r/mongo_java_2.result modified: storage/connect/mysql-test/connect/r/mongo_java_3.result commit 3da90fd112e7d5ee6f0bd9c3fc3eeb4529b30e93 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Oct 11 12:21:56 2017 +0200 Fix MDEV-13924 modified: storage/connect/jdbconn.cpp commit 2566e67da80f291414f02c7dd6a8ca3557161d26 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Sep 11 16:38:41 2017 +0200 Enable MONGO for the C driver. Modified: modified: storage/connect/CMakeLists.txt commit 27ae11db830c5d62bbf8b8b13cab976b74efe7dd Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Sep 5 19:52:04 2017 +0200 - Update version number modified: storage/connect/ha_connect.cc - Regard columns with binary charset as string (was binary) modified: storage/connect/ha_connect.cc modified: storage/connect/tabmysql.cpp modified: storage/connect/tabutil.cpp - Support length 0 for CHAR and VARCHAR modified: storage/connect/ha_connect.cc modified: storage/connect/reldef.cpp modified: storage/connect/value.cpp - Add ACCEPT option for void columns in discovery modified: storage/connect/tabjson.cpp - Update some tests because of above change modified: storage/connect/mysql-test/connect/r/json_java_2.result modified: storage/connect/mysql-test/connect/r/json_java_3.result modified: storage/connect/mysql-test/connect/r/json_mongo_c.result modified: storage/connect/mysql-test/connect/r/mongo_c.result modified: storage/connect/mysql-test/connect/r/mongo_java_2.result modified: storage/connect/mysql-test/connect/r/mongo_java_3.result modified: storage/connect/mysql-test/connect/r/odbc_oracle.result modified: storage/connect/mysql-test/connect/r/updelx.result modified: storage/connect/mysql-test/connect/t/mongo_test.inc commit f6ee6cd1d42d861fa50fea8d9a7079347b7ddfd6 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Sep 2 16:06:10 2017 +0200 - Fix MongoDB C Driver adding for CMAKE. Requires MongoDB C Driver version 1.7 now available modified: storage/connect/CMakeLists.txt - Add more trace to tbl_thread.test (to debug failure) modified: storage/connect/mysql-test/connect/r/tbl_thread.result modified: storage/connect/mysql-test/connect/t/tbl_thread.test commit dbef1242c41fcfde56471cb41cbf98c83224a8a3 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Aug 31 12:19:07 2017 +0200 - Import common version of CONNECT used with all MariaDB versions modified: storage/connect/CMakeLists.txt modified: storage/connect/JavaWrappers.jar modified: storage/connect/array.cpp modified: storage/connect/connect.cc modified: storage/connect/filamvct.cpp modified: storage/connect/filamzip.cpp modified: storage/connect/filter.cpp modified: storage/connect/filter.h modified: storage/connect/global.h modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h modified: storage/connect/jdbccat.h modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h modified: storage/connect/mycat.cc modified: storage/connect/mycat.h modified: storage/connect/myconn.cpp modified: storage/connect/mysql-test/connect/disabled.def modified: storage/connect/mysql-test/connect/r/alter_xml.result modified: storage/connect/mysql-test/connect/r/drop-open-error.result modified: storage/connect/mysql-test/connect/r/infoschema-9739.result modified: storage/connect/mysql-test/connect/r/jdbc_new.result modified: storage/connect/mysql-test/connect/r/json.result modified: storage/connect/mysql-test/connect/r/json_udf.result modified: storage/connect/mysql-test/connect/r/json_udf_bin.result modified: storage/connect/mysql-test/connect/r/mysql_exec.result modified: storage/connect/mysql-test/connect/r/mysql_new.result modified: storage/connect/mysql-test/connect/r/tbl.result modified: storage/connect/mysql-test/connect/r/unsigned.result modified: storage/connect/mysql-test/connect/r/upd.result modified: storage/connect/mysql-test/connect/r/updelx.result modified: storage/connect/mysql-test/connect/r/xml.result modified: storage/connect/mysql-test/connect/r/xml_grant.result modified: storage/connect/mysql-test/connect/r/xml_html.result modified: storage/connect/mysql-test/connect/r/xml_mdev5261.result modified: storage/connect/mysql-test/connect/r/xml_mult.result modified: storage/connect/mysql-test/connect/r/xml_zip.result modified: storage/connect/mysql-test/connect/r/zip.result modified: storage/connect/mysql-test/connect/t/alter_xml.test modified: storage/connect/mysql-test/connect/t/drop-open-error.test modified: storage/connect/mysql-test/connect/t/infoschema-9739.test modified: storage/connect/mysql-test/connect/t/jdbc_new.test modified: storage/connect/mysql-test/connect/t/json.test modified: storage/connect/mysql-test/connect/t/json_udf.inc modified: storage/connect/mysql-test/connect/t/json_udf.test modified: storage/connect/mysql-test/connect/t/json_udf2.inc modified: storage/connect/mysql-test/connect/t/json_udf_bin.test modified: storage/connect/mysql-test/connect/t/mysql_exec.test modified: storage/connect/mysql-test/connect/t/mysql_new.test modified: storage/connect/mysql-test/connect/t/tbl.test modified: storage/connect/mysql-test/connect/t/unsigned.test modified: storage/connect/mysql-test/connect/t/upd.test modified: storage/connect/mysql-test/connect/t/xml.test modified: storage/connect/mysql-test/connect/t/xml_grant.test modified: storage/connect/mysql-test/connect/t/xml_html.test modified: storage/connect/mysql-test/connect/t/xml_mdev5261.test modified: storage/connect/mysql-test/connect/t/xml_mult.test modified: storage/connect/mysql-test/connect/t/xml_zip.test modified: storage/connect/mysql-test/connect/t/zip.test modified: storage/connect/myutil.cpp modified: storage/connect/odbconn.cpp modified: storage/connect/odbconn.h modified: storage/connect/os.h modified: storage/connect/plgdbsem.h modified: storage/connect/plgdbutl.cpp modified: storage/connect/plugutil.cpp modified: storage/connect/reldef.h modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h modified: storage/connect/tabext.cpp modified: storage/connect/tabext.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h modified: storage/connect/table.cpp modified: storage/connect/tabmysql.cpp modified: storage/connect/tabmysql.h modified: storage/connect/tabodbc.cpp modified: storage/connect/tabodbc.h modified: storage/connect/tabtbl.cpp modified: storage/connect/tabtbl.h modified: storage/connect/tabxml.cpp modified: storage/connect/user_connect.cc modified: storage/connect/valblk.cpp modified: storage/connect/valblk.h modified: storage/connect/value.cpp commit 7f557db749a424a8df10e17fb8f322ff70eac1a2 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Aug 27 01:11:10 2017 +0200 Fix MDEV-13621 modified: storage/connect/ha_connect.cc commit ed77b56787870fccfab4dffb17424592cfb2c5fa Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Aug 20 15:06:34 2017 +0200 - Fix MDEV-12422 by implementing a fake virtual "check" function. modified: storage/connect/ha_connect.h commit dab7553a07e1d3cc447dbd79cd7a6cc6062c9cb1 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Aug 13 16:21:30 2017 +0200 Fix MDEV-13503 Modified: storage/connect/jdbconn.cpp commit f02ce8ada52cc0a9e52478578517c032bcd442c7 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Aug 9 18:43:28 2017 +0200 - Fix MDEV-13463 unescape table name during detection of table structure modified: storage/connect/myconn.cpp - Fix test failures modified: storage/connect/mysql-test/connect/r/mysql.result modified: storage/connect/mysql-test/connect/r/mysql_new.result modified: storage/connect/tabjson.cpp commit f4d9214ad508722ed1f2dd885a22fd28f12debfd Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Aug 8 15:59:20 2017 +0200 - Fix bug returning pointer to a stack string in JVALUE::GetString modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp - Fix a compiler bug happening on some configuration and platforms in JSNX::CalculateArray modified: storage/connect/jsonudf.cpp - Set default Schema as current directory This fix several bugs like: Fail to make JSON catalog tables Fail to use zipped file made by a file LOAD modified: storage/connect/reldef.cpp modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h - Change the way column Jpath is retrieved modified: storage/connect/colblk.h modified: storage/connect/filter.cpp modified: storage/connect/filter.h - Fix failing ODBC test by enabling nullable for catalog tables + pval[n]->SetNullable(true); modified: storage/connect/mysql-test/connect/r/odbc_oracle.result modified: storage/connect/odbconn.cpp commit fe22a0669e63fbda098f6dcc97dd0f2f44587797 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Jul 22 18:40:20 2017 +0200 -- Fix GetUser that can cause memory leak when xp is modified. The old xp must be poped or is never freed. Add usrmut mutex to protect all multi-user storage handling. Use compatible parmut mutex instead of parsec on Windows. modified: storage/connect/ha_connect.cc modified: storage/connect/plgdbutl.cpp modified: storage/connect/user_connect.cc commit a7f1acddafd301435872e71503f31dd3fc027a80 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Jul 19 17:51:35 2017 +0200 Parenthesize set null in SetValue_pval. Modified /storage/connect/value.cpp commit 4715a589560f824db756c9f607ea99f05f967a61 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Jul 19 00:19:03 2017 +0200 -- Check whether USERBLK still exists in PlugExit modified: storage/connect/connect.cc modified: storage/connect/plugutil.cpp modified: storage/connect/jsonudf.cpp -- Update result from json_udf test modified: storage/connect/mysql-test/connect/r/json_udf.result commit c8918e1a7b6f781738a840578923e6c56cbe3861 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Jul 18 13:33:49 2017 +0200 -- Trace Sarea allocation and freeing modified: storage/connect/connect.cc modified: storage/connect/plugutil.cpp modified: storage/connect/user_connect.cc -- Null Json values where not mark as null in JSNX::SetJsonValue This was added in TYPE_NULL (declared as TYPE_VOID) modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp -- Null JValues are ignored in JSNX::CalculateArray Also done in tabjson.cpp for JSONCOL::CalculateArray modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/tabjson.cpp -- Null JSON values now represented by connect_json_null session variable modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/tabjson.cpp -- JVALUE has size = 1 modified: storage/connect/json.h -- Fix by vuvova because Debian compilation failure. modified: storage/connect/value.cpp commit 5b4e72c17a9fce81a959f1809958179b5f4774ba Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Jul 4 19:16:38 2017 +0200 - Fix MDEV-13239 Suppress the restriction about no blanks around , and = in the OPTION_LIST. modified: storage/connect/ha_connect.cc commit 0747149d5fc6110f01168bfba2511aff5d774f8f Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Jun 30 18:15:24 2017 +0200 - tdbp not initialized when catched exception in CntGetTDB (connect.cc line 188) modified: storage/connect/connect.h - CheckCleanup should sometimes doing cleanup on pure info Sometimes MariaDB loops on info to get the size of all tables in a database. This can sometimes fail by exhausted memory. CheckCleanup now have a force boolean parameter (defaulting to false) modified: storage/connect/ha_connect.cc modified: storage/connect/user_connect.cc modified: storage/connect/user_connect.h Change the copyright of some source files modified: storage/connect/connect.cc modified: storage/connect/connect.h modified: storage/connect/engmsg.h modified: storage/connect/global.h modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h modified: storage/connect/msgid.h modified: storage/connect/mycat.cc modified: storage/connect/mycat.h modified: storage/connect/os.h modified: storage/connect/osutil.c modified: storage/connect/osutil.h modified: storage/connect/user_connect.cc modified: storage/connect/user_connect.h commit 48bc288c676f72203ec7ca3e619e8c1fed2c7248 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Jun 11 17:17:11 2017 +0200 Fix unhandled exception: Force type int for ENUMs. Replace remaining longjmp. modified: storage/connect/array.cpp modified: storage/connect/colblk.cpp modified: storage/connect/connect.cc modified: storage/connect/filter.cpp modified: storage/connect/jdbconn.cpp modified: storage/connect/plgdbutl.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabvir.cpp modified: storage/connect/tabxml.cpp modified: storage/connect/value.cpp modified: storage/connect/xobject.cpp commit 01af518ebbc8416df759918587b5ae7ace9d97ae Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Jun 8 18:14:33 2017 +0200 Fix MDEV-12973: Blank columns querying SQL Server Added support of NCHAR, NVARCHAR an ROWID JDBC types. modified: storage/connect/jdbconn.cpp commit b7ea5496f24e96f97ce3d76416e65b01a87e32b5 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Jun 6 17:26:51 2017 +0200 Fix MDEV-12969. Crash during inserting binary value in Connect table. Seems due to making an index on unsigned integer that triggers an un-handled THROW. modified: storage/connect/tabdos.cpp modified: storage/connect/xindex.cpp commit 79d1ccb481f8bfc2a6208c0831f4310488be619f Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Jun 1 10:10:39 2017 +0200 Protect Info function against NULL g pointer modified: storage/connect/ha_connect.cc Update failing test modified: storage/connect/mysql-test/connect/r/drop-open-error.result modified: storage/connect/mysql-test/connect/t/drop-open-error.test commit 65bc45636ac3489a0d9776d00c8d42365c4581a4 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun May 28 00:56:15 2017 +0200 restore last version commit 1387a3a28fb1649cf77b119364044b5170997a78 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun May 28 00:53:14 2017 +0200 new version commite720e50213Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue May 23 22:59:44 2017 +0200 Fix bug: Discovery of JSON table fails in DEBUG mode when NO MONGO support. (tdb->Uri is uninitialized) modified: storage/connect/tabjson.cpp commit37235293b0Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue May 23 14:48:49 2017 +0200 Fix gcc compiler warnings reported by Sergei modified: storage/connect/array.cpp modified: storage/connect/array.h modified: storage/connect/blkfil.cpp modified: storage/connect/blkfil.h modified: storage/connect/block.h modified: storage/connect/colblk.cpp modified: storage/connect/colblk.h modified: storage/connect/csort.h modified: storage/connect/filamvct.cpp modified: storage/connect/filter.cpp modified: storage/connect/filter.h modified: storage/connect/global.h modified: storage/connect/json.h modified: storage/connect/plgdbsem.h modified: storage/connect/plgdbutl.cpp modified: storage/connect/tabcol.cpp modified: storage/connect/tabcol.h modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h modified: storage/connect/tabjson.cpp modified: storage/connect/table.cpp modified: storage/connect/tabodbc.cpp modified: storage/connect/tabodbc.h modified: storage/connect/tabsys.h modified: storage/connect/tabxml.h modified: storage/connect/value.cpp modified: storage/connect/value.h modified: storage/connect/xindex.cpp modified: storage/connect/xindex.h modified: storage/connect/xobject.cpp modified: storage/connect/xobject.h modified: storage/connect/xtable.h Set values as nullable when retrieving catalog info modified: storage/connect/jdbconn.cpp modified: storage/connect/mysql-test/connect/r/odbc_oracle.result modified: storage/connect/odbconn.cpp Change format of Jpath modified: storage/connect/json.cpp modified: storage/connect/jsonudf.cpp modified: storage/connect/mysql-test/connect/r/json.result modified: storage/connect/mysql-test/connect/r/json_udf.result modified: storage/connect/mysql-test/connect/r/json_udf_bin.result modified: storage/connect/mysql-test/connect/r/zip.result modified: storage/connect/mysql-test/connect/t/json.test modified: storage/connect/mysql-test/connect/t/json_udf.test modified: storage/connect/mysql-test/connect/t/json_udf_bin.test modified: storage/connect/mysql-test/connect/t/zip.test modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h modified: storage/connect/tabmgo.cpp Change null representation from ??? to <null> modified: storage/connect/json.cpp Change the name of UDF that are equal to a native JSON function name modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h modified: storage/connect/mysql-test/connect/t/json_udf.inc modified: storage/connect/mysql-test/connect/t/json_udf2.inc Fix bug in making JSON project info modified: storage/connect/mongofam.cpp Fix COMPUTE when one argument is null modified: storage/connect/value.cpp Value is null only when nullable modified: storage/connect/value.h commit8f66819611Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri May 12 11:52:03 2017 +0200 Fix column types wrongly set to TYPE_STRING in JSONColumns when the column contains NULL values. modified: storage/connect/tabjson.cpp MDEV-12651: change error code to ER_ILLEGAL_HA in rnd_pos. modified: storage/connect/ha_connect.cc commitea7081bfa2Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu May 11 17:23:02 2017 +0200 Fix wrong value of JSON column When null and the column is NOT NULL the value was not reset. modified: storage/connect/tabjson.cpp commit2195f5dc02Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu May 11 10:35:14 2017 +0200 Fix converting bstr_t string to set error message modified: storage/connect/domdoc.cpp Fix MDEV-12768: -Wformat-overflow compile warnings modified: storage/connect/global.h modified: storage/connect/jsonudf.cpp modified: storage/connect/plugutil.cpp modified: storage/connect/tabvct.cpp Typo (in external_lock) modified: storage/connect/ha_connect.cc Remove some warnings modified: storage/connect/odbconn.cpp modified: storage/connect/tabmysql.cpp Add MEM_RESERVE flag to virtualAlloc modified: storage/connect/plgdbutl.cpp Fix MDEV-12573: Accept=1 may show incorrect value for NULL column in CONNECT TBL modified: storage/connect/tabutil.cpp Fix wrong setting of key size when greater than 2G modified: storage/connect/xindex.cpp commit9d6677b5eaAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Mon May 8 14:46:15 2017 +0200 _Null_terminated_ not recognized by gcc commit40a56581b0Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon May 8 12:42:12 2017 +0200 Fixing MDEV-12149: compile errors on Windows with /Zc:strictStrings Introduce typedef PCSZ and replace PSZ by it where it matters All done on CONNECT but compile still fails because of an included system file modified: storage/connect/array.cpp modified: storage/connect/catalog.h modified: storage/connect/colblk.cpp modified: storage/connect/colblk.h modified: storage/connect/domdoc.cpp modified: storage/connect/domdoc.h modified: storage/connect/filamdbf.cpp modified: storage/connect/filamdbf.h modified: storage/connect/filamfix.cpp modified: storage/connect/filamgz.cpp modified: storage/connect/filamvct.cpp modified: storage/connect/filamvct.h modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h modified: storage/connect/libdoc.cpp modified: storage/connect/macutil.cpp modified: storage/connect/myconn.cpp modified: storage/connect/myutil.cpp modified: storage/connect/myutil.h modified: storage/connect/odbconn.cpp modified: storage/connect/odbconn.h modified: storage/connect/plgdbsem.h modified: storage/connect/plgdbutl.cpp modified: storage/connect/plgxml.cpp modified: storage/connect/plgxml.h modified: storage/connect/plugutil.cpp modified: storage/connect/preparse.h modified: storage/connect/reldef.cpp modified: storage/connect/reldef.h modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h modified: storage/connect/tabext.cpp modified: storage/connect/tabext.h modified: storage/connect/tabfix.cpp modified: storage/connect/tabfix.h modified: storage/connect/tabfmt.cpp modified: storage/connect/tabfmt.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h modified: storage/connect/tabjson.cpp modified: storage/connect/table.cpp modified: storage/connect/tabmac.cpp modified: storage/connect/tabmgo.cpp modified: storage/connect/tabmul.cpp modified: storage/connect/tabmul.h modified: storage/connect/tabmysql.cpp modified: storage/connect/tabmysql.h modified: storage/connect/tabodbc.cpp modified: storage/connect/tabodbc.h modified: storage/connect/tabpivot.cpp modified: storage/connect/tabpivot.h modified: storage/connect/tabsys.cpp modified: storage/connect/tabsys.h modified: storage/connect/tabutil.cpp modified: storage/connect/tabutil.h modified: storage/connect/tabvir.cpp modified: storage/connect/tabvir.h modified: storage/connect/tabxml.cpp modified: storage/connect/tabxml.h modified: storage/connect/tabzip.cpp modified: storage/connect/tabzip.h modified: storage/connect/valblk.cpp modified: storage/connect/valblk.h modified: storage/connect/value.cpp modified: storage/connect/value.h modified: storage/connect/xindex.cpp modified: storage/connect/xobject.cpp modified: storage/connect/xobject.h modified: storage/connect/xtable.h commite7d91cd783Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat May 6 23:43:02 2017 +0200 Prepare fixing MDEV-12149 compile errors on Windows with /Zc:strictStrings Introduce typedef PCSZ and replace PSZ by it where it matters modified: storage/connect/colblk.h modified: storage/connect/connect.cc modified: storage/connect/domdoc.cpp modified: storage/connect/domdoc.h modified: storage/connect/filamdbf.cpp modified: storage/connect/filamdbf.h modified: storage/connect/filamtxt.h modified: storage/connect/filamvct.cpp modified: storage/connect/filamvct.h modified: storage/connect/filamzip.cpp modified: storage/connect/filamzip.h modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h modified: storage/connect/jdbccat.h modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/odbccat.h modified: storage/connect/odbconn.cpp modified: storage/connect/odbconn.h modified: storage/connect/os.h modified: storage/connect/plgdbsem.h modified: storage/connect/plgxml.cpp modified: storage/connect/plgxml.h modified: storage/connect/reldef.cpp modified: storage/connect/reldef.h modified: storage/connect/tabdos.h modified: storage/connect/tabext.cpp modified: storage/connect/tabext.h modified: storage/connect/tabfix.h modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h modified: storage/connect/tabmgo.h modified: storage/connect/tabmul.h modified: storage/connect/tabmysql.cpp modified: storage/connect/tabmysql.h modified: storage/connect/tabodbc.cpp modified: storage/connect/tabodbc.h modified: storage/connect/tabsys.h modified: storage/connect/tabwmi.cpp modified: storage/connect/tabwmi.h modified: storage/connect/tabxml.cpp modified: storage/connect/tabxml.h modified: storage/connect/tabzip.h modified: storage/connect/xobject.cpp modified: storage/connect/xobject.h modified: storage/connect/xtable.h commitd75d61cd6fAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Fri May 5 23:56:16 2017 +0200 Fix MDEV-12603 Insert replaces values in ZIP file modified: storage/connect/filamzip.cpp modified: storage/connect/filamzip.h Fix MDEV-12686 Handle null in json Fix MDEV-12688 Insert does not handle type TINYINT modified: storage/connect/json.cpp modified: storage/connect/tabjson.cpp commitfd166e0377Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu May 4 18:49:00 2017 +0200 Fix MDEV-12653 Cannot add index for ZIP CONNECT table modified: storage/connect/filamzip.cpp modified: storage/connect/ha_connect.cc modified: storage/connect/tabdos.cpp modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjson.cpp modified: storage/connect/xindex.cpp commitce3c7cd972Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed May 3 10:39:32 2017 +0200 Handle error return from SetPath commit2d85b10060Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed May 3 09:10:26 2017 +0200 Fix gcc compile error. modified: storage/connect/tabmul.cpp commitcd337a3730Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed May 3 01:06:00 2017 +0200 Fix MDEV-12587 MariaDB CONNECT DIR Type - Subfolder Option: SELECT Query Never Ends modified: storage/connect/tabmul.cpp modified: storage/connect/tabmul.h Work on MDEV-12667 Crash when using JSON tables modified: storage/connect/tabmgo.cpp modified: storage/connect/connect.cc modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h modified: storage/connect/plgdbutl.cpp modified: storage/connect/plugutil.cpp Work on MONGO and MGO types modified: storage/connect/mongofam.cpp modified: storage/connect/tabmgo.cpp modified: storage/connect/tabmgo.h Change Base offset for DIR tables on Linux modified: storage/connect/reldef.cpp Typo modified: storage/connect/catalog.h modified: storage/connect/mycat.cc modified: storage/connect/mycat.h Disable all json tests modified: storage/connect/mysql-test/connect/disabled.def commit2f9db4ef70Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Apr 29 23:33:10 2017 +0200 Fix MDEV-12631 valgrind warning for zipped tables modified: storage/connect/filamzip.cpp Add to STRING a member for testing OOM condition modified: storage/connect/xtable.h Work on MONGO type and add some of its features to JSON MGO tables modified: storage/connect/filter.cpp modified: storage/connect/filter.h modified: storage/connect/ha_connect.cc modified: storage/connect/mongofam.cpp modified: storage/connect/mongofam.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h modified: storage/connect/tabmgo.cpp modified: storage/connect/tabmgo.h commitb6135bb51eAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Apr 26 18:38:32 2017 +0200 Continue working on MONGO tables modified: storage/connect/tabmgo.cpp modified: storage/connect/tabmgo.h Add Trc to STRING allowing to test for truncation (ex oom) modified: storage/connect/ha_connect.cc modified: storage/connect/tabext.cpp modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabmysql.cpp modified: storage/connect/tabmysql.h modified: storage/connect/tabodbc.cpp modified: storage/connect/xobject.cpp modified: storage/connect/xobject.h commit36206acc2fAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Apr 25 10:58:34 2017 +0200 Work on new MONGO table type Handle discovery, insert, update and delete Add support for Pipeline modified: storage/connect/tabmgo.cpp modified: storage/connect/tabmgo.h Handle double call to CondPush Cond moved to TDB modified: storage/connect/ha_connect.cc modified: storage/connect/tabext.cpp modified: storage/connect/tabext.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/table.cpp modified: storage/connect/tabmysql.cpp modified: storage/connect/tabodbc.cpp modified: storage/connect/xtable.h Add building Mongo selector to FILTER modified: storage/connect/filter.cpp modified: storage/connect/filter.h Change Print function of values (needed by FILTER) modified: storage/connect/value.cpp modified: storage/connect/value.h Fix crash when dbname is null forJSON MGO tables modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h Fix MDEV-12520: Decimal values can be truncated for JDBC tables modified: storage/connect/jdbconn.cpp Fix bug. Date value was null when retrieved from a json expanded array. modified: storage/connect/tabjson.cpp commit0149f9c2a1Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Apr 17 10:44:51 2017 +0200 Add MONGO table type new file: storage/connect/tabmgo.cpp new file: storage/connect/tabmgo.h modified: storage/connect/ha_connect.cc modified: storage/connect/mycat.cc modified: storage/connect/plgdbsem.h Fix crash when dbname is null forJSON MGO tables modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h commit95af77b1f7Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Apr 14 12:58:47 2017 +0200 Comment out in CMakeLists.txt commitff704368c0Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Apr 13 23:52:39 2017 +0200 Add mongoDB access to json tables. Finalize replacement of longjmp by throw. modified: storage/connect/CMakeLists.txt modified: storage/connect/array.cpp modified: storage/connect/blkfil.cpp modified: storage/connect/colblk.cpp modified: storage/connect/connect.cc modified: storage/connect/filamtxt.cpp modified: storage/connect/filamvct.cpp modified: storage/connect/filter.cpp modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/json.cpp modified: storage/connect/jsonudf.cpp modified: storage/connect/odbconn.cpp modified: storage/connect/plgdbsem.h modified: storage/connect/plgdbutl.cpp modified: storage/connect/plugutil.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabfix.cpp modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h modified: storage/connect/tabmul.cpp modified: storage/connect/tabmysql.cpp modified: storage/connect/tabpivot.cpp modified: storage/connect/tabsys.cpp modified: storage/connect/tabvct.cpp modified: storage/connect/tabvir.cpp modified: storage/connect/tabxml.cpp modified: storage/connect/valblk.cpp modified: storage/connect/value.cpp modified: storage/connect/xindex.cpp modified: storage/connect/xobject.cpp commit9262ae65fcAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Apr 13 21:30:33 2017 +0200 Add mongoDB access to json tables. Filalize replacement oflongjmp by throw. modified: storage/connect/CMakeLists.txt modified: storage/connect/array.cpp modified: storage/connect/blkfil.cpp modified: storage/connect/colblk.cpp modified: storage/connect/connect.cc modified: storage/connect/filamtxt.cpp modified: storage/connect/filamvct.cpp modified: storage/connect/filter.cpp modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/json.cpp modified: storage/connect/jsonudf.cpp modified: storage/connect/odbconn.cpp modified: storage/connect/plgdbsem.h modified: storage/connect/plgdbutl.cpp modified: storage/connect/plugutil.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabfix.cpp modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h modified: storage/connect/tabmul.cpp modified: storage/connect/tabmysql.cpp modified: storage/connect/tabpivot.cpp modified: storage/connect/tabsys.cpp modified: storage/connect/tabvct.cpp modified: storage/connect/tabvir.cpp modified: storage/connect/tabxml.cpp modified: storage/connect/valblk.cpp modified: storage/connect/value.cpp modified: storage/connect/xindex.cpp modified: storage/connect/xobject.cpp commit2c16792995Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Apr 6 19:45:19 2017 +0200 Fix bug. Date value was null when retrieved from a json expanded array. modified: storage/connect/tabjson.cpp Assume timestamp is in milliseconds when it is a big integer that is multiple of 1000. modified: storage/connect/value.cpp commitfcfcd99e64Merge:332c61769064a37f6cabAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Apr 6 00:44:53 2017 +0200 Commit resolved files commit332c617690Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Apr 5 10:22:58 2017 +0200 Export TDBJSN class so it can be used by EOM tables modified: storage/connect/filamtxt.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h commit64a37f6cabMerge:85239bdfeba7bb9e8fdbAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Apr 5 09:43:36 2017 +0300 Merge pull request #352 from grooverdan/10.1-xtradb-fil_crypt_rotate_page xtradb: fil_crypt_rotate_page, space_id should be compared to TRX_SYS_SPACE commita7bb9e8fdbAuthor: Daniel Black <daniel.black@au.ibm.com> Date: Wed Apr 5 16:29:08 2017 +1000 xtradb: fil_crypt_rotate_page, space_id should be compared to TRX_SYS_SPACE not space like9a218f4fb8fil_crypt_rotate_page - space_id should be compared to TRX_SYS_SPACE not space Signed-off-by: Daniel Black <daniel.black@au.ibm.com> commit85239bdfebMerge:9505c968399a218f4fb8Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Apr 5 08:40:47 2017 +0300 Merge pull request #350 from grooverdan/10.1-TRX_SYS_PAGE_NO fil_crypt_rotate_page - space_id should be compared to TRX_SYS_SPACE not space commit9a218f4fb8Author: Daniel Black <daniel.black@au.ibm.com> Date: Tue Apr 4 15:47:21 2017 +1000 fil_crypt_rotate_page - space_id should be compared to TRX_SYS_SPACE not space Fixes compile error that highlights problem: /source/storage/innobase/fil/fil0crypt.cc: In function 'void fil_crypt_rotate_page(const key_state_t*, rotate_thread_t*)': /source/storage/innobase/fil/fil0crypt.cc:1770:15: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] if (space == TRX_SYS_SPACE && offset == TRX_SYS_PAGE_NO) { Signed-off-by: Daniel Black <daniel.black@au.ibm.com> commit9505c96839Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Mon Apr 3 19:36:54 2017 +0300 MDEV-12428 SIGSEGV in buf_page_decrypt_after_read() during DDL Also, some MDEV-11738/MDEV-11581 post-push fixes. In MariaDB 10.1, there is no fil_space_t::is_being_truncated field, and the predicates fil_space_t::stop_new_ops and fil_space_t::is_stopping() are interchangeable. I requested the fil_space_t::is_stopping() to be added in the review, but some added checks for fil_space_t::stop_new_ops were not replaced with calls to fil_space_t::is_stopping(). buf_page_decrypt_after_read(): In this low-level I/O operation, we must look up the tablespace if it exists, even though future I/O operations have been blocked on it due to a pending DDL operation, such as DROP TABLE or TRUNCATE TABLE or other table-rebuilding operations (ALTER, OPTIMIZE). Pass a parameter to fil_space_acquire_low() telling that we are performing a low-level I/O operation and the fil_space_t::is_stopping() status should be ignored. commitac8218a0beAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 31 17:40:42 2017 +0200 fix Ninja builds for AWS SDK specify BUILD_BYPRODUCTS, ninja needs it commit31896aa6e2Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 31 15:25:35 2017 +0200 put all aws_key_management plugin files into plugin/aws_key_management that is, download AWS SDK there, not into the builddir root. and .gitignore them all. commit9de7386f6fAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Fri Mar 31 16:01:37 2017 +0000 AWS KMS plugin : Fix building in case AWS C++ SDK was preinstalled into non-standard compiler/linker path (e.g vcpkg on Windows). Also fix linking with static preinstalled aws c++ sdk libraries commita00517ac97Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 28 19:34:51 2017 +0200 restore the correct linking of ed25519 plugin * add a clarifying comment * apply /wd4244 /wd4146 to ref10 source files, not to the library commit9ab9a28b5dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 27 11:04:06 2017 +0200 disable innodb snappy for release builds commitc56b896c17Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 28 12:28:09 2017 +0300 Fix test failure on debug_key_management test. commit8bd1f06c5aAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Mar 27 15:51:39 2017 +0200 Return to original version of jdbc.test commitefe9982873Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Mar 27 15:40:07 2017 +0200 Fix crash when a line is not ended by \n. modified: storage/connect/filamap.cpp Add specifying a password when reading zipped tables. modified: storage/connect/filamzip.cpp modified: storage/connect/filamzip.h modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h Try Vaintroub suggestion modified: storage/connect/mysql-test/connect/t/jdbc.test commitba298b1f02Merge:716188f1d4c51fc679f5Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Fri Mar 24 18:20:09 2017 +0200 Merge 10.0 into 10.1 commit716188f1d4Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Fri Mar 24 10:02:31 2017 +0100 Fix some warnings on Windows compilation - silence warnings in ed25519 reference implementation - fix signed/unsigned warning in popular header item_func.h commitd7c35a9992Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Thu Mar 23 19:28:36 2017 +0000 Fix compiler error commite5b67a46bcAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Thu Mar 23 11:48:56 2017 +0000 MDEV-12345 Performance : replace calls to clock() inside trx_start_low() by THD::start_utime commit09a2107b1bMerge:bbf0c9d4c30d622bed4fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 21 19:20:44 2017 +0100 Merge branch '10.0' into 10.1 commitbbf0c9d4c3Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 16 09:07:20 2017 +0100 cleanup: pfs_upgrade* tests commit386ef08704Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 13 10:54:08 2017 +0100 MDEV-12233 main.mysql_upgrade_noengine fails in buildbot on ppc64le verify that tests don't leave mysql_upgrade_info in datadir commitcf1ca74736Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Mar 18 12:42:46 2017 +0100 Typo commitd9b7433c98Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Mar 18 10:40:51 2017 +0100 Fix MDEV-12220: add MODE_READX to permissible index read modified: storage/connect/connect.cc commit932a4401f0Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Mar 17 19:00:30 2017 +0100 Fix MDEV-12220: Crash when doing UPDATE or DELETE on an external table (ODBC, JDBC, MYSQL) with a WHERE clause on an indexed column. Also fix a bugs in TDBEXT::MakeCommand (use of uninitialised Quote) Add in this function the eventual Schema (database) prefixing. modified: storage/connect/connect.cc modified: storage/connect/tabext.cpp commitb1ec35b903Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Mar 16 17:30:13 2017 +0200 Add assertions when key rotation list is used. commitc333cae652Author: =Ian Gilfillan <github@greenman.co.za> Date: Thu Mar 16 13:35:36 2017 +0200 MDEV-11964 Add more stub missing man pages commit854359ffc5Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Mar 14 20:44:25 2017 +0000 Fix AWS KMS plugin's compile error Do not include base64.h, it was recently removed. commit50eb40a2a8Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 14 12:56:01 2017 +0200 MDEV-11738: Mariadb uses 100% of several of my 8 cpus doing nothing MDEV-11581: Mariadb starts InnoDB encryption threads when key has not changed or data scrubbing turned off Background: Key rotation is based on background threads (innodb-encryption-threads) periodically going through all tablespaces on fil_system. For each tablespace current used key version is compared to max key age (innodb-encryption-rotate-key-age). This process naturally takes CPU. Similarly, in same time need for scrubbing is investigated. Currently, key rotation is fully supported on Amazon AWS key management plugin only but InnoDB does not have knowledge what key management plugin is used. This patch re-purposes innodb-encryption-rotate-key-age=0 to disable key rotation and background data scrubbing. All new tables are added to special list for key rotation and key rotation is based on sending a event to background encryption threads instead of using periodic checking (i.e. timeout). fil0fil.cc: Added functions fil_space_acquire_low() to acquire a tablespace when it could be dropped concurrently. This function is used from fil_space_acquire() or fil_space_acquire_silent() that will not print any messages if we try to acquire space that does not exist. fil_space_release() to release a acquired tablespace. fil_space_next() to iterate tablespaces in fil_system using fil_space_acquire() and fil_space_release(). Similarly, fil_space_keyrotation_next() to iterate new list fil_system->rotation_list where new tables. are added if key rotation is disabled. Removed unnecessary functions fil_get_first_space_safe() fil_get_next_space_safe() fil_node_open_file(): After page 0 is read read also crypt_info if it is not yet read. btr_scrub_lock_dict_func() buf_page_check_corrupt() buf_page_encrypt_before_write() buf_merge_or_delete_for_page() lock_print_info_all_transactions() row_fts_psort_info_init() row_truncate_table_for_mysql() row_drop_table_for_mysql() Use fil_space_acquire()/release() to access fil_space_t. buf_page_decrypt_after_read(): Use fil_space_get_crypt_data() because at this point we might not yet have read page 0. fil0crypt.cc/fil0fil.h: Lot of changes. Pass fil_space_t* directly to functions needing it and store fil_space_t* to rotation state. Use fil_space_acquire()/release() when iterating tablespaces and removed unnecessary is_closing from fil_crypt_t. Use fil_space_t::is_stopping() to detect when access to tablespace should be stopped. Removed unnecessary fil_space_get_crypt_data(). fil_space_create(): Inform key rotation that there could be something to do if key rotation is disabled and new table with encryption enabled is created. Remove unnecessary functions fil_get_first_space_safe() and fil_get_next_space_safe(). fil_space_acquire() and fil_space_release() are used instead. Moved fil_space_get_crypt_data() and fil_space_set_crypt_data() to fil0crypt.cc. fsp_header_init(): Acquire fil_space_t*, write crypt_data and release space. check_table_options() Renamed FIL_SPACE_ENCRYPTION_* TO FIL_ENCRYPTION_* i_s.cc: Added ROTATING_OR_FLUSHING field to information_schema.innodb_tablespace_encryption to show current status of key rotation. commita2f34809e5Author: Daniel Bartholomew <db@dbart.us> Date: Tue Mar 14 09:56:05 2017 -0400 bump the VERSION commit98be67266dAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Mon Mar 13 23:13:24 2017 +0000 Fix truncation of affected rows and insert id in select_insert::send_ok_packet commit9dc10d5851Merge:68be011cf2032678ad18Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Mon Mar 13 19:17:34 2017 +0200 Merge 10.0 into 10.1 commit68be011cf2Author: Elena Stepanova <elenst@montyprogram.com> Date: Sat Mar 11 20:59:52 2017 +0200 Updated list of unstable tests for 10.1.22 commit2033844319Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Mar 11 12:42:55 2017 +0100 test failures in buildbot commite5f5457b6fAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Mar 11 14:10:34 2017 +0100 Also order the result of multiple=1 table, otherwise being different on Linux and Windows causing the test to fail. modified: storage/connect/mysql-test/connect/r/mul_new.result modified: storage/connect/mysql-test/connect/t/mul_new.test commitf0ec34002aAuthor: iangilfillan <github@greenman.co.za> Date: Fri Feb 10 13:26:55 2017 +0200 Correct FSF address commit2a0ae1c90aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 7 19:21:42 2017 +0100 MDEV-11965 -Werror should not appear in released tarballs commit5d40ed864eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 7 19:17:37 2017 +0100 MDEV-11752 Unsafe strmov - function definition in include/m_string.h assert that strmov() cannot be used on overlapping strings. (because strpcpy cannot) commite0a03ca30aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 6 01:27:34 2017 +0100 ed25519 plugin: simplify the api various ed25519/ref10 api simplifications for our specific use case commit7120118a5eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Mar 5 16:18:16 2017 +0100 MDEV-12160 Modern alternative to the SHA1 authentication plugin ED25519 authentication plugin commit269ab56f8bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 6 22:42:00 2017 +0100 small plugin API related fixes * define MYSQL_DYNAMIC_PLUGIN only for server plugins * don't typedef my_bool in mysql.h if plugin.h has already done it * fix the include guard in plugin.h commit227f63db3bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 6 19:37:48 2017 +0100 cleanup: sort various lists of services commit0877eff401Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 6 19:34:22 2017 +0100 thd_rnd service commit6305533de2Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 6 17:32:18 2017 +0100 Auth Plugin API: add THD to MYSQL_SERVER_AUTH_INFO so that auth plugins could use various thd services commit051851b9a6Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 6 17:05:03 2017 +0100 base64 service commit70a2efde03Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 6 15:31:25 2017 +0100 remove old API for SHA2 commitd6a7aece08Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 6 13:06:03 2017 +0100 my_sha2 service commitbd1139ad27Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 6 12:45:36 2017 +0100 cleanup: generalize my_sha1.cc move most of the code into my_sha.ic, making it independent from the actual SHAx variant. commit6cddd12ad6Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Mar 5 15:50:32 2017 +0100 make sql_udf.cc to shorten dlerror() messages just as sql_plugin.cc does commit2b1bbac5faAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Mar 5 20:51:31 2017 +0100 cleanup: remove a duplicate file commitaa51b559abAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 6 15:07:46 2017 +0100 typo fixed commit0633d0e2edAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Mar 8 14:54:12 2017 +0100 don't show 'performance_schema_%_classes_lost' variables in tests because FLUSH STATUS does not reset them, so their values are affected by previously run tests since the last server restart. commit3d06f0f72cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Mar 4 17:17:00 2017 +0100 MDEV-11942 BLACKHOLE is no longer active in 10.1 by default, mysql_upgrade not handling the situation fix the patch. add tests commitc372388e48Author: Hartmut Holzgraefe <hartmut@mariadb.com> Date: Tue Feb 7 22:56:28 2017 +0100 make mysql_upgrade try to install missing storage engine plugins (MDEV-11942) commit8f1ca5e311Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 3 15:27:19 2017 +0100 MDEV-11943 I_S.TABLES inconsistencies with tables with unknown storage engine Try harder to show the table's engine. If the table's engine is not loaded, the table won't open. But we can still read the engine name from frm as a string. commit48b1d17534Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 2 15:36:18 2017 +0100 MDEV-11943 I_S.TABLES inconsistencies with tables with unknown storage engine Make SELECT <columns> FROM I_S.TABLES behave identically independently from whether <columns> require opening the table in engine or <columns> can be filled with only opening the frm. In particular, fill_schema_table_from_frm() should not silently skip frms with unknown engine, but should fill the I_S.TABLES row with NULLs just like fill_schema_table_by_open() does. commit25c32c89f1Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 2 14:04:14 2017 +0100 trivial cleanup commit8eb66bc382Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 2 20:59:29 2017 +0100 cleanup: change dd_frm_type() to return the engine name, not legacy_db_type this simplifies the code and avoids unnecessary conversions back and forth. and it works even if the engine is not installed. commit1c8d2121abAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 2 06:53:07 2017 +0100 don't do vio_description(NULL) this fixes the crash of innodb.innodb-blob --ps-protocol commit5fa04aae9eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Mar 1 23:52:35 2017 +0100 MDEV-11842 Fail to insert on a table where a field has no default has_no_default_value() should only fail the insert in the strict mode. Additionally, don't check for "all fields are given values" twice, it'll produce duplicate warnings. commitb6a1d6538bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 10 16:25:01 2017 +0100 compiler warnings commit2d573a6c5aAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Mar 10 17:53:36 2017 +0100 CONNECT Storage Engine: Support of ENUM and SET column types for MYSQL tables. modified: storage/connect/myconn.cpp modified: storage/connect/myutil.cpp Order the result of multiple=3 table, otherwise being different on Linux and Windows causing the test to fail. modified: storage/connect/mysql-test/connect/r/mul_new.result modified: storage/connect/mysql-test/connect/t/mul_new.test commit0094b6581dMerge:814d0507601d47bd61d5Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Fri Mar 10 15:16:13 2017 +0200 Merge 10.0 into 10.1 commit814d050760Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Fri Mar 10 14:07:22 2017 +0200 MDEV-12215: main.repair_symlink-5543 fails in buildbot If openat is present on the system and it tries to open a symlink with O_NOFOLLOW, we get errno 40. If openat is not present on the system, we use the alternative open call, with slightly different logic. IF the symlink doesn't point to a valid file, we get errno 20. This test uses an invalid symlink on the table t1.MYD. commit18de829618Author: iangilfillan <github@greenman.co.za> Date: Thu Mar 9 13:18:40 2017 +0200 MDEV-11964 Add missing stub manpages commitbf6cadf923Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Mar 10 00:28:26 2017 +0100 CONNECT Storage Engine: The last commited changes have brought important additions to CONNECT. 1 - Replacement of setjmp/longjump's by try/catch/throw 2 - Support of multiple tables in subdirectories 3 - Support translating ENUM to VARCHAR for MYSQL tables. 4 - Tables based on ZIP files Support ENUM data type for MYSQL tables. modified: storage/connect/myconn.cpp modified: storage/connect/myutil.cpp Fix typo causing the test to fail on Linux. modified: storage/connect/mysql-test/connect/r/mul_new.result modified: storage/connect/mysql-test/connect/t/mul_new.test commitcdc7a69ea2Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Mar 9 16:28:11 2017 +0100 CONNECT DIR tables: fix retrieving file date values under Windows. modified: storage/connect/tabmul.cpp modified: storage/connect/tabmul.h commit07d89fa59cAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Thu Mar 9 16:52:57 2017 +0200 Remove leftover merge conflict marker commit5aacb861f2Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Mar 9 14:45:52 2017 +0200 WSREP: Use TRX_ID_FMT for trx_id_t in messages. commitb28adb6a62Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Mar 9 15:09:44 2017 +0200 Fix an error introduced in the previous commit. fil_parse_write_crypt_data(): Correct the comparison operator. This was broken in commit498f4a825bwhich removed a signed/unsigned mismatch in these comparisons. commit498f4a825bAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Mar 9 08:54:07 2017 +0200 Fix InnoDB/XtraDB compilation warnings on 32-bit builds. commitad0c218a44Merge:bb4ef470c29fe92a9770Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Mar 8 19:44:22 2017 +0200 Merge 10.0 into 10.1 Also, implement MDEV-11027 a little differently from 5.5 and 10.0: recv_apply_hashed_log_recs(): Change the return type back to void (DB_SUCCESS was always returned). Report progress also via systemd using sd_notifyf(). commit95667ae294Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Mar 8 23:30:24 2017 +0100 Fix errors in function TDBSDR::FindInDir. Comment out PSYSTEMTIME stp not used in DIRCOL::ReadColumn causing a compile error won Linux? modified: storage/connect/tabmul.cpp modified: storage/connect/tabmul.h commitbb4ef470c2Author: iangilfillan <github@greenman.co.za> Date: Wed Mar 8 17:35:55 2017 +0200 Minor wording fix in mysqladmin man page commitfc8cf00429Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Mar 8 11:12:36 2017 +0100 Implement sub-directory search for multiple tables. This is specifies by MULTIPLE=3 when creating the table. modified: storage/connect/tabmul.cpp modified: storage/connect/tabmul.h added: storage/connect/mysql-test/connect/r/mul_new.result added: storage/connect/mysql-test/connect/t/mul_new.test Update version date modified: storage/connect/ha_connect.cc commit19629ebf81Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Mar 7 15:06:01 2017 +0400 MDEV-10646 - System Unit File After network-online Bind to an address even if it is not yet configured. commitfa137476ffAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Mar 3 12:33:24 2017 +0400 MDEV-11941 - Lintian complains about executable bits Revoked executable bit from files that are not supposed to be executed directly. Removed interpreted from files that are not supposed to be executed directly. Added interpreter to files that are supposed to be executed directly. commitaeff61ee58Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Mar 7 17:27:27 2017 +0400 MDEV-12064 Bug#18411494 WRONG COMPARSION ON BIG DECIMAL VALUES. Test results updated. commitea31755760Author: Christian Hesse <mail@eworm.de> Date: Thu Jan 5 12:07:26 2017 +0100 properly set paths in systemd unit files Use variables in systemd unit file templetes to properly set paths in final systemd unit files. commitdbd1d7ea8eAuthor: Jean Weisbuch <jean@phpnet.org> Date: Mon Jan 23 11:58:41 2017 +0100 Updated innotop on debian/additions from 1.7.1 to 1.11.4 commit7be541f281Author: klemens <ka7@github.com> Date: Sun Feb 26 16:49:47 2017 +0100 spelling fixes commite823023e4bAuthor: Tor Didriksen <tor.didriksen@oracle.com> Date: Tue Apr 21 08:32:31 2015 +0200 Bug#18411494 WRONG COMPARSION ON BIG DECIMAL VALUES Problem: integer literals may be converted to floats for comparison with decimal data. If the integers are large, we may lose precision, and give wrong results. Fix: for <non-const decimal expression> <cmp> <const string expression> or <const string expression> <cmp> <non-const decimal expression> we override the compare_type chosen by item_cmp_type(), and do comparison as decimal rather than float. (cherry picked from commit1cf3489ba4and edited by Johannes Weißl <jargon@molb.org>) commit68d632bc5aAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Mon Mar 6 10:02:01 2017 +0200 Replace some functions with macros. This is a non-functional change. On a related note, the calls fil_system_enter() and fil_system_exit() are often used in an unsafe manner. The fix of MDEV-11738 should introduce fil_space_acquire() and remove potential race conditions. commitc4471352dbAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Mar 5 23:54:54 2017 +0100 Fix MDEV-12142 crash when creating CSV table Was an unprepared longjmp (now throw) Also fix a wrong calculation of To_Line sometimes causing a crash because of buffer overflow. modified: storage/connect/tabdos.cpp Fix a wrong setting of USER for JDBC tables in connect_assisted_discovery. Update jdbc_new.test after that fix, which changed errors. modified: storage/connect/ha_connect.cc modified: storage/connect/mysql-test/connect/r/jdbc_new.result modified: storage/connect/mysql-test/connect/t/jdbc_new.test Make using try/catch/throw the default option modified: storage/connect/CMakeLists.txt Typo modified: storage/connect/xindex.cpp commite52bf14714Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Mar 5 19:43:17 2017 +0100 Replace setjmp-longjmp's by try_catch-throw modified: storage/connect/CMakeLists.txt modified: storage/connect/array.cpp modified: storage/connect/blkfil.cpp modified: storage/connect/colblk.cpp modified: storage/connect/connect.cc modified: storage/connect/filamtxt.cpp modified: storage/connect/filamvct.cpp modified: storage/connect/filter.cpp modified: storage/connect/global.h modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/json.cpp modified: storage/connect/jsonudf.cpp modified: storage/connect/odbconn.cpp modified: storage/connect/osutil.c modified: storage/connect/plgdbutl.cpp deleted: storage/connect/plugutil.c added: storage/connect/plugutil.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabfix.cpp modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabmul.cpp modified: storage/connect/tabmul.h modified: storage/connect/tabmysql.cpp modified: storage/connect/tabodbc.cpp modified: storage/connect/tabodbc.h modified: storage/connect/tabpivot.cpp modified: storage/connect/tabsys.cpp modified: storage/connect/tabvct.cpp modified: storage/connect/tabvir.cpp modified: storage/connect/tabxml.cpp modified: storage/connect/valblk.cpp modified: storage/connect/value.cpp modified: storage/connect/xindex.cpp modified: storage/connect/xobject.cpp commitadc91387e3Merge:bc28b305e529c776cfd1Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Fri Mar 3 13:27:12 2017 +0200 Merge 10.0 into 10.1 commitbc28b305e5Author: Daniel Black <daniel.black@au.ibm.com> Date: Mon Feb 20 11:36:33 2017 +1100 Remove warning: unused variable 'volatile_var' [-Wunused-variable] This occured in gcc-6.2.1. The variable wasn't used so was no need to be volatile either. Signed-off-by: Daniel Black <daniel.black@au.ibm.com> commit88b5eedef2Merge:ad2e38153ce2d6760d8aAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Mar 2 08:29:52 2017 +0200 Merge pull request #312 from grooverdan/10.0-MDEV-10515-stat_tables_par-test-fix MDEV-10515: Correct stat_tables_par test results commit180fe61c1aAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Mar 1 12:17:25 2017 +0100 Update version number and date modified: storage/connect/ha_connect.cc Add conditional SE exception support modified: storage/connect/json.cpp modified: storage/connect/plgdbutl.cpp Change %p in %x in some sprintf functions. This to avoid some compiler warnings. modified: storage/connect/tabwmi.cpp modified: storage/connect/tabxml.cpp modified: storage/connect/value.h Add JavaWrappers.jar to the class path modified: storage/connect/jdbconn.cpp Fix wrong declare (char *buf[256]; --> char buf[256];) modified: storage/connect/xindex.cpp commitad2e38153cAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Mar 1 10:07:54 2017 +0000 AWS key management plugin: Fix search for system installed AWS SDK libs commit62cd105689Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Feb 24 23:15:28 2017 +0100 Fix crashing when joining two JDBC tables.. Was in close (the virtual machine could have been detached. modified: storage/connect/jdbconn.cpp commit7f7673033eAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Feb 22 19:55:54 2017 +0200 Remove an unused variable. commitec4cf111c0Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Feb 22 17:17:00 2017 +0200 MDEV-11520 after-merge fix for 10.1: Use sparse files. If page_compression (introduced in MariaDB Server 10.1) is enabled, the logical action is to not preallocate space to the data files, but to only logically extend the files with zeroes. fil_create_new_single_table_tablespace(): Create smaller files for ROW_FORMAT=COMPRESSED tables, but adhere to the minimum file size of 4*innodb_page_size. fil_space_extend_must_retry(), os_file_set_size(): On Windows, use SetFileInformationByHandle() and FILE_END_OF_FILE_INFO, which depends on bumping _WIN32_WINNT to 0x0600. FIXME: The files are not yet set up as sparse, so this will currently end up physically extending (preallocating) the files, wasting storage for unused pages. os_file_set_size(): Add the parameter "bool sparse=false" to declare that the file is to be extended logically, instead of being preallocated. The only caller with sparse=true is fil_create_new_single_table_tablespace(). (The system tablespace cannot be created with page_compression.) fil_space_extend_must_retry(), os_file_set_size(): Outside Windows, use ftruncate() to extend files that are supposed to be sparse. On systems where ftruncate() is limited to files less than 4GiB (if there are any), fil_space_extend_must_retry() retains the old logic of physically extending the file. commite1e920bf63Merge:3c47ed4849a0ce92ddc7Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Feb 22 15:53:05 2017 +0200 Merge 10.0 into 10.1 commit3c47ed4849Merge:ba4d0a1b3513493078e9Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Mon Feb 20 14:02:40 2017 +0200 Merge 10.0 into 10.1 commitba4d0a1b35Author: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Feb 17 12:47:09 2017 +0400 There's no systemd socket activation support yet commit32170cafadAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Feb 16 11:12:24 2017 +0200 MDEV-12075 innodb_use_fallocate does not work in MariaDB Server 10.1.21 fil_space_extend_must_retry(): When innodb_use_fallocate=ON, initialize pages_added = size - space->size so that posix_fallocate() will actually attempt to extend the file, instead of keeping the same size. This is a regression from MDEV-11556 which refactored the InnoDB data file extension. commite2d6760d8aAuthor: Daniel Black <daniel.black@au.ibm.com> Date: Thu Feb 16 16:42:25 2017 +1100 MDEV-10515: Correct stat_tables_par test results Test results are distorted by a small rounding error during an intermediate stage of calculating the result. By using the SQL ROUND function we stablise tests. Signed-off-by: Daniel Black <daniel.black@au.ibm.com> commit403ef9918fAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Feb 15 00:30:00 2017 +0100 Fix gcc compile error on friend declaration. "friend TDBEXT" must specified as "friend class TDBEXT" modified: storage/connect/tabext.h commit6aa144f8d6Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Feb 14 21:15:26 2017 +0100 Fix gcc compile error on strlwr. modified: storage/connect/tabext.cpp commit41b4ef4348Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Feb 14 15:38:07 2017 +0100 Add the tabext.cpp and tabext.h files in the source list. modified: storage/connect/CMakeLists.txt commit5c2c68d454Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Feb 14 12:20:20 2017 +0100 This is a major update concerning many source files. Fix MDEV-12035. modified: storage/connect/jsonudf.cpp Working on MDEV-11832: Srcdef performance enhancement This require to mark place holders into srcdef to indicate where to insert the where/having clauses that are retrieved in push_cond. However this also make necessary to handle aliases in the srcdef. This was the opportunity to base all external tables on common classes called EXTDEF, TABEXT and EXTCOL. modified: storage/connect/array.cpp modified: storage/connect/array.h modified: storage/connect/colblk.cpp modified: storage/connect/connect.cc modified: storage/connect/filamdbf.cpp modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/mycat.cc modified: storage/connect/myconn.cpp modified: storage/connect/odbconn.cpp modified: storage/connect/plgdbsem.h modified: storage/connect/reldef.cpp modified: storage/connect/reldef.h modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h modified: storage/connect/tabfix.cpp modified: storage/connect/tabfix.h modified: storage/connect/tabfmt.cpp modified: storage/connect/tabfmt.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h modified: storage/connect/table.cpp modified: storage/connect/tabmac.cpp modified: storage/connect/tabmac.h modified: storage/connect/tabmul.cpp modified: storage/connect/tabmul.h modified: storage/connect/tabmysql.cpp modified: storage/connect/tabmysql.h modified: storage/connect/taboccur.cpp modified: storage/connect/tabodbc.cpp modified: storage/connect/tabodbc.h modified: storage/connect/tabpivot.cpp modified: storage/connect/tabpivot.h modified: storage/connect/tabsys.cpp modified: storage/connect/tabsys.h modified: storage/connect/tabtbl.cpp modified: storage/connect/tabutil.cpp modified: storage/connect/tabutil.h modified: storage/connect/tabvct.cpp modified: storage/connect/tabvct.h modified: storage/connect/tabvir.cpp modified: storage/connect/tabwmi.cpp modified: storage/connect/tabxcl.cpp modified: storage/connect/tabxcl.h modified: storage/connect/tabxml.cpp modified: storage/connect/tabxml.h modified: storage/connect/xindex.cpp modified: storage/connect/xindex.h modified: storage/connect/xobject.h modified: storage/connect/xtable.h added: storage/connect/tabext.cpp added: storage/connect/tabext.h commit74a5638a1dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Feb 13 18:40:24 2017 -0500 MDEV-11530: wsrep_info.plugin fails sporadically in buildbot Add the warning to the global_suppressions list. commit66822f164fAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Sat Feb 11 01:14:06 2017 +0200 Follow-up to MDEV-10731 - fix the broken test commitde9963b786Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Feb 10 17:41:35 2017 +0200 After reivew fixes. commit41cd80fe06Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Feb 10 16:05:37 2017 +0200 After review fixes. commitc2b217e243Author: Varun Gupta <varunraiko1803@gmail.com> Date: Thu Feb 9 22:23:26 2017 +0530 MDEV-10731: Wrong NULL match results in "Subquery returns more than 1 row" (error code 1242) NOT NULL predicate was not added to tables in case of an update query having a subquery. commit99b2de92c6Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Feb 9 09:36:10 2017 +0200 Post-push fix for MDEV-11623: Remove an unused variable. commitef065dbbc2Merge:03400676086011fb6daaAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Feb 9 08:51:52 2017 +0200 Merge 10.0 into 10.1 commit0340067608Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Feb 7 20:08:07 2017 +0200 After review fixes for MDEV-11759. buf_page_is_checksum_valid_crc32() buf_page_is_checksum_valid_innodb() buf_page_is_checksum_valid_none(): Use ULINTPF instead of %lu and %u for ib_uint32_t fil_space_verify_crypt_checksum(): Check that page is really empty if checksum and LSN are zero. fil_space_verify_crypt_checksum(): Correct the comment to be more agurate. buf0buf.h: Remove unnecessary is_corrupt variable from buf_page_t structure. commit9017a05d87Merge:981534b1ddd831e4c22aAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Feb 8 17:30:25 2017 +0200 Merge 10.0 into 10.1 commit981534b1ddAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Feb 8 11:40:09 2017 +0200 Remove unnecessary have_debug.inc, not_valgrind.inc Use include/kill_and_restart_mysqld.inc instead of triggering DBUG_SUICIDE() with debug instrumentation. In this way, more tests can be run with --valgrind or on non-debug servers. commitcbdc389ec9Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Feb 8 11:35:35 2017 +0200 MDEV-12022 InnoDB wrongly ignores the end of an .ibd file InnoDB can wrongly ignore the end of data files when using innodb_page_size=32k or innodb_page_size=64k. These page sizes use an allocation extent size of 2 or 4 megabytes, not 1 megabyte. This issue does not affect MariaDB Server 10.2, which is using the correct WL#5757 code from MySQL 5.7. That said, it does not make sense to ignore the tail of data files. The next time the data file needs to be extended, it would be extended to a multiple of the extent size, once the size exceeds one extent. commit06a7923f4fAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Feb 8 10:06:18 2017 +0200 Remove some more error log spam. Do not effectively set DEBUG_DBUG='d' by setting DEBUG_DBUG='-d,...'. Instead, restore the saved value of DEBUG_DBUG. Also, split the test innodb_fts.innodb_fts_misc_debug into innodb_fts.crash_recovery and innodb_fts.misc_debug, and enable these tests for --valgrind, the latter test for --embedded, and the former tests for the non-debug server. commit257eea3dacAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Tue Feb 7 16:09:24 2017 +0200 Remove some error log spam by not effectively setting DEBUG_DBUG='d'. Thanks to Sergei Golubchik for this suggestion. commit2e67e66c3aMerge:6da2adfaa2f162704570Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Feb 8 08:53:34 2017 +0200 Merge 10.0 into 10.1 commit6da2adfaa2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 7 13:54:46 2017 -0500 MDEV-12005: GET_LOCK: Fractional part of timeout is ignored In order to include the fractional part, convert lock_wait_timeout (in secs) to nanoseconds before calculating the absolute time for timeout. commit5c7111cb7cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Feb 7 14:32:09 2017 +0200 Add suppression for page corruption caused by error injection. commite53dfb24beAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Feb 6 10:55:23 2017 +0200 MDEV-11707: Fix incorrect memset() for structures containing dynamic class GenericPolicy<TTASEventMutex<GenericPolicy> >'; vtable Instead using mem_heap_alloc and memset, use mem_heap_zalloc directly. commitddf2fac733Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Feb 6 10:47:55 2017 +0200 MDEV-11759: Encryption code in MariaDB 10.1/10.2 causes compatibility problems Pages that are encrypted contain post encryption checksum on different location that normal checksum fields. Therefore, we should before decryption check this checksum to avoid unencrypting corrupted pages. After decryption we can use traditional checksum check to detect if page is corrupted or unencryption was done using incorrect key. Pages that are page compressed do not contain any checksum, here we need to fist unencrypt, decompress and finally use tradional checksum check to detect page corruption or that we used incorrect key in unencryption. buf0buf.cc: buf_page_is_corrupted() mofified so that compressed pages are skipped. buf0buf.h, buf_block_init(), buf_page_init_low(): removed unnecessary page_encrypted, page_compressed, stored_checksum, valculated_checksum fields from buf_page_t buf_page_get_gen(): use new buf_page_check_corrupt() function to detect corrupted pages. buf_page_check_corrupt(): If page was not yet decrypted check if post encryption checksum still matches. If page is not anymore encrypted, use buf_page_is_corrupted() traditional checksum method. If page is detected as corrupted and it is not encrypted we print corruption message to error log. If page is still encrypted or it was encrypted and now corrupted, we will print message that page is encrypted to error log. buf_page_io_complete(): use new buf_page_check_corrupt() function to detect corrupted pages. buf_page_decrypt_after_read(): Verify post encryption checksum before tring to decrypt. fil0crypt.cc: fil_encrypt_buf() verify post encryption checksum and ind fil_space_decrypt() return true if we really decrypted the page. fil_space_verify_crypt_checksum(): rewrite to use the method used when calculating post encryption checksum. We also check if post encryption checksum matches that traditional checksum check does not match. fil0fil.ic: Add missed page type encrypted and page compressed to fil_get_page_type_name() Note that this change does not yet fix innochecksum tool, that will be done in separate MDEV. Fix test failures caused by buf page corruption injection. commitbc4686f0f4Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jan 30 14:50:58 2017 -0500 Minor test improvement commitcd8482c19eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jan 30 14:49:44 2017 -0500 MDEV-11945: Fix description for "max_statement_time" in --help max_statement_time also applies to non-SELECT queries. commitaa9db4c162Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Jan 29 13:21:38 2017 -0500 MDEV-11817: Altering a table with more rows than .. .. wsrep_max_ws_rows causes cluster to break when running Galera cluster in TOI mode Problem: While copying records to temporary table during ALTER TABLE, if there are more than wsrep_max_wsrep_rows records, the command fails. Fix: Since, the temporary table records are not placed into the binary log, wsrep_affected_rows must not be incremented. Added a test. commit17cc619847Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Jan 31 15:42:52 2017 +0200 MDEV-11671: Duplicated [NOTE] output for changed innodb_page_size Remove duplicated output and change output level to info. commit41997d148dAuthor: Sachin Setiya <sachin.setiya@mariadb.com> Date: Fri Jan 27 11:15:45 2017 +0530 MDEV-10812 WSREP causes responses being sent to protocol commands that must not send a response Problem:- When using wsrep (w/ galera) and issuing commands that can cause deadlocks, deadlock exception errors are sent in responses to commands such as close prepared statement and close connection which, by spec, must not send a response. Solution:- In dispatch_command, we will handle COM_QUIT and COM_STMT_CLOSE commands even in case of error. Patch Credit:- Jaka Močnik commitbb1e8e4367Author: Sachin Setiya <sachin.setiya@mariadb.com> Date: Tue Jan 31 10:02:37 2017 +0530 Mdev-4774- Fix tests cases commit1ebfeceeb2Merge:f1f8ebc3254e82aaab2fAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Fri Jan 27 16:14:20 2017 +0200 Merge 10.0 into 10.1 (test-only changes) Adjust the 10.1 tests innodb.doublewrite and innodb.101_compatibility in the same way. commitf1f8ebc325Merge:6fbfb4c83cafb461587cAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Jan 26 23:40:11 2017 +0200 Merge 10.0 into 10.1 commit6fbfb4c83cMerge:4113f1a7b7ee3febae04Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Jan 26 16:19:29 2017 +0200 Merge pull request #298 from iangilfillan/10.1 Minor typo commitee3febae04Author: iangilfillan <github@greenman.co.za> Date: Thu Jan 26 13:51:03 2017 +0200 Minor typo commit4113f1a7b7Merge:86ca1357b09394bc06d8Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jan 26 02:57:12 2017 +0300 Merge branch 'grooverdan-10.1-MDEV-11866-ANALYZE-FORMAT=JSON-volatility-normalise' into 10.1 commit9394bc06d8Merge:86ca1357b010b1f4dd09Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jan 26 02:56:49 2017 +0300 Merge branch '10.1-MDEV-11866-ANALYZE-FORMAT=JSON-volatility-normalise' of git://github.com/grooverdan/mariadb-server into grooverdan-10.1-MDEV-11866-ANALYZE-FORMAT=JSON-volatility-normalise commit86ca1357b0Author: Sachin Setiya <sachinsetia1001@gmail.com> Date: Tue Jan 24 19:26:16 2017 +0530 Revert "MDEV-7409 On RBR, extend the PROCESSLIST info to include at least the name of the recently used table" This reverts commit15f46d5174. commit15f46d5174Author: Sachin Setiya <sachinsetia1001@gmail.com> Date: Mon Jan 23 22:27:42 2017 +0530 MDEV-7409 On RBR, extend the PROCESSLIST info to include at least the name of the recently used table When RBR is used, add the db name to db Field and table name to Status Field of the "SHOW FULL PROCESSLIST" command for SQL thread. commit10b1f4dd09Author: Daniel Black <daniel.black@au.ibm.com> Date: Mon Jan 23 13:32:57 2017 +1100 MDEV-11866: ANALYZE FORMAT=JSON not predicatable for r_total_time_ms/r_buffer_size [0-9]*[.]?[0-9]* wasn't a sufficient regex to cover the %lg used in Json_writer::add_double. Exponent formats where missed. Here we normalize all the replace_regex expressions for ANALYZE FORMAT=JSON into one include file. Signed-off-by: Daniel Black <daniel.black@au.ibm.com> commitb7b4c332c0Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sun Jan 22 08:44:04 2017 +0200 MDEV-11614: Syslog messages: "InnoDB: Log sequence number at the start 759654123 and the end 0 do not match." For page compressed and encrypted tables log sequence number at end is not stored, thus disable this message for them. commit213fc700b6Author: Varun Gupta <varunraiko1803@gmail.com> Date: Sat Jan 21 00:56:33 2017 +0530 MDEV-10232: Scalar result of subquery changes after adding an outer select stmt In a subquery, we don't have to maintain order Added a fix such that order is considered when there is a limit clause. commit8a4d605500Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Jan 19 12:20:54 2017 +0200 MDEV-11838: Innodb-encryption-algorithm default should be != none Change default to zlib, this has effect only if user has explicitly requested page compression and then user naturally expects that pages are really compressed if they can be compressed. commitdc557ca817Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Jan 19 08:19:08 2017 +0200 MDEV-11835: InnoDB: Failing assertion: free_slot != NULL on restarting server with encryption and read-only buf0buf.cc: Temporary slots used in encryption was calculated by read_threads * write_threads. However, in read-only mode write_threads is zero. Correct way is to calculate (read_threads + write_threads) * max pending IO requests. commita14638581bAuthor: Daniel Bartholomew <db@dbart.us> Date: Wed Jan 18 08:39:18 2017 -0500 bump the VERSION commitf7d030489dMerge:f797ea71246728aae3b3Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jan 17 20:17:35 2017 +0100 Merge branch '10.0' into 10.1 commitf797ea7124Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 16 18:47:53 2017 +0100 MDEV-11601 Out-of-bounds string access in create_schema_table() in Item_partition_func_safe_string(THD *thd, const char *name_arg, uint length, CHARSET_INFO *cs= NULL), the 'name_arg' is the value of the string constant and 'length' is the length of this constant, so length == strlen(name_arg). commitef8003eb9aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 16 18:23:02 2017 +0100 MDEV-11698 Old Bug possibly not fixed; BEFORE INSERT Trigger on NOT NULL check_that_all_fields_are_given_values() relied on write_set, but was run too early, before triggers updated write_set. also, when triggers are present, fields might get values conditionally, so we need to check that all fields are given values for every row. commite79e840607Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jan 17 14:09:38 2017 +0100 selinux fixes for 10.0->10.1 merge 1. don't put generated files into ${CMAKE_CURRENT_SOURCE_DIR} 2. policy file name must match the module name (Fedora 24 requirement) commit736afe8680Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Jan 13 11:25:38 2017 +0100 mysql_install_db enhancements to facilitate Debian bug#848616 fix In Debian, the default install is made more secure by omitting the anonymous user and by making the root account authenticate by unix socket authentication instead of the default password-less root. However, Debian hard-codes this change in mysql_install_db, which breaks that program for other users. This commit instead implements new general options for mysql_install_db that can be used by anyone to similarly perform a more secure install: --skip-auth-anonymous-user: omits the anonymous user. --auth-root-authentication-method=normal: Keeps the existing behaviour with a password-less root account. Currently on by default. --auth-root-socket-user=USER --auth-root-authentication-method=socket: creates the MariaDB root user with the name USER (defaults to 'root') and using unix socket authentication. This way, only that user has MariaDB root access after install. The idea with --auth-root-authentication-method=normal is that applications that need this behaviour can give that option explicitly. Then eventually we could make --auth-root-authentication-method=socket the default, giving a more secure default installation. Note that it is perfectly possible to do a secure install with --auth-root-authentication-method=normal. For example, installing a private server just for local access by a single OS-level user, by using --skip-networking and putting the connection socket in a location without public access. So it is important to preserve this API for backwards compatibility. commit719e81132dMerge:30a9ac42503e589d4b8eAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Jan 17 17:11:28 2017 +0100 Merge branch '10.0' into 10.1 commit30a9ac4250Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Jan 17 15:32:41 2017 +0400 MDEV-10956 Strict Password Validation Breaks Replication. strict_password_validation variable now has no effect in the slave thread. commit9fa0d2fe98Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Jan 17 10:42:41 2017 +0100 Replace bios.json CRLF by LF to avoid test failing on Linux. modified: storage/connect/mysql-test/connect/r/zip.result modified: storage/connect/mysql-test/connect/std_data/bios.json commit3953c55978Merge:1e192e901c0349712937Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Jan 17 04:17:26 2017 +0200 Merge remote-tracking branch 'origin/10.1' into 10.1 commit1e192e901cAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Jan 17 02:35:16 2017 +0200 Post merge review fixes * Remove duplicate lines from tests * Use thd instead of current_thd * Remove extra wsrep_binlog_format_names * Correctly merge union patch from 5.5 wrt duplicate rows. * Correctly merge SELinux changes into 10.1 commitd807e41511Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Jan 17 00:37:20 2017 +0200 Post merge fix sysvars_innodb for xtradb commit286819aef2Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jan 16 22:42:56 2017 +0100 Fix gcc errors and warnings. modified: storage/connect/filamzip.cpp Remove unused variables in connect_assisted_discovery modified: storage/connect/ha_connect.cc commitb1bd990e45Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jan 16 18:57:35 2017 +0100 Add #include <fnmatch.h> #include <dirent.h> to avoid compile error on Linux. modified: storage/connect/filamzip.cpp commitc7446daeb6Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jan 16 18:03:09 2017 +0100 Add #include <fnmatch.h> #include <stdlib.h> #include <stdio.h> #include <string.h> to avoid compile error on Linux. modified: storage/connect/filamzip.cpp commit0349712937Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Mon Jan 16 18:26:14 2017 +0200 MDEV-11623 follow-up: Adjust one more test. The function fsp_flags_try_adjust(), which is called on startup, is incrementing the Innodb_pages0_read counts for every affected file. Adjust the result of encryption.innodb_lotoftables accordingly. commit0cb9369b37Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jan 16 17:18:54 2017 +0100 Add #include <fnmatch.h> to avoid compile error on Linux. modified: storage/connect/filamzip.cpp Remove unused file deleted: storage/connect/JdbcInterface.jar commit707cd98592Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jan 16 15:13:40 2017 +0100 Fix info cardinality for catalog tables. Was returning 0, which caused an assert error when retreiving records. modified: storage/connect/connect.cc modified: storage/connect/xtable.h Add the create and insert possibility to zipped tables modified: storage/connect/domdoc.cpp modified: storage/connect/domdoc.h modified: storage/connect/filamzip.cpp modified: storage/connect/filamzip.h modified: storage/connect/ha_connect.c modified: storage/connect/plgdbutl.cpp modified: storage/connect/plgxml.cpp modified: storage/connect/plgxml.h modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h modified: storage/connect/tabfmt.cpp modified: storage/connect/tabfmt.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabxml.cpp modified: storage/connect/tabzip.cpp modified: storage/connect/tabzip.h Fix skipping header record for mulentries zipped CSV tabled modified: storage/connect/filamap.cpp Accept M (memo) column type for DBF tables Fix miscalculation of Blksize when LRECL was replaced by DBF LRECL modified: storage/connect/filamdbf.cpp Change the names of GZ compress classes (not to be confused with ZIP) modified: storage/connect/filamgz.cpp modified: storage/connect/filamgz.h add trace in PlugSetPath modified: storage/connect/plugutil.c Add tests fir ZIP added: storage/connect/mysql-test/connect/r/xml_zip.result added: storage/connect/mysql-test/connect/r/zip.result added: storage/connect/mysql-test/connect/std_data/bios.json added: storage/connect/mysql-test/connect/std_data/xsample2.xml added: storage/connect/mysql-test/connect/t/have_zip.inc added: storage/connect/mysql-test/connect/t/xml_zip.test added: storage/connect/mysql-test/connect/t/zip.test commit6560e9c3a8Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Mon Jan 16 12:50:12 2017 +0200 MDEV-11711: ArmHF EXPLAIN JSON garbage longlong values printed Make sure printing with snprintf uses the correct typed parameters. commiteddbae422bAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Mon Jan 16 12:49:22 2017 +0200 MDEV-11712: ArmHF EXPLAIN JSON garbage longlong values printed Make sure printing with snprintf uses the correct typed parameters. commit7b44c31be8Merge:5ac71d44647e3f3deb41Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Mon Jan 16 12:18:21 2017 +0200 Merge remote-tracking branch 'origin/10.1' into 10.1 Extra merge due to more extra commits during merge process commit7e3f3deb41Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Mon Jan 16 09:15:56 2017 +0200 MDEV-11623 follow-up: Adjust tests. innodb.doublewrite: Similar to what was done to innodb.101_compatibility, add an explicit $_ parameter to the Perl unpack function. Also, fix some diagnostic messages in the Perl code. innodb.innodb-wl5522-debug: Adjust for the changed error codes and messages on fault injection. commit5ac71d4464Merge:8e157687315fc1ba604eAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Mon Jan 16 04:53:57 2017 +0200 Merge remote-tracking branch '10.0-galera' into 10.1 commit8e15768731Merge:ebb8c9fb2666744f4540Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Mon Jan 16 03:18:14 2017 +0200 Merge branch '10.0' into 10.1 commit3a91dec124Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Jan 16 02:36:31 2017 +0200 101_compatibility test fails on CentOS 5 Apparently, in older versions of Perl unpack does not have a logic for using $_ as a default value for the second argument. Fixed by specifying it explicitly commit34c89d01d2Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Jan 16 01:27:26 2017 +0200 Updated list of unstable tests for 10.1.21 commitab1e6fefd8Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Sat Jan 14 00:13:16 2017 +0200 MDEV-11623 MariaDB 10.1 fails to start datadir created with MariaDB 10.0/MySQL 5.6 using innodb-page-size!=16K The storage format of FSP_SPACE_FLAGS was accidentally broken already in MariaDB 10.1.0. This fix is bringing the format in line with other MySQL and MariaDB release series. Please refer to the comments that were added to fsp0fsp.h for details. This is an INCOMPATIBLE CHANGE that affects users of page_compression and non-default innodb_page_size. Upgrading to this release will correct the flags in the data files. If you want to downgrade to earlier MariaDB 10.1.x, please refer to the test innodb.101_compatibility how to reset the FSP_SPACE_FLAGS in the files. NOTE: MariaDB 10.1.0 to 10.1.20 can misinterpret uncompressed data files with innodb_page_size=4k or 64k as compressed innodb_page_size=16k files, and then probably fail when trying to access the pages. See the comments in the function fsp_flags_convert_from_101() for detailed analysis. Move PAGE_COMPRESSION to FSP_SPACE_FLAGS bit position 16. In this way, compressed innodb_page_size=16k tablespaces will not be mistaken for uncompressed ones by MariaDB 10.1.0 to 10.1.20. Derive PAGE_COMPRESSION_LEVEL, ATOMIC_WRITES and DATA_DIR from the dict_table_t::flags when the table is available, in fil_space_for_table_exists_in_mem() or fil_open_single_table_tablespace(). During crash recovery, fil_load_single_table_tablespace() will use innodb_compression_level for the PAGE_COMPRESSION_LEVEL. FSP_FLAGS_MEM_MASK: A bitmap of the memory-only fil_space_t::flags that are not to be written to FSP_SPACE_FLAGS. Currently, these will include PAGE_COMPRESSION_LEVEL, ATOMIC_WRITES and DATA_DIR. Introduce the macro FSP_FLAGS_PAGE_SSIZE(). We only support one innodb_page_size for the whole instance. When creating a dummy tablespace for the redo log, use fil_space_t::flags=0. The flags are never written to the redo log files. Remove many FSP_FLAGS_SET_ macros. dict_tf_verify_flags(): Remove. This is basically only duplicating the logic of dict_tf_to_fsp_flags(), used in a debug assertion. fil_space_t::mark: Remove. This flag was not used for anything. fil_space_for_table_exists_in_mem(): Remove the unnecessary parameter mark_space, and add a parameter for table flags. Check that fil_space_t::flags match the table flags, and adjust the (memory-only) flags based on the table flags. fil_node_open_file(): Remove some redundant or unreachable conditions, do not use stderr for output, and avoid unnecessary server aborts. fil_user_tablespace_restore_page(): Convert the flags, so that the correct page_size will be used when restoring a page from the doublewrite buffer. fil_space_get_page_compressed(), fsp_flags_is_page_compressed(): Remove. It suffices to have fil_space_is_page_compressed(). FSP_FLAGS_WIDTH_DATA_DIR, FSP_FLAGS_WIDTH_PAGE_COMPRESSION_LEVEL, FSP_FLAGS_WIDTH_ATOMIC_WRITES: Remove, because these flags do not exist in the FSP_SPACE_FLAGS but only in memory. fsp_flags_try_adjust(): New function, to adjust the FSP_SPACE_FLAGS in page 0. Called by fil_open_single_table_tablespace(), fil_space_for_table_exists_in_mem(), innobase_start_or_create_for_mysql() except if --innodb-read-only is active. fsp_flags_is_valid(ulint): Reimplement from the scratch, with accurate comments. Do not display any details of detected inconsistencies, because the output could be confusing when dealing with MariaDB 10.1.x data files. fsp_flags_convert_from_101(ulint): Convert flags from buggy MariaDB 10.1.x format, or return ULINT_UNDEFINED if the flags cannot be in MariaDB 10.1.x format. fsp_flags_match(): Check the flags when probing files. Implemented based on fsp_flags_is_valid() and fsp_flags_convert_from_101(). dict_check_tablespaces_and_store_max_id(): Do not access the page after committing the mini-transaction. IMPORT TABLESPACE fixes: AbstractCallback::init(): Convert the flags. FetchIndexRootPages::operator(): Check that the tablespace flags match the table flags. Do not attempt to convert tablespace flags to table flags, because the conversion would necessarily be lossy. PageConverter::update_header(): Write back the correct flags. This takes care of the flags in IMPORT TABLESPACE. commita9d00db155Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Sun Jan 15 14:20:16 2017 +0200 MDEV-11799 InnoDB can abort if the doublewrite buffer contains a bad and a good copy Clean up the InnoDB doublewrite buffer code. buf_dblwr_init_or_load_pages(): Do not add empty pages to the buffer. buf_dblwr_process(): Do consider changes to pages that are all zero. Do not abort when finding a corrupted copy of a page in the doublewrite buffer, because there could be multiple copies in the doublewrite buffer, and only one of them needs to be good. commit9b99d9bebdAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Sat Jan 14 17:52:33 2017 +0200 MDEV-8139: Disable a randomly failing test until the code is fixed. commit5dfab33c4eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 12 00:33:21 2017 +0100 MDEV-11551 Server crashes in Field::is_real_null sometimes table->s->stored_fields is less than table->s->null_fields commit7e2f9d092dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 12 01:01:56 2016 +0100 max_session_mem_used server variable commitab3388c3c4Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 12 01:00:45 2016 +0100 bugfix: mutex order violation in embedded safe_mutex: Found wrong usage of mutex 'LOCK_thread_count' and 'LOCK_status' Mutex currently locked (in reverse order): LOCK_status sql/sql_class.h line 3873 LOCK_thread_count libmysqld/lib_sql.cc line 432 commit1282eb694cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Dec 11 17:16:15 2016 +0100 cleanup: make malloc_size_cb_func always defined commit5fc1ba604eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jan 13 13:57:17 2017 -0500 Fix for post-merge build failure. commitee8b5c305aMerge:11544334a24f53384678Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jan 13 13:53:59 2017 -0500 Merge tag 'mariadb-10.0.29' into 10.0-galera commitebb8c9fb26Author: Alexander Barkov <bar@mariadb.org> Date: Thu Jan 12 15:16:45 2017 +0400 MDEV-11030 Assertion `precision > 0' failed in decimal_bin_size Fixing Item::decimal_precision() to return at least one digit. This fixes the problem reported in MDEV. Also, fixing Item_func_signed::fix_length_and_dec() to reserve space for at least one digit (plus one character for an optional sign). This is needed to have CONVERT(expr,SIGNED) and CONVERT(expr,UNSIGNED) create correct string fields when they appear in string context, e.g.: CREATE TABLE t1 AS SELECT CONCAT(CONVERT('',SIGNED)); commit2dc5d8bb7eAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Jan 12 12:33:46 2017 +0200 Improve an MDEV-9011 test of innodb_encrypt_log. Test crash recovery from an encrypted redo log with innodb_encrypt_log=0. Previously, we did a clean shutdown, so only the log checkpoint information would have been read from the redo log. With this change, we will be reading and applying encrypted redo log records. include/start_mysqld.inc: Observe $restart_parameters. encryption.innodb-log-encrypt: Remove some unnecessary statements, and instead of restarting the server and concurrently accessing the files while the server is running, kill the server, check the files, and finally start up the server. innodb.log_data_file_size: Use start_mysqld.inc with $restart_parameters. commit4507f1e5d4Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Jan 11 14:26:30 2017 +0200 Remove an excessive copyright message. commit5b5bce81e6Merge:5044dae239833fda8f1aAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Jan 11 14:19:06 2017 +0200 Merge 10.0 into 10.1 commit5044dae239Merge:4b05d60e6278e6fafcaaAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Tue Jan 10 14:30:11 2017 +0200 Merge 10.0 into 10.1 commit4b05d60e62Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Mon Jan 9 09:15:21 2017 +0200 Make encryption.innodb_lotoftables more robust. Perform a slow shutdown at the start of the test, and create all InnoDB tables with STATS_PERSISTENT=0, so that any I/O related to background tasks (change buffer merge, purge, persistent statistics) should be eliminated. commit59ea6456c3Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Mon Jan 9 09:12:32 2017 +0200 Minor cleanup of innodb.innodb-change-buffer-recovery This should be a non-functional change. I was unable to repeat MDEV-11626 innodb.innodb-change-buffer-recovery fails for xtradb and cannot determine the reason for the failure without having access to the files. The repeatability of MDEV-11626 should not be affected by these changes. commit384f4d1e36Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Sat Jan 7 15:27:59 2017 +0200 Post-push fix for MDEV-11556: Make the debug variable UINT. Sometimes innodb_data_file_size_debug was reported as INT UNSIGNED instead of BIGINT UNSIGNED. Make it uint instead of ulong to get a more deterministic result. commit8049d2e9d9Merge:fb5ee7d6d0f0c19b6a57Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Jan 5 20:32:15 2017 +0200 Merge 10.0 into 10.1 commitfb5ee7d6d0Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Jan 5 19:01:14 2017 +0200 Plug a memory leak in buf_dblwr_process(). commit758af98ff7Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Jan 5 10:42:19 2017 +0200 Post-push fix for Part 1 of MDEV-8139 Fix scrubbing tests In the backport of Bug#24450908 UNDO LOG EXISTS AFTER SLOW SHUTDOWN from MySQL 5.7 to the MySQL 5.6 based MariaDB Server 10.1, we must use a mutex when HAVE_ATOMIC_BUILTINS is not defined. Also, correct a function comment. In MySQL 5.6 and MariaDB Server 10.1, also temporary InnoDB tables are redo-logged. commitffb38c9771Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Jan 4 20:49:13 2017 +0200 MDEV-8139 Fix scrubbing tests encryption.innodb_scrub: Clean up. Make it also cover ROW_FORMAT=COMPRESSED, removing the need for encryption.innodb_scrub_compressed. Add a FIXME comment saying that we should create a secondary index, to demonstrate that also undo log pages get scrubbed. Currently that is not working! Also clean up encryption.innodb_scrub_background, but keep it disabled, because the background scrubbing does not work reliably. Fix both tests so that if something is not scrubbed, the test will be aborted, so that the data files will be preserved. Allow the tests to run on Windows as well. commit719321e78eAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Jan 4 18:43:32 2017 +0200 MDEV-11638 Encryption causes race conditions in InnoDB shutdown InnoDB shutdown failed to properly take fil_crypt_thread() into account. The encryption threads were signalled to shut down together with other non-critical tasks. This could be much too early in case of slow shutdown, which could need minutes to complete the purge. Furthermore, InnoDB failed to wait for the fil_crypt_thread() to actually exit before proceeding to the final steps of shutdown, causing the race conditions. Furthermore, the log_scrub_thread() was shut down way too early. Also it should remain until the SRV_SHUTDOWN_FLUSH_PHASE. fil_crypt_threads_end(): Remove. This would cause the threads to be terminated way too early. srv_buf_dump_thread_active, srv_dict_stats_thread_active, lock_sys->timeout_thread_active, log_scrub_thread_active, srv_monitor_active, srv_error_monitor_active: Remove a race condition between startup and shutdown, by setting these in the startup thread that creates threads, not in each created thread. In this way, once the flag is cleared, it will remain cleared during shutdown. srv_n_fil_crypt_threads_started, fil_crypt_threads_event: Declare in global rather than static scope. log_scrub_event, srv_log_scrub_thread_active, log_scrub_thread(): Declare in static rather than global scope. Let these be created by log_init() and freed by log_shutdown(). rotate_thread_t::should_shutdown(): Do not shut down before the SRV_SHUTDOWN_FLUSH_PHASE. srv_any_background_threads_are_active(): Remove. These checks now exist in logs_empty_and_mark_files_at_shutdown(). logs_empty_and_mark_files_at_shutdown(): Shut down the threads in the proper order. Keep fil_crypt_thread() and log_scrub_thread() alive until SRV_SHUTDOWN_FLUSH_PHASE, and check that they actually terminate. commit0f8e17af92Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Jan 4 18:16:37 2017 +0200 Part 1 of MDEV-8139 Fix scrubbing tests Port a bug fix from MySQL 5.7, so that all undo log pages will be freed during a slow shutdown. We cannot scrub pages that are left allocated. commit 173e171c6fb55f064eea278c76fbb28e2b1c757b Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com> Date: Fri Sep 9 18:01:27 2016 +0530 Bug #24450908 UNDO LOG EXISTS AFTER SLOW SHUTDOWN Problem: ======== 1) cached undo segment is not removed from rollback segment history (RSEG_HISTORY) during slow shutdown. In other words, If the segment is not completely free, we are failing to remove an entry from the history list. While starting the server, we traverse all rollback segment slots history list and make it as list of undo logs to be purged in purge queue. In that case, purge queue will never be empty after slow shutdown. 2) Freeing of undo log segment is linked with removing undo log header from history. Fix: ==== 1) Have separate logic of removing the undo log header from history list from rollback segment slots and remove it from rollback segment history even though it is not completely free. Reviewed-by: Debarun Banerjee <debarun.banerjee@oracle.com> Reviewed-by: Marko Mäkelä <marko.makela@oracle.com> RB:13672 commit0c1de94db6Merge:ba8198a34c80d5d1452aAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Jan 4 13:56:11 2017 +0200 Merge 10.0 into 10.1 commitba8198a34cAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Tue Jan 3 15:44:44 2017 +0200 Post-fix for MDEV-11688 fil_crypt_threads_end() tries to create threads fil_crypt_threads_cleanup(): Do nothing if nothing was initialized. commitfc779252aeAuthor: Marko Mäkelä <marko.makela@mariadb.com> Date: Tue Jan 3 13:18:47 2017 +0200 MDEV-11688 fil_crypt_threads_end() tries to create threads after aborted InnoDB startup This bug was repeatable by starting MariaDB 10.2 with an invalid option, such as --innodb-flush-method=foo. It is not repeatable in MariaDB 10.1 in the same way, but the problem exists already there. commitb4616c40beAuthor: Sachin Setiya <sachinsetia1001@gmail.com> Date: Tue Jan 3 10:45:55 2017 +0530 MDEV-7955 WSREP() appears on radar in OLTP RO This commit is for optimizing WSREP(thd) macro. #define WSREP(thd) \ (WSREP_ON && wsrep && (thd && thd->variables.wsrep_on)) In this we can safely remove wsrep and thd. We are not removing WSREP_ON because this will change WSREP(thd) behaviour. Patch Credit:- Nirbhay Choubay, Sergey Vojtovich commitd9a1a201aaAuthor: Sachin Setiya <sachinsetia1001@gmail.com> Date: Tue Jan 3 10:10:58 2017 +0530 MDEV-11016 wsrep_node_is_ready() check is too strict Problem:- The condition that checks for node readiness is too strict as it does not allow SELECTs even if these selects do not access any tables. For example,if we run SELECT 1; OR SELECT @@max_allowed_packet; Solution:- We need not to report this error when all_tables(lex->query_tables) is NULL: commit2f5670dc26Author: Sachin Setiya <sachinsetia1001@gmail.com> Date: Tue Dec 27 14:13:32 2016 +0530 MDEV-11636 Extra persistent columns on slave always gets NULL in RBR Problem:- In replication if slave has extra persistent column then these column are not computed while applying write-set from master. Solution:- While applying row events from server, we will generate values for extra persistent columns. commit8451e09073Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Dec 28 12:05:43 2016 +0200 MDEV-11556 InnoDB redo log apply fails to adjust data file sizes fil_space_t::recv_size: New member: recovered tablespace size in pages; 0 if no size change was read from the redo log, or if the size change was implemented. fil_space_set_recv_size(): New function for setting space->recv_size. innodb_data_file_size_debug: A debug parameter for setting the system tablespace size in recovery even when the redo log does not contain any size changes. It is hard to write a small test case that would cause the system tablespace to be extended at the critical moment. recv_parse_log_rec(): Note those tablespaces whose size is being changed by the redo log, by invoking fil_space_set_recv_size(). innobase_init(): Correct an error message, and do not require a larger innodb_buffer_pool_size when starting up with a smaller innodb_page_size. innobase_start_or_create_for_mysql(): Allow startup with any initial size of the ibdata1 file if the autoextend attribute is set. Require the minimum size of fixed-size system tablespaces to be 640 pages, not 10 megabytes. Implement innodb_data_file_size_debug. open_or_create_data_files(): Round the system tablespace size down to pages, not to full megabytes, (Our test truncates the system tablespace to more than 800 pages with innodb_page_size=4k. InnoDB should not imagine that it was truncated to 768 pages and then overwrite good pages in the tablespace.) fil_flush_low(): Refactored from fil_flush(). fil_space_extend_must_retry(): Refactored from fil_extend_space_to_desired_size(). fil_mutex_enter_and_prepare_for_io(): Extend the tablespace if fil_space_set_recv_size() was called. The test case has been successfully run with all the innodb_page_size values 4k, 8k, 16k, 32k, 64k. commitf493e395b0Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Dec 29 15:03:12 2016 +0200 Make the test work with any innodb_page_size. commit23cc1be270Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Dec 21 20:11:14 2016 +0100 MDEV-11584: GRANT inside an SP does not work well on 2nd execution Allocate password hash in statment memory commit283e9cf4cbAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Dec 28 16:14:28 2016 +0200 MDEV-11656: 'Data structure corruption' IMPORT TABLESPACE doesn't work for encrypted InnoDB tables if space_id changed Problem was that for encryption we use temporary scratch area for reading and writing tablespace pages. But if page was not really decrypted the correct updated page was not moved to scratch area that was then written. This can happen e.g. for page 0 as it is newer encrypted even if encryption is enabled and as we write the contents of old page 0 to tablespace it contained naturally incorrect space_id that is then later noted and error message was written. Updated page with correct space_id was lost. If tablespace is encrypted we use additional temporary scratch area where pages are read for decrypting readptr == crypt_io_buffer != io_buffer. Destination for decryption is a buffer pool block block->frame == dst == io_buffer that is updated. Pages that did not require decryption even when tablespace is marked as encrypted are not copied instead block->frame is set to src == readptr. If tablespace was encrypted we copy updated page to writeptr != io_buffer. This fixes above bug. For encryption we again use temporary scratch area writeptr != io_buffer == dst that is then written to the tablespace (1) For normal tables src == dst == writeptr ut_ad(!encrypted && !page_compressed ? src == dst && dst == writeptr + (i * size):1); (2) For page compressed tables src == dst == writeptr ut_ad(page_compressed && !encrypted ? src == dst && dst == writeptr + (i * size):1); (3) For encrypted tables src != dst != writeptr ut_ad(encrypted ? src != dst && dst != writeptr + (i * size):1); commitd50cf42bc0Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Wed Dec 28 15:54:24 2016 +0200 MDEV-9282 Debian: the Lintian complains about "shlib-calls-exit" in ha_innodb.so Replace all exit() calls in InnoDB with abort() [possibly via ut_a()]. Calling exit() in a multi-threaded program is problematic also for the reason that other threads could see corrupted data structures while some data structures are being cleaned up by atexit() handlers or similar. In the long term, all these calls should be replaced with something that returns an error all the way up the call stack. commit11544334a2Author: Sachin Setiya <sachinsetia1001@gmail.com> Date: Tue Dec 27 14:13:32 2016 +0530 MDEV-11636 Extra persistent columns on slave always gets NULL in RBR Problem:- In replication if slave has extra persistent column then these column are not computed while applying write-set from master. Solution:- While applying row events from server, we will generate values for extra persistent columns. commitdc9f5dfcbbAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Tue Dec 27 20:41:32 2016 +0200 Replication tests fail on valgrind due to waiting-related timeouts MTR raises default wait_for_pos_timeout from 300 to 1500 when tests are run with valgrind. The same needs to be done for other replication-related waits commitdf21d45fddMerge:00e0acd814545c912696Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Dec 24 17:48:21 2016 +0100 Merge branch '10.1' of https://github.com/MariaDB/server into ob-10.1 commit00e0acd814Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Dec 24 17:48:10 2016 +0100 Changing version number in ha_connect.cc commit5c0c623577Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Dec 23 14:23:46 2016 +0100 Fix some XML table type bugs: - in DOMNODELIST::DropItem if (Listp == NULL || Listp->length <= n) return true; is wrong, should be: if (Listp == NULL || Listp->length < n) return true; - Crash in discovery with libxml2 in XMLColumns because: if (!tdp->Usedom) // nl was destroyed vp->nl = vp->pn->GetChildElements(g); is executed with vp->pn uninitialized. Fixed by adding: vp->pn = node; line 264. -In discovery with libxml2 some columns are not found. Because list was not recovered properly, nodes being modified and not reallocated. Fixed lines 214 and 277. modified: storage/connect/domdoc.cpp modified: storage/connect/tabxml.cpp Add support for zipped table files modified: storage/connect/domdoc.cpp modified: storage/connect/domdoc.h modified: storage/connect/filamap.cpp modified: storage/connect/filamap.h modified: storage/connect/filamzip.cpp modified: storage/connect/filamzip.h modified: storage/connect/ha_connect.cc modified: storage/connect/libdoc.cpp modified: storage/connect/plgdbutl.cpp modified: storage/connect/plgxml.cpp modified: storage/connect/plgxml.h modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjson.cpp modified: storage/connect/tabxml.cpp commit545c912696Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Dec 22 12:03:36 2016 +0200 Remove an unnecessary comparison. commit7e02fd1f71Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Dec 22 14:20:47 2016 +0200 MDEV-11630 Call mutex_free() before freeing the mutex list Make some global fil_crypt_ variables static. fil_close(): Call mutex_free(&fil_system->mutex) also in InnoDB, not only in XtraDB. In InnoDB, sync_close() was called before fil_close(). innobase_shutdown_for_mysql(): Call fil_close() before sync_close(), similar to XtraDB shutdown. fil_space_crypt_cleanup(): Call mutex_free() to pair with fil_space_crypt_init(). fil_crypt_threads_cleanup(): Call mutex_free() to pair with fil_crypt_threads_init(). commit55eb7120a0Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Dec 22 14:02:51 2016 +0200 MDEV-11218: encryption.innodb_encryption_discard_import failed in buildbot Try to stabilize test cases. These test behave badly when run in certain order. commitc51c885deeAuthor: Monty <monty@mariadb.org> Date: Wed Dec 21 22:41:07 2016 +0200 Fixed compiler warning commitc33c638f39Author: Monty <monty@mariadb.org> Date: Wed Dec 21 22:40:52 2016 +0200 MDEV-7558 analyze_stmt_slow_query_log fails sporadically in buildbot The reason was that the test was reusing the same log file without deleting it between tests. Fixed by creating a new log file as part of the test commit9e032d6150Author: Sachin Setiya <sachinsetia1001@gmail.com> Date: Wed Dec 21 09:34:37 2016 +0530 MDEV-11490 Galera_3nodes test suite does not suppress Warnings. Problem:- While running individual tests of Galera_3nodes , We get warnings like '[Warning] WSREP: Could not open state file for reading: '. And because of this individual tests fails. Solution:- We change suite.pm of Galera_3nodes to supress these warnings. commitbe430b80dfAuthor: Sachin Setiya <sachinsetia1001@gmail.com> Date: Wed Dec 21 09:34:37 2016 +0530 MDEV-11490 Galera_3nodes test suite does not suppress Warnings. Problem:- While running individual tests of Galera_3nodes , We get warnings like '[Warning] WSREP: Could not open state file for reading: '. And because of this individual tests fails. Solution:- We change suite.pm of Galera_3nodes to supress these warnings. commit75ab65aeceAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Dec 20 15:31:02 2016 -0500 Fix failing galera tests. commit195241e125Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Tue Dec 20 15:03:56 2016 +0200 Port the test innodb.doublewrite from MySQL 5.7. commit44da95e5edMerge:8e198336c29f863a15b0Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Mon Dec 19 17:15:25 2016 +0200 Merge branch '10.0' into 10.1 commit8e198336c2Author: Daniel Bartholomew <db@dbart.us> Date: Thu Dec 15 10:34:41 2016 -0500 bump the VERSION commitc13b501162Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Dec 14 19:20:17 2016 +0000 Fix broken cmake -DBUILD_CONFIG=mysql_release on Windows. mysql_release.cmake set WITH_JEMALLOC=static, which makes windows builds fail since there is no jemalloc either static or shared there commitd93bbcad36Author: Sachin Setiya <sachinsetia1001@gmail.com> Date: Wed Dec 14 20:13:36 2016 +0530 MDEV-11479 Improved wsrep_dirty_reads Updated sysvars_wsrep.result file. commitb3d2ac3492Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Dec 14 14:37:31 2016 +0100 - MDEV-11295: developing handling files contained in ZIP file. Fix bug using multiple zip files modified: storage/connect/filamzip.cpp modified: storage/connect/filamzip.h modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjson.cpp - Add error msg when trying to make discovery on multiple tables modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjson.cpp modified: storage/connect/tabxml.cpp commit8a3fc7c041Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Dec 14 11:11:22 2016 +0100 - MDEV-11295: developing handling files contained in ZIP file. Enable using multiple zip files modified: storage/connect/filamzip.cpp modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h modified: storage/connect/mycat.h modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjson.cpp commit4c1e181ac5Author: Sachin Setiya <sachinsetia1001@gmail.com> Date: Wed Dec 14 15:22:04 2016 +0530 MDEV-11479 Improved wsrep_dirty_reads Tasks:- Changes in wsrep_dirty_reads variable 1.) Global + Session scope (Current: session-only) 2.) Can be set using command line. 3.) Allow all commands that do not change data (besides SELECT) 4.) Allow prepared Statements that do not change data 5.) Works with wsrep_sync_wait enabled commitffdd1e9d88Author: Sachin Setiya <sachinsetia1001@gmail.com> Date: Wed Dec 14 13:57:05 2016 +0530 Revert "MDEV-11016 wsrep_node_is_ready() check is too strict" This reverts commit52ea5ad865. # Conflicts: # mysql-test/suite/galera/r/galera_var_dirty_reads.result # mysql-test/suite/galera/t/galera_var_dirty_reads.test # sql/sql_parse.cc commitf41bd7e545Author: Varun Gupta <varunraiko1803@gmail.com> Date: Tue Dec 13 05:07:02 2016 +0530 MDEV-11060 sql/protocol.cc:532: void Protocol::end_statement(): Assertion `0' failed In file sql/opt_range.cc,when calculate_cond_selectivity_for_table() is called with optimizer_use_condition_selectivity=4 then - thd->no_errors is set to 1 - the original value of thd->no_error is not restored to its original value - this is causing the assertion to fail in the subsequent queries Fixed by restoring the original value of thd->no_errors commit0c79de2419Author: Sachin Setiya <sachinsetia1001@gmail.com> Date: Wed Dec 14 09:30:43 2016 +0530 MDEV-11479 Improved wsrep_dirty_reads Tasks:- Changes in wsrep_dirty_reads variable 1.) Global + Session scope (Current: session-only) 2.) Can be set using command line. 3.) Allow all commands that do not change data (besides SELECT) 4.) Allow prepared Statements that do not change data 5.) Works with wsrep_sync_wait enabled commit25a9a3da34Author: Sachin Setiya <sachinsetia1001@gmail.com> Date: Wed Dec 14 08:39:36 2016 +0530 Revert "MDEV-11016 wsrep_node_is_ready() check is too strict" This reverts commit7ed5563bbe. commit72cc73cea2Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Dec 13 11:51:33 2016 +0200 MDEV-10368: get_latest_version() called too often Reduce the number of calls to encryption_get_key_get_latest_version when doing key rotation with two different methods: (1) We need to fetch key information when tablespace not yet have a encryption information, invalid keys are handled now differently (see below). There was extra call to detect if key_id is not found on key rotation. (2) If key_id is not found from encryption plugin, do not try fetching new key_version for it as it will fail anyway. We store return value from encryption_get_key_get_latest_version call and if it returns ENCRYPTION_KEY_VERSION_INVALID there is no need to call it again. commit67b570af50Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Dec 5 20:58:49 2016 -0500 MDEV-10545: Server crashed in my_copy_fix_mb on querying I_S and P_S tables After applying/replaying the transaction, the memory that stored the query string was also wrongly freed. commit9c88a54c10Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Dec 5 20:07:30 2016 -0500 MDEV-11179: WSREP transaction excceded size limit in Galera cluster ... causes MariaDB to crash On error, the wsrep replication buffer (binlog) is dumped to a file to aid investigations. In order to also include the binlog header, FDLE object is also needed. This object is only available for wsrep- threads. Fix: Instantiate an FDLE object for non-wsrep threads. commitdbb06d2eabAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Nov 21 19:44:48 2016 -0500 MDEV-10954: MariaDB Galera: wsrep_sst_common: line 120: which: command not found Add 'which' to REQUIRES list. commit0e06a8357bAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Dec 12 00:49:31 2016 +0100 - MDEV-11295: developing handling files contained in ZIP file. A first experimental and limited implementation. Add NOCRYPT preprocessor definition to avoid compiling error modified: storage/connect/CMakeLists.txt commit5d9ca52219Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Dec 12 00:59:40 2016 +0200 Updated the list of unstable tests after the merge commit9afa90090aAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Dec 11 23:47:15 2016 +0100 - MDEV-11295: developing handling files contained in ZIP file. A first experimental and limited implementation. modified: storage/connect/CMakeLists.txt modified: storage/connect/filamap.cpp new file: storage/connect/filamzip.cpp new file: storage/connect/filamzip.h modified: storage/connect/ha_connect.cc new file: storage/connect/ioapi.c new file: storage/connect/ioapi.h modified: storage/connect/mycat.cc modified: storage/connect/plgdbsem.h modified: storage/connect/plgdbutl.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h modified: storage/connect/tabfmt.cpp modified: storage/connect/tabfmt.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h new file: storage/connect/tabzip.cpp new file: storage/connect/tabzip.h new file: storage/connect/unzip.c new file: storage/connect/unzip.h new file: storage/connect/zip.c commit2f20d297f8Merge:a629b5172eeb4f2e063cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Dec 11 09:53:42 2016 +0100 Merge branch '10.0' into 10.1 commita629b5172eAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Sat Dec 10 23:04:41 2016 +0200 Updated the list of unstable tests commite156ea1b95Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Dec 9 12:15:41 2016 -0500 Fix failing tests. commit83f7151da5Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Fri Dec 9 17:13:43 2016 +0400 MDEV-10435 crash with bad stat tables. Functions from sql/statistics.cc don't seem to expect stat tables to fail or to have inadequate structure. Table open errors suppressed and some validity checks added. Invalid tables reported to the server log. commit870d7589c6Author: Elena Stepanova <elenst@montyprogram.com> Date: Thu Dec 8 20:49:54 2016 +0200 MDEV-11491 binlog_encryption.rpl_checksum fails sporadically in buildbot The race condition happened if mark_xid_done was considerably delayed, and an extra Binlog_checkpoint event was written into the binary log which was later indicated in an error message. Fixed by ensuring that the event is written before the binary log is rotated to the one which is used in the output. commit8e702bce66Author: Elena Stepanova <elenst@montyprogram.com> Date: Thu Dec 8 17:05:01 2016 +0200 MDEV-11504 binlog_encryption.encrypted_master_switch_to_unencrypted fails sporadically in buildbot The reason is a simple race condition. Initially the test was meant to synchronize with master before showing tables, but it turned out that the slave IO thread should fail by this point, and synchronization was removed along with a server bugfix. Now added an intermediate sync instead, to make sure that slave has replicated events before the point of failure commite1e1fbc501Merge:2114aa4ac563edd27167Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Dec 7 14:05:04 2016 +0400 Merge pull request #272 from iangilfillan/10.1 Update mysqld_multi man page commit63edd27167Author: iangilfillan <github@greenman.co.za> Date: Wed Dec 7 11:58:40 2016 +0200 Update mysqld_multi man page commit2114aa4ac5Merge:74d52ded72d036be7218Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Dec 7 13:37:16 2016 +0400 Merge pull request #270 from JRonak/MDEV-11354 fixes MDEV-11354 twin include commit74d52ded72Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 5 22:29:25 2016 +0100 fix binlog_encryption.binlog_incident test commit76546a099cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 5 15:51:24 2016 +0100 MDEV-10382 Using systemd, mariadb doesn't restart on crashes when crashing on a signal, don't exit(), but re-signal it, so that the caller could check WIFSIGNALED() commit5142cd55f4Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Dec 4 21:19:32 2016 +0100 MDEV-11052 mariadb-service-convert does not work after upgrading to 10.1.18 mysqld_safe: don't close stdout and stderr if --dry-run commitb5aa0f437fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Dec 3 20:34:50 2016 +0100 MDEV-11319 mysqlbinlog crashes or fails with out of memory while reading some encrypted binlogs support encrypted binlogs. Not decryption, but at least recognizing that event are encrypted and prining them as such commit952856c810Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Dec 3 20:26:42 2016 +0100 MDEV-11288 Server crashes in Binlog_crypt_data::init trying to feed encrypted log without decryption capabilities commit55b4579633Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Dec 5 16:28:29 2016 -0500 Fix build failure. commitd036be7218Author: Ronak Jain <ronakjain@outlook.in> Date: Tue Dec 6 02:29:52 2016 +0530 fixes MDEV-11354 twin include commit611f91605aAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Mon Dec 5 20:19:01 2016 +0200 MDEV-9038 Binlog encryption tests - created binlog_encryption test suite and added it to the default list - moved some tests from rpl, binlog and multisource suites to extra so that they could be re-used in different suites - made minor changes in include files commit9199d72759Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Mon Dec 5 15:25:59 2016 +0200 MDEV-11233 CREATE FULLTEXT INDEX with a token longer than 127 bytes crashes server This bug is the result of merging the Oracle MySQL follow-up fix BUG#22963169 MYSQL CRASHES ON CREATE FULLTEXT INDEX without merging the base bug fix: Bug#79475 Insert a token of 84 4-bytes chars into fts index causes server crash. Unlike the above mentioned fixes in MySQL, our fix will not change the storage format of fulltext indexes in InnoDB or XtraDB when a character encoding with mbmaxlen=2 or mbmaxlen=3 and the length of a word is between 128 and 84*mbmaxlen bytes. The Oracle fix would allocate 2 length bytes for these cases. Compatibility with other MySQL and MariaDB releases is ensured by persisting the used maximum length in the SYS_COLUMNS table in the InnoDB data dictionary. This fix also removes some unnecessary strcmp() calls when checking for the legacy default collation my_charset_latin1 (my_charset_latin1.name=="latin1_swedish_ci"). fts_create_one_index_table(): Store the actual length in bytes. This metadata will be written to the SYS_COLUMNS table. fts_zip_initialize(): Initialize only the first byte of the buffer. Actually the code should not even care about this first byte, because the length is set as 0. FTX_MAX_WORD_LEN: Define as HA_FT_MAXCHARLEN * 4 aka 336 bytes, not as 254 bytes. row_merge_create_fts_sort_index(): Set the actual maximum length of the column in bytes, similar to fts_create_one_index_table(). row_merge_fts_doc_tokenize(): Remove the redundant parameter word_dtype. Use the actual maximum length of the column. Calculate the extra_size in the same way as row_merge_buf_encode() does. commitead6d0de02Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Dec 5 03:13:28 2016 +0200 Follow-up for MDEV-9451 - fix XtraDB rdiff files commitb0754ad45eAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Mon Dec 5 03:11:42 2016 +0200 Follow-up for MDEV-11429 - fix result files for embedded and 32-bit tests commitf1b80d8ef1Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Fri Dec 2 16:25:47 2016 +0200 MDEV-11236 Failing assertion: state == TRX_STATE_NOT_STARTED trx_state_eq(): Add the parameter bool relaxed=false, to allow trx->state==TRX_STATE_NOT_STARTED where a different state is expected, if an error has been reported. trx_release_savepoint_for_mysql(): Pass relaxed=true to trx_state_eq(). That is, allow the transaction to be idle when ROLLBACK TO SAVEPOINT is attempted after an error has been reported to the client. commit1e7f961d00Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Thu Dec 1 14:56:09 2016 +0200 MDEV-9451 innodb_buffer_pool_populate does not seem to work on 10.1.10 Instead of interpreting --innodb-buffer-pool-populate as --innodb-numa-interleave, display warning when the option is set, saying that the option will be removed in MariaDB 10.2.3. commit97b21a1953Author: Monty <monty@mariadb.org> Date: Fri Dec 2 14:02:30 2016 +0200 MDEV-10759 Fix Aria to support 2-byte collation IDs - Used same fix as for MyISAM: High level collation byte stored in unused bit_end position. - Moved language from header to base_info - Removed unused bit_end part in HA_KEY_SEG commit2996f9aa88Author: Monty <monty@mariadb.org> Date: Wed Nov 30 18:36:29 2016 +0200 MDEV-11429 Increase number of max table_open_cache instances Increase max number of possible table_open_cache instances from 512K to 1024K. This only affects user who are trying to set the variable over the old limit. Delete not used test table_open_cache_instances_basic (Need to be added back and rewritten in 10.2) commitc6a72d2c9cAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Dec 2 11:29:14 2016 +0100 - MDEV-11366 SIGBUS errors in Connect Storage Engine for ArmHF and MIPS. Fix includes launchpad fix plus more to cover writing BIN tables. modified: storage/connect/tabfix.cpp modified: storage/connect/value.cpp modified: storage/connect/value.h - Typo: Change the name of filamzip to filamgz to prepare future ZIP tables. modified: storage/connect/CMakeLists.txt added: storage/connect/filamgz.cpp added: storage/connect/filamgz.h deleted: storage/connect/filamzip.cpp deleted: storage/connect/filamzip.h modified: storage/connect/plgdbsem.h modified: storage/connect/reldef.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h modified: storage/connect/tabfix.cpp modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjson.cpp commit2fd3af4483Author: sensssz <hjmsens@gmail.com> Date: Thu Dec 1 13:45:23 2016 -0500 MDEV-11168: InnoDB: Failing assertion: !other_lock || wsrep_thd_is_BF(lock->trx->mysql_thd, FALSE) || wsrep_thd_is_BF(other_lock->trx->mysql_thd, FALSE) Merged pull request: Fix error in lock_has_higher_priority #266 https://github.com/MariaDB/server/pull/266 Added test case. commit52ea5ad865Author: SachinSetiya <sachinsetia1001@gmail.com> Date: Thu Dec 1 11:24:04 2016 +0530 MDEV-11016 wsrep_node_is_ready() check is too strict Problem:- The condition that checks for node readiness is too strict as it does not allow SELECTs even if these selects do not access any tables. For example,if we run SELECT 1; OR SELECT @@max_allowed_packet; Solution:- We need not to report this error when all_tables(lex->query_tables) is NULL: commitdbdef41a59Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Nov 29 08:41:45 2016 +0200 MDEV-10686: innodb_zip.innodb_prefix_index_liftedlimit failed with timeout in buildbot Test moved to big_test and not run with valgrind because of timeout. commit9f31949b64Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Nov 29 08:35:51 2016 +0200 MDEV-10739: encryption.innodb-page_encryption_compression fails with timeout on valgrind Test moved to big_test and not run on valgrind. Test heavy especially on debug builds. commite493c6bb43Merge:a68d1352b63bec0b327cAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Nov 28 09:57:28 2016 +0100 Merge remote-tracking branch 'my/tokudb_optimistic_parallel_replication' into 10.1 commitc82462c054Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Nov 27 14:35:01 2016 +0100 - Fix null pointer java error when connecting to jdbc:drill driver. By setting the context class loader. modified: storage/connect/JavaWrappers.jar modified: storage/connect/JdbcInterface.java modified: storage/connect/mysql-test/connect/std_data/JdbcMariaDB.jar commitc2f93a3354Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Nov 27 14:22:04 2016 +0100 - Fix null pointer java error when connecting to jdbc:drill driver. By setting the context class loader. modified: storage/connect/JavaWrappers.jar modified: storage/connect/JdbcInterface.java commita68d1352b6Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Fri Nov 25 06:28:02 2016 +0200 MDEV-11349 (2/2) Fix some bogus-looking Valgrind warnings buf_block_init(): Initialize buf_page_t::flush_type. For some reason, Valgrind 3.12.0 would seem to flag some bits in adjacent bitfields as uninitialized, even though only the two bits of flush_type were left uninitialized. Initialize the field to get rid of many warnings. buf_page_init_low(): Initialize buf_page_t::old. For some reason, Valgrind 3.12.0 would seem to flag all 32 bits uninitialized when buf_page_init_for_read() invokes buf_LRU_add_block(bpage, TRUE). This would trigger bogus warnings for buf_page_t::freed_page_clock being uninitialized. (The V-bits would later claim that only "old" is initialized in the 32-bit word.) Perhaps recent compilers (GCC 6.2.1 and clang 4.0.0) generate more optimized x86_64 code for bitfield operations, confusing Valgrind? mach_write_to_1(), mach_write_to_2(), mach_write_to_3(): Rewrite the assertions that ensure that the most significant bits are zero. Apparently, clang 4.0.0 would optimize expressions of the form ((n | 0xFF) <= 0x100) to (n <= 0x100). The redundant 0xFF was added in the first place in order to suppress a Valgrind warning. (Valgrind would warn about comparing uninitialized values even in the case when the uninitialized bits do not affect the result of the comparison.) commit3bec0b327cAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Nov 23 16:45:31 2016 +0100 Parallel replication test case for TokuDB. commit8da33e3a86Author: Marko Mäkelä <marko.makela@mariadb.com> Date: Fri Nov 25 06:09:00 2016 +0200 MDEV-11349 (1/2) Fix some clang 4.0 warnings In InnoDB and XtraDB functions that declare pointer parameters as nonnull, remove nullness checks, because GCC would optimize them away anyway. Use #ifdef instead of #if when checking for a configuration flag. Clang says that left shifts of negative values are undefined. So, use ~0U instead of ~0 in a number of macros. Some functions that were defined as UNIV_INLINE were declared as UNIV_INTERN. Consistently use the same type of linkage. ibuf_merge_or_delete_for_page() could pass bitmap_page=NULL to buf_page_print(), conflicting with the __attribute__((nonnull)). commit1d8eafbeafAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Nov 24 15:55:55 2016 +0400 Removing the unused function my_bincmp() from strings/ctype-ucs2.c commit021f78f695Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Nov 23 16:44:03 2016 +0100 Use thd_kill_level() over old thd_killed() in TokuDB. commit660a2928a5Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Nov 23 16:46:33 2016 +0100 Fix optimistic parallel replication for TokuDB. Make TokuDB report row lock waits with thd_rpl_deadlock_check(). This allows parallel replication to properly detect conflicts, and kill and retry the offending transaction. commitd145d1b6eeAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Nov 23 12:29:38 2016 +0100 fix bogus stalls in the lock tree for low concurrency applications Merge into the MariaDB tree the pull request from Rich Prohaska for PerconaFT. These changes are needed to get parallel replication to work with TokuDB. Once the pull request is accepted by Percona and the new upstream version enters MariaDB, this commit can be superseded. Original commit message from Rich Prohaska: 1. Fix the release before wait race The release before wait race occurs when a lock is released by transaction A after transaction B tried to acquire it but before transaction B has a chance to register it's pending lock request. There are several ways to fix this problem, but we want to optimize for the common situation of minimal lock conflicts, which is what the lock acquisition algorithm currently does. Our solution to the release before wait race is for transaction B to retry its lock request after its lock request has been added to the pending lock set. 2. Fix the retry race The retry race occurs in the current lock retry algorithm which assumes that if some transaction is running lock retry, then my transaction does not also need to run it. There is a chance that some pending lock requests will be skipped, but these lock requests will eventually time out. For applications with small numbers of concurrent transactions, timeouts will frequently occur, and the application throughput will be very small. The solution to the retry race is to use a group retry algorithm. All threads run through the retry logic. Sequence numbers are used to group retries into batches such that one transaction can run the retry logic on behalf of several transactions. This amortizes the retry cost. The sequence numbers also ensure that when a transaction releases its locks, all of the pending lock requests that it is blocking are retried. 3. Implement a mechanism to find and kill a pending lock request Tags lock requests with a client id, use the client id as a key into the pending lock requests sets to find a lock request, complete the lock request with a lock timeout error. Copyright (c) 2016, Rich Prohaska All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. commit57058cb677Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Nov 22 16:38:36 2016 +0200 MDEV-10377: innodb.innodb_blob_truncate fails in buildbot: Failing assertion: page_type == 34354 || page_type == 37401 || page_type == 17855 || page_type == 2 || page_type == 3 || ... Page type FIL_PAGE_TYPE_ZBLOB2 was missing from assertion. commitee3c99dfc7Merge:af05becb4c7ed5563bbeAuthor: SachinSetiya <sachinsetia1001@gmail.com> Date: Tue Nov 22 16:17:05 2016 +0530 Merge branch 'bb-mdev-11016' into 10.1 commitaf05becb4cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Nov 16 13:52:41 2016 +0200 MDEV-10771: Test innodb_defragment_fill_factor does not work correctly Added more columns to stabilice the test case. commitbccd0b5e0eMerge:cf29e8c55b717f212840Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Nov 15 13:10:21 2016 +0100 Merge branch 'mdev10863' into 10.1 commitcf29e8c55bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Nov 14 11:02:57 2016 -0500 wsrep_info plugin: Fix test case commit558245d540Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Nov 14 15:22:22 2016 +0100 - MDEV-11051 place Java classes ApacheInterface and JdbcInterface into single jar file. Try to fix the INSTALL command. modified: storage/connect/CMakeLists.txt - Make some JDBC tests available on Windows modified: storage/connect/mysql-test/connect/t/jdbc.test modified: storage/connect/mysql-test/connect/t/jdbc_new.test added: storage/connect/mysql-test/connect/t/windows.inc commit163629f32bAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Nov 14 11:41:46 2016 +0100 - MDEV-11067 suggested to add configuration support to the Apache wrapper. Try to fix the INSTALL command. modified: storage/connect/CMakeLists.txt commit0bec832feaAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Nov 14 00:46:45 2016 +0100 - MDEV-11067 suggested to add configuration support to the Apache wrapper. Suppress / from the INSTALL command. modified: storage/connect/CMakeLists.txt commitdb926c385eAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Nov 13 23:41:58 2016 +0100 - MDEV-11067 suggested to add configuration support to the Apache wrapper. Directly install a precompiled JavaWrappers.jar file. modified: storage/connect/CMakeLists.txt added: storage/connect/JavaWrappers.jar removed: storage/connect/ApacheInterface.class removed: storage/connect/JdbcInterface.class removed: storage/connect/MariadbInterface.class removed: storage/connect/MysqlInterface.class removed: storage/connect/OracleInterface.class removed: storage/connect/PostgresqlInterface.class commitbc65996b82Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Nov 13 18:39:35 2016 +0100 - Fix MDEV-11267. Insert NULL into JDBC table does not work. Fixed in JDBConn::SetParam and adding java function SetNullParm. modified: storage/connect/jdbconn.cpp modified: storage/connect/JdbcInterface.java modified: storage/connect/mysql-test/connect/disabled.def modified: storage/connect/mysql-test/connect/r/jdbc_new.result modified: storage/connect/mysql-test/connect/std_data/JdbcMariaDB.jar - MDEV-11067 suggested to add configuration support to the Apache wrapper. Uncommented out to test if it works. modified: storage/connect/CMakeLists.txt added: storage/connect/ApacheInterface.class added: storage/connect/JdbcInterface.class added: storage/connect/MariadbInterface.class added: storage/connect/MysqlInterface.class added: storage/connect/OracleInterface.class added: storage/connect/PostgresqlInterface.class commit1fee0171bcAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Nov 9 15:23:25 2016 +0200 MDEV-10692: InnoDB: Failing assertion: lock->trx->lock.wait_lock == lock When we enter here wait_lock could be already gone i.e. NULL, that should be allowed. commit6ae3dd6fb4Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Nov 9 00:10:45 2016 +0100 AWS Key management plugin does not build on Centos7. Building AWS C++ SDK as external project needs CMake 2.8.12 Centos7 out of the box has 2.8.11, thus the build fails. Fixed check for required CMake version. commit909e2392b2Author: Daniel Bartholomew <db@dbart.us> Date: Mon Nov 7 10:51:35 2016 -0500 bump the VERSION commit41e11a8ac6Author: Daniel Bartholomew <db@dbart.us> Date: Mon Nov 7 10:25:03 2016 -0500 bump the VERSION commitcde0746135Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Nov 6 10:23:18 2016 +0100 - Fix MDEV-11234. Escape quoting character. Should be doubled. Now it is also possible to escape it by a backslash. modified: storage/connect/tabfmt.cpp - Prepare making VEC table type support conditional. VEC tables might be unsupported in future versions modified: storage/connect/CMakeLists.txt modified: storage/connect/mycat.cc modified: storage/connect/reldef.cpp modified: storage/connect/xindex.cpp - MDEV-11067 suggested to add configuration support to the Apache wrapper. Was added but commented out until prooved it is really useful. modified: storage/connect/ApacheInterface.java modified: storage/connect/ha_connect.cc modified: storage/connect/jdbccat.h modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h - Remove useless members. modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h - New UDF countin. modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h commit5fda340dc3Author: Elena Stepanova <elenst@montyprogram.com> Date: Fri Nov 4 14:04:24 2016 +0300 Remove galera suites from default list for now, tests are unstable commit1ddd1b5d37Author: Elena Stepanova <elenst@montyprogram.com> Date: Fri Nov 4 13:41:26 2016 +0300 Add sphinx tests to the list, just in case they are run somewhere commitee0094d2fdAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Fri Nov 4 13:33:28 2016 +0300 MDEV-10985, MDEV-10986 - sphinx tests have not been maintained commitcbfb3f9cb1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Nov 3 19:30:02 2016 -0400 Move disabled galera tests to galera/disabled.def commitd34cd35344Author: Alexander Barkov <bar@mariadb.org> Date: Thu Nov 3 22:07:31 2016 +0400 Disabling tests mentioned in MDEV-11229 galera.MW-258 galera.galera_as_master fail in buildbot commitf0d8a4d29eAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Nov 3 22:02:24 2016 +0400 MDEV-11219 main.null fails in buldbot and outside with ps-protocol commitc7e1c89070Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Nov 2 21:10:39 2016 -0400 Disable unstable galera_concurrent_ctas test. commit7971360ffaAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Nov 2 21:08:44 2016 -0400 Fix a build failure noticed on Yakkety. commit82780a7c00Author: Elena Stepanova <elenst@montyprogram.com> Date: Wed Nov 2 21:20:00 2016 +0300 MDEV-11130 Update the list of unstable tests for 10.1 commit54d3dc0e93Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Nov 1 17:27:53 2016 -0400 Fix/disable some failing galera tests. commit7a170205e0Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Oct 26 13:19:00 2016 -0400 MDEV-11152: wsrep_replicate_myisam: SELECT gets replicated using TO Fixed the 'wsrep_replicate_myisam' check to allow only limited set of commands. Added a debug assert to discover such cases. commit07918b48b8Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Oct 10 14:02:37 2016 -0400 MDEV-10993: wsrep.mdev_10186 result depends on location of galera library Update test case. commit3daf89ced9Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Oct 5 04:24:07 2016 -0400 MDEV-10957: Assertion failure when dropping a myisam table with wsrep_replicate_myisam enabled Internal updates to system statistical tables could wrongly trigger an additional total-order replication if wsrep_repli -cate_myisam is enabled. Fixed by adding a check to skip total-order replication for stat tables. Test: galera.galera_var_replicate_myisam_on commit6dbfe7f399Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Oct 3 12:02:46 2016 -0400 MDEV-10944: GALERA log-slave-updates FAIL after upgrading from 10.1.17 to 10.1.18 thd->variables.option_bits need to be restored after plugin_thdvar_init() during post initialization of wsrep threads. commitfa4fa0ab90Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Sep 30 21:13:03 2016 -0400 Make galera test suites default. commita52a68cb7dAuthor: Rik Prohaska <prohaska7@gmail.com> Date: Wed Jul 13 16:17:08 2016 -0400 fix the tokudb_analyze_in_background_basic test to run on mariadb. mariadb does additional value checking for boolean system variables commit110a9f0693Author: Rik Prohaska <prohaska7@gmail.com> Date: Wed Jul 13 15:15:35 2016 -0400 add mtr support files for tokudb_sys_vars tests commitc948559135Author: Rik Prohaska <prohaska7@gmail.com> Date: Wed Jul 20 13:43:53 2016 -0400 MDEV-10408 run the tokudb_rpl.rpl_rfr_disable_on_expl_pk_absence test. Add control files. Fixup result file for mariadb commita98c85bb50Merge:c18054deb27196691b44Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Nov 2 13:44:07 2016 +0100 Merge branch '10.0-galera' into 10.1 commitc18054deb2Author: Alexander Barkov <bar@mariadb.org> Date: Wed Nov 2 08:20:15 2016 +0400 MDEV-10347 mysqld got signal 11 commit7196691b44Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Nov 1 17:20:12 2016 -0400 Fix/disable some failing galera tests. commit554c60ab0dAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 31 12:44:06 2016 +0200 MDEV-11182: InnoDB: Assertion failure in file buf0buf.cc line 4730 (encryption.create_or_replace fails in buildbot and outside) Analysis: Problem is that page is encrypted but encryption information on page 0 has already being changed. Fix: If page header contains key_version != 0 and even if based on current encryption information tablespace is not encrypted we need to check is page corrupted. If it is not, then we know that page is not encrypted. If page is corrupted, we need to try to decrypt it and then compare the stored and calculated checksums to see is page corrupted or not. commitcb5685a872Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 31 08:49:36 2016 +0200 MDEV-11184: innodb.innodb-wl5522-debug-zip fails in buildbot on Windows commit9aa73153dbAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 31 08:48:00 2016 +0200 MDEV-11183: innodb.innodb-wl5522-debug fails in buildbot and outside commit67e6cfd086Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sun Oct 30 09:16:02 2016 +0200 Add suppression for new InnoDB error log error as this test intentionally produces this error. commit58b5c40b09Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sat Oct 29 12:57:48 2016 +0300 Remove accidentally added directory. commitbb4b8c7470Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Oct 28 13:59:35 2016 +0300 MDEV-9099: Test encryption.innodb_encryption_discard_import fails on buildbot commitde0f77a2a8Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Oct 28 09:27:03 2016 +0300 MDEV-11106: Improve error messages when importing tablespaces Add error message when used index_id in index page is not found from configuration file. commit84ce681969Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Oct 27 15:01:15 2016 +0300 MDEV-10917: Warning suggesting that innodb_page_size is experimental may be inaccurate Removed experimental from message. commit885577fb10Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Oct 27 14:51:10 2016 +0300 MDEV-11004: Unable to start (Segfault or os error 2) when encryption key missing Two problems: (1) When pushing warning to sql-layer we need to check that thd != NULL to avoid NULL-pointer reference. (2) At tablespace key rotation if used key_id is not found from encryption plugin tablespace should not be rotated. commitbc323727deAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Oct 27 08:18:14 2016 +0300 MDEV-10977: [ERROR] InnoDB: Block in space_id 0 in file ibdata1 encrypted. MDEV-10394: Innodb system table space corrupted Analysis: After we have read the page in buf_page_io_complete try to find if the page is encrypted or corrupted. Encryption was determined by reading FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION field from FIL-header as a key_version. However, this field is not always zero even when encryption is not used. Thus, incorrect key_version could lead situation where decryption is tried to page that is not encrypted. Fix: We still read key_version information from FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION field but also check if tablespace has encryption information before trying encrypt the page. commit5db2195a35Merge:c9ded859a6eca8c324e9Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Oct 28 15:50:13 2016 -0400 Merge tag 'mariadb-10.0.28' into 10.0-galera commitc1bbedbd4aAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Fri Oct 28 20:37:18 2016 +0200 AWS key Management plugin - add plugin variable for the region AWS C++ SDK always defaults region to us-east-1 for clientConfiguration (ignoring config file or env.variable) This patch introduces a plugin variable 'region' to make it usable for master keys created in regions other than 'us-east-1'. commit7ed5563bbeAuthor: SachinSetiya <sachinsetia1001@gmail.com> Date: Wed Oct 26 14:52:24 2016 +0530 MDEV-11016 wsrep_node_is_ready() check is too strict Problem:- The condition that checks for node readiness is too strict as it does not allow SELECTs even if these selects do not access any tables. For example,if we run SELECT 1; OR SELECT @@max_allowed_packet; Solution:- We need not to report this error when all_tables(lex->query_tables) is NULL: commitea0ae42d83Merge:4edd4ad69874961760a4Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Oct 26 08:34:04 2016 +0300 Merge pull request #250 from sensssz/10.1-vats A few fixes for VATS in 10.1 commit74961760a4Author: sensssz <hjmsens@gmail.com> Date: Tue Oct 25 18:57:03 2016 -0400 A few fixes for VATS in 10.1 commit4edd4ad698Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 24 22:25:54 2016 +0300 MDEV-10970: Crash while loading mysqldump backup when InnoDB encryption is enabled Follow-up: Make sure we do not reference NULL-pointer when space is being dropped and does not contain any nodes. commit021212b525Merge:1bfa37a79c183c02839fAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 24 21:51:42 2016 +0300 Merge pull request #245 from sensssz/10.1-vats MDEV-11039 - Add new scheduling algorithm for reducing tail latencies commit1bfa37a79cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 24 16:55:36 2016 +0300 Add more information if encryption information is already stored for tablespace but page0 is not yet read. commitec5bd0d385Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 24 09:25:36 2016 +0300 MDEV-10969: innochecksum dumps core for some .ibd files due to floating point exception Check that index has pages before using number of pages in divide operation. commitaea1967cc2Merge:ee1d08c1159401e6befdAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 24 09:05:10 2016 +0300 Merge pull request #249 from Cona19/10.1-remove-unnecessary-semicolon Remove unnecessary semicolons commit9401e6befdAuthor: Hyeonseok Oh <hyeonso5@gmail.com> Date: Mon Oct 24 14:58:41 2016 +0900 Remove unnecessary semicolons commitee1d08c115Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Sun Oct 23 00:10:37 2016 +0000 Revert "Prepare XtraDB to be used with xtrabackup." This reverts commitde5646f1a9. commitde5646f1a9Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Sat Oct 22 14:10:12 2016 +0000 Prepare XtraDB to be used with xtrabackup. The changes are deliberately kept minimal - some functions are made global instead of static (they will be used in xtrabackup later on) - functions got additional parameter, deliberately unused for now : fil_load_single_tablespaces srv_undo_tablespaces_init - Global variables added, also unused for now : srv_archive_recovery srv_archive_recovery_limit_lsn srv_apply_log_only srv_backup_mode srv_close_files - To make xtrabackup link with sql.lib on Windows, added some missing source files to sql.lib - Fixed os_thread_ret_t to be DWORD on Windows commit8f5e3e2a34Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Fri Oct 21 16:20:47 2016 +0000 Fix escaping '\' in a string constant. commit2584897833Author: Elena Stepanova <elenst@montyprogram.com> Date: Wed Oct 19 03:02:13 2016 +0300 MDEV-11082 mysql_client_test: test_ps_query_cache fails with group-concat-max-len=1M test_bug14169 was setting session group_concat_max_len=1024 and did not clean it up. Because of that test_ps_query_cache, when run with group-concat-max-len != 1024, had different values in connections, and was inserting into query cache when a hit was expected. Fixed by adding a clean-up for the value in test_bug14169 commitfd1f507283Author: Elena Stepanova <elenst@montyprogram.com> Date: Wed Oct 19 03:01:36 2016 +0300 Additions to the list of unstable tests commitc4776d3b2aMerge:ed4a6f12b350f19ca809Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Sun Oct 16 23:48:59 2016 +0200 Merge "remove unnecessary global mutex in parallel replication" into 10.1. commit50f19ca809Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Sep 20 15:30:57 2016 +0200 Remove unnecessary global mutex in parallel replication. The function apply_event_and_update_pos() is called with the rli->data_lock mutex held. However, there seems to be nothing in the function actually needing the mutex to be held. Certainly not in the parallel replication case, where sql_slave_skip_counter is always 0 since the non-zero case is handled by the SQL driver thread. So this patch makes parallel replication use a variant of apply_event_and_update_pos() without the need to take the rli->data_lock mutex. This avoids one contended global mutex for each event executed, which might improve performance on CPU-bound workloads somewhat. Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org> commitcb8e5ecbceAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Oct 14 17:32:21 2016 +0200 - Fix MDEV-10950. Null values not retrieved for numeric types. Now the null is tested using the result set getObject method. modified: storage/connect/JdbcInterface.java modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h commit183c02839fAuthor: sensssz <hjmsens@gmail.com> Date: Thu Oct 13 01:23:21 2016 -0400 Move the lock after deadlock is resolved. commit0a769b00b5Author: sensssz <hjmsens@gmail.com> Date: Wed Oct 12 21:54:31 2016 -0400 Get thd by lock->trx->mysql_thd. commit5dc7ad87b8Author: sensssz <hjmsens@gmail.com> Date: Wed Oct 12 21:52:14 2016 -0400 Reduce conflict during in-order replication. commit55d2bff882Author: sensssz <hjmsens@gmail.com> Date: Tue Oct 11 23:27:03 2016 -0400 Bug fix: add * and ; for innodb commit288796f927Author: sensssz <hjmsens@gmail.com> Date: Tue Oct 11 23:05:02 2016 -0400 Bug fix: missing * and ; commite93d44f2d7Author: sensssz <hjmsens@gmail.com> Date: Tue Oct 11 23:02:26 2016 -0400 Bug fix: add undeclared variables. commit6100f59ffaAuthor: sensssz <hjmsens@gmail.com> Date: Tue Oct 11 20:52:35 2016 -0400 Implement VATS both in InnoDB and XtraDB. Add configuration options for it in both of them. commited4a6f12b3Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Mon Oct 10 12:49:10 2016 +0000 MDEV-10823 amend : Use opt_log_basename instead of hostname to test filesystem case sensitivity. Hostname can include characters, which are invalid for use as filename, thus case sensitivity test will fail to produce meaningful results. commite6c678c8a9Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Oct 5 16:03:50 2016 +0200 - Fix MDEV-10948. Syntax error on quoted JDBC tables. Was because the quoting character was always '"' instead of being retrieve from the JDBC source. modified: storage/connect/JdbcInterface.java modified: storage/connect/jdbconn.cpp modified: storage/connect/tabjdbc.cpp commitf35e918989Author: Daniel Bartholomew <db@dbart.us> Date: Fri Sep 30 12:11:09 2016 -0400 bump the VERSION commitd83fd5fcdeAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Sep 30 09:13:39 2016 +0300 MDEV-10685: innodb.xa_recovery failed in buildbot Test crashes server intentionally, need to be prepared for crash recovery and database page corruption. commit6925689ca8Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Sep 29 14:58:32 2016 -0400 MDEV-9312: storage engine not enforced during galera cluster replication Postfix: The pre-initialization of wsrep threads is not needed for mysqldump sst method. commit235876d70eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 29 14:21:14 2016 +0200 update test results after merge commit2ede40e67eMerge:ad20769450a3f11f7549Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 29 12:59:51 2016 +0200 Merge branch '10.0' into 10.1 commitad20769450Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 29 11:50:13 2016 +0200 init plugin psi keys before LOCK_plugin commitb34c813ae3Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Sep 28 22:12:03 2016 +0200 MDEV-10201 SSL tests fail on fedora23 Fixed the remaining failing test case in 10.1 commit9ff9acb307Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu Sep 22 17:52:05 2016 +0200 MDEV-10716: Assertion `real_type() != FIELD_ITEM' failed in Item_ref::build_equal_items(THD*, COND_EQUAL*, bool, COND_EQUAL**) Degenerated condition in AND should be treated in the same way as in WHERE/HAVING alone (i.e reference should be processed as well as fields) commitd5dfa0f1c2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Sep 28 13:27:34 2016 -0400 MDEV-9416: MariaDB galera got signal 11 when altering table add unique index When a BF thread attempts to abort a victim thread's transaction, the victim thread is not locked and thus its not safe to rely on its data structures like htons registered for the trx. So, instead of getting the registered htons from victim, innodb's hton can be looked up directly from installed_htons[] and used to abort the transaction. (Same technique is used in older versions) commit7c525ce36bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Sep 28 13:26:13 2016 -0400 MDEV-9312: storage engine not enforced during galera cluster replication Perform a post initialization of plugin-related variables of wsrep threads after their global counterparts have been initialized. commit88f2ec6f20Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Sep 28 13:23:31 2016 -0400 MDEV-10041: Server crashes sporadically during bootstrap while running wsrep tests The crash is caused due to a race condition where wsrep startup threads invoke ha_maria::implicit_commit() method while maria_hton is partially initialized. The fix is to skip this method if plugins are uninitialized. commite1c6f28f0dMerge:735a4a17c2c9ded859a6Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Sep 28 13:20:02 2016 -0400 Merge branch '10.0-galera' into 10.1 commitc9ded859a6Author: Hartmut Holzgraefe <hartmut@mariadb.com> Date: Wed Sep 21 10:51:37 2016 +0200 MDEV-10853 netcat help output in error log when running xtrabackup SST commit735a4a17c2Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Sep 28 17:59:11 2016 +0200 MDEV-10508 Mariadb crash on out of disk space during dump import update info->write_end and info->write_pos together, with no "return on error" in between, otherwise write_end might end up being smaller than write_pos commit794c826244Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Sep 26 14:29:23 2016 +0200 MDEV-10890 plugins.pam fails in buildbot with valgrind initialize uninitialized value commit66d9696596Merge:66a58f46e923af6f5942Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Sep 28 17:55:28 2016 +0200 Merge branch '10.0' into 10.1 commit66a58f46e9Merge:0e472236cea53f3c6d3cAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Wed Sep 28 16:19:05 2016 +0300 Merge fix for MDEV-10649 from 10.0 to 10.1 - storage/innobase/dict/dict0stats.cc - storage/xtradb/dict/dict0stats.cc commit0e472236ceAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Sep 27 17:38:47 2016 +0200 Make sure to recompile the feedback plugin for EMBEDDED On OS X with clang 7.3.0 running any test as embedded crashes. As libfeedback was not compiled with embedded, we had 2 notions of THD, with different number of members. When calling inline functions defined in sql_class.h, the functions were defined for 1 THD but called on an object that is different. This resulted in erroneous data being returned and shortly after, a crash within the alloc_query() function. Recompile the feedback plugin for the embedded server specifically to not have such symbol conflicts. commite226276950Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Sep 14 18:15:03 2016 +0200 MDEV-10777: Server crashed due to query_cache_info plugin Possible fix. Make the pluging more safe. commit3f5aedcccaAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Sep 27 11:18:24 2016 +0000 MDEV-10847 Bring AWS KMS encryption plugin up-to-date with released SDK - Library path's are different now - New dependency on Linux libuuid - Add calls for SDK Initialization/shutdown - Also add request_timeout parameter, default SDK HTTPs timeout appears to be too short in my tests commitf1aefd9d75Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Fri Sep 23 18:55:44 2016 +0200 MDEV-10823 Certain unicode characters in hostname prevent mysqld from starting Server uses gethostname() for the default base name for pid/log files. If a character is not representable in current ANSI encoding, gethostname replaces it with question mark. Thus, generated log file name would also contain a question mark. However, Windows forbids certain characters in filenames, among them '?'. This is described in MSDN article https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx At attempts to create the file via freopen() fails, thus server would not be able to start. The fix is to verify hostname and fall back to "mysql", if invalid characters are found. commit661d08c36cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 26 15:16:00 2016 +0300 MDEV-10887: innodb.innodb_stats_fetch_nonexistent fails in buildbot on Windows Problem was that test innodb.innodb_stats_fetch_corrupted will post a error InnoDB: Error: Table "mysql"."innodb_index_stats" not found to a error log and test ignores that message. However, following tests might see this error also and they might not ignore this error. Force a server restart after innodb.innodb_stats_fetch_corrupted to get clean log. commit452e849522Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 26 12:29:31 2016 +0300 MDEV-10886: encryption.innodb-bad-key-change fails (crashes) in buildbot Problem was that NULL-pointer was accessed inside a macro when page read from tablespace is encrypted but decrypt fails because of incorrect key file. Removed unsafe macro using inlined function where used pointers are checked. commit4e2a0c34b0Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 26 09:58:50 2016 +0300 MDEV-10888: encryption.filekeys_emptyfile fails in buildbot with valgrind Problem was that length of the filekeys file was not checked and if length is less than OpenSSL_prefix_len uninitialized memory was accessed. commitd30809a3cdAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon Sep 26 09:40:47 2016 +0400 MDEV-10832 Out of tree build: mysql_install_db to see all .sql files. One line in mysql_install_db.sh was left unfixed. commit7d7b92c107Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sat Sep 24 14:21:27 2016 +0300 Disable encryption info and first page read info for every tablespace on product builds. commit5d001d13c2Author: Daniel Black <danielgb@au.ibm.com> Date: Fri Sep 23 17:28:38 2016 +1000 MDEV-10832 - Out of tree build: mysql_install_db to see all .sql files (#237) * Out of tree build: mysql_install_db to see all .sql files Since MDEV-7875 (da0991c6), not all sql source files are in the source directory, maria_add_gis_sp_bootstrap.sql is in the build directory. This corrects mysql_install_db{.sh} to be aware of the differing locations. Signed-off-by: Daniel Black <daniel.black@au.ibm.com> * Out of tree build: scripts/mysql_install_db.pl.in Signed-off-by: Daniel Black <daniel.black@au.ibm.com> commite136aa1ba7Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Sep 23 09:11:11 2016 +0300 Fix test failure. Need to mask more tablespace numbers as they are not consistent on parallel mtr runs. commit1d55cfce10Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Sep 22 20:57:15 2016 +0300 Do not use os_file_read() directly for reading first page of the tablespace. Instead use fil_read() with syncronous setting. Fix test failures and mask tablespace number as it could change in concurrent mtr runs. commit2bedc3978bAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Sep 22 16:32:26 2016 +0300 MDEV-9931: InnoDB reads first page of every .ibd file at startup Analysis: By design InnoDB was reading first page of every .ibd file at startup to find out is tablespace encrypted or not. This is because tablespace could have been encrypted always, not encrypted newer or encrypted based on configuration and this information can be find realible only from first page of .ibd file. Fix: Do not read first page of every .ibd file at startup. Instead whenever tablespace is first time accedded we will read the first page to find necessary information about tablespace encryption status. TODO: Add support for SYS_TABLEOPTIONS where all table options encryption information included will be stored. commite387bfafbbAuthor: Seamus Lee <seamuslee001@gmail.com> Date: Thu Sep 22 19:14:40 2016 +1000 MDEV-10830 - Fix undefined database test error when running mysql_install_db (#234) * Fix undefined database test error when running mysql_install_db When using mariaDb in docker mode it can fail as it calls mysql_install_db but as we are going through a slightly different install process the test database has not been created, therefore we should fall back to the mysql database as per https://mariadb.com/kb/en/mariadb/mariadb-10112-mysql_install_db-aborts-on-unkown-file-test/ * Also fix mysql_install_db.pl.in commit9f837c6e1aAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Sep 22 10:03:12 2016 +0400 MDEV-10864 Wrong result for WHERE .. (f2=COMPRESS('test') OR f2=COMPRESS('TEST')) commit7e4eb990adAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Sep 22 07:00:10 2016 +0400 MDEV-10425 Assertion `collation.derivation == DERIVATION_IMPLICIT' failed in Item_func_conv_charset::fix_length_and_dec() MDEV-10850 Wrong result for WHERE .. (f2=TO_BASE64('test') OR f2=TO_BASE64('TEST')) Problem N1: MDEV-10425 Item_func_{md5|sha|sha2}::fix_length_and_dec() changed args[0]->collation to force binary comparison in args[0]->eq(). It was done to treat e.g. MD5('a') and MD5('A') as different values. It is wrong for a Item_func_xxx to modify its arguments. Item_func_conv_charset did not expect that and crashed on assert. Problem N2: MDEV-10850 Item_func_to_base64, Item_func_password, Item_func_hex are also case sensitive hash functions, but they did not compare their arguments as binary. Solution: - Removing the code changing args[0]->collation - Introducing Item_str_ascii_checksum_func as a common parent for Item_func_{md5|sha|sha2|password|hex|to_base64} and overriding its eq() method to compare arguments binary. commitec7e0b7b30Author: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 21 09:13:33 2016 +0400 MDEV-10556 Assertion `0' failed in virtual void Item_sum_field::set_result_field(Field*) commit8b51bacfd6Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Sep 20 21:32:53 2016 -0400 MDEV-10735: Valgrind warnings around Galera SST While copying the received state Id (uuid:seqno) to an uninitialized buffer, it was not properly null-terminated. commit6eca463caeAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Sep 20 15:17:57 2016 -0400 Fix typo in valgrind.supp commit98cc0913f0Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Sep 16 17:30:46 2016 +0200 - Woking on MDEV-10525. Lrecl mismatch on DBF files modified: storage/connect/filamdbf.cpp modified: storage/connect/filamdbf.h modified: storage/connect/reldef.cpp commitbb2c1a52c6Merge:de7f87708a7e0c9de864Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Sep 9 11:53:50 2016 +0200 Merge parallel replication async deadlock kill into 10.1 commitde7f87708aAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Sep 9 08:40:24 2016 +0400 MDEV-10702 Crash in SET STATEMENT FOR EXECUTE commit7e0c9de864Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Thu Sep 8 15:25:40 2016 +0200 Parallel replication async deadlock kill When a deadlock kill is detected inside the storage engine, the kill is not done immediately, to avoid calling back into the storage engine kill_query method with various lock subsystem mutexes held. Instead the kill is queued and done later by a slave background thread. This patch in preparation for fixing TokuDB optimistic parallel replication, as well as for removing locking hacks in InnoDB/XtraDB in 10.2. Signed-off-by: Kristian Nielsen <knielsen at knielsen-hq.org> commit8494039757Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Sep 6 16:34:25 2016 +0200 fix the test to work without preceding sys_vars.wsrep_provider_basic commit61fd38a1deAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Sep 5 17:11:14 2016 +0200 update plugin maturities commit0799cf0804Merge:a4623b5160747893a854Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Sep 5 13:04:55 2016 +0200 Fix merge conflict commita4623b5160Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Sep 5 12:47:52 2016 +0200 - Fix MDEV-10496. Memory leak in discovery modified: storage/connect/ha_connect.cc - Fix wrong lrecl calculation for virtual columns modified: storage/connect/reldef.cpp - Typo modified: storage/connect/jdbconn.cpp modified: storage/connect/json.cpp commit362ad94bb0Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Sep 5 09:11:42 2016 +0200 cleanup: don't copy-paste, don't current_thd commit747893a854Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Sep 2 14:40:09 2016 -0400 MDEV-10545: Update perfschema.nesting result commit31697d0b80Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Sep 2 12:21:40 2016 -0400 MDEV-10545: Server crashed in my_copy_fix_mb on querying I_S and P_S tables Once THDs have been added to the global "threads" list, they must modify query_string only after acquiring per- thread LOCK_thd_data mutex. commit3dd88fbd11Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Sep 1 12:59:11 2016 -0400 MDEV-10714: Could not execute Delete_rows event on table; wsrep_max_ws_rows exceeded. Error_Code 1180 The wsrep_max_ws_rows related implementation should be skipped when server is running with wsrep disabled. commit616271b7c9Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Sep 1 12:53:44 2016 -0400 Cleanup: MDL_context::wsrep_get_thd() is no longer needed commita322651b8aAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Mon Aug 29 16:44:46 2016 +0200 MDEV-10017: Get unexpected `Empty Set` for correlated subquery with aggregate functions take into account all arguments of aggregate function commitf6e47c0031Merge:64fe3894dd080ac47661Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Aug 31 11:51:12 2016 +0400 Merge pull request #224 from 0xAX/build-get-rid-from-die remove die() from BUILD/autorun.sh commit64fe3894ddAuthor: Daniel Bartholomew <db@dbart.us> Date: Tue Aug 30 10:32:37 2016 -0400 bump the VERSION commita02642b66eAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu Jun 23 17:50:07 2016 +0200 MDEV-10017: Get unexpected `Empty Set` for correlated subquery with aggregate functions (part 1) Make aggregate function dependency visible. commit00d84eada2Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Jun 22 11:17:44 2016 +0200 MDEV-10045: Server crashes in Time_and_counter_tracker::incr_loops Do not set 'optimized' flag until whole optimization procedure is finished. commit7d115e73b8Author: Elena Stepanova <elenst@montyprogram.com> Date: Sat Aug 27 19:50:42 2016 +0300 MDEV-10604 Create a list of unstable MTR tests to be disabled in distribution builds List of unstable tests for 10.1 commit467217e669Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 26 12:45:48 2016 -0400 MDEV-9510: Print extra info to error log Activated by enabling wsrep_debug. commita66092f2ebMerge:2d656793843575618237Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Aug 26 10:12:47 2016 +0200 Merge branch 'bb-10.1-serg' into 10.1 commit3575618237Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Aug 25 21:28:26 2016 -0400 Post merge fixes. commit16702ec95fAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Aug 25 21:19:25 2016 -0400 Record wsrep.variables test result (with non-debug galera library). commit90266e8a0eMerge:dfa3046db4b506d9527bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Aug 25 15:39:39 2016 -0400 Merge branch '10.0-galera' into bb-10.1-serg commit2d65679384Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Aug 25 19:47:38 2016 +0300 MDEV-10665: Json_writer produces extra members in output Fix an issue in Single_line_formatting_helper: flush_on_one_line() didn't clean up the buffered items which could cause them to be printed for the second time. This can't be ever observed by a user (see MDEV text for details). commitdfa3046db4Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Aug 25 15:11:21 2016 +0200 fix a test for windows commit6b1863b830Merge:ea91bb68015bbe929d70Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Aug 25 12:40:09 2016 +0200 Merge branch '10.0' into 10.1 commit080ac47661Author: Alexander Kuleshov <kuleshovmail@gmail.com> Date: Thu Aug 25 15:56:53 2016 +0600 remove die() from BUILD/autorun.sh This patch removes die() function from the BUILD/autorun.sh. It was introduced in thec682570431commit (Fix BUILD/autorun.sh to really bail out on error.). Last users of die() was removed in the8664de22commit (WL#5665: Removal of the autotools-based build system) and since it is not used anywhere. No functionality changes. Just cleanup. commitb506d9527bMerge:c309e99ff9d40d3f4e57Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Aug 24 19:41:11 2016 -0400 Merge branch '5.5-galera' into 10.0-galera commitc309e99ff9Merge:8b09db8bfb5bbe929d70Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Aug 24 19:30:32 2016 -0400 Merge branch '10.0' into 10.0-galera commit8b09db8bfbAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Aug 24 17:13:20 2016 -0400 Fixes/improvements in galera test suite commit1b7c5dedf7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Aug 24 15:32:48 2016 -0400 MDEV-10566: Create role statement replicated inconsistently in Galera Cluster In galera cluster, the definer (and thus binlog invoker) must be set for CREATE ROLE before Query_log_event is created during TOI on the originating node. commitea91bb6801Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jul 26 12:34:04 2016 +0200 MDEV-10361 Crash in pam_securid.so with auth_pam connecting from SQLyog auth_pam: debug output commit2024cddaa4Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Aug 22 21:27:20 2016 -0400 MDEV-10518: Large wsrep_gtid_domain_id may break IST wsrep_gtid_domain_id was incorrectly being parsed and stored as a signed long number on the joiner node. commit3ac0721a3cAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Aug 22 19:06:32 2016 -0400 MDEV-10507: MariaDB 10.1 + wsrep fails to start under systemd post-reboot /var/run/mysqld must be created before wsrep recovery. commit294961cc4dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Aug 22 18:38:06 2016 -0400 MDEV-10538: MariaDB fails to start without galera_recovery in systemd mode Update ExecStartPre scripts to not fail if 'galera_recovery' script is not available. commitf381ad5230Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Aug 21 20:13:51 2016 -0400 Update WSREP_PATCH_REVNO. commit3f481e52e4Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Aug 21 20:09:05 2016 -0400 Fixes for failing tests (post-merge). commitcced23cf23Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jun 29 16:50:53 2016 -0400 MDEV-9423: cannot add new node to the cluser: Binlog.. .. file '/var/log/mysql/mariadb-bin.000001' not found in binlog index, needed for recovery. Aborting. In Galera cluster, while preparing for rsync/xtrabackup based SST, the donor node takes an FTWRL followed by (REFRESH_ENGINE_LOG in rsync based state transfer and) REFRESH_BINARY_LOG. The latter rotates the binary log and logs Binlog_checkpoint_log_event corresponding to the penultimate binary log file into the new file. The checkpoint event for the current file is later logged synchronously by binlog_background_thread. Now, since in rsync/xtrabackup based snapshot state transfer methods, only the last binary log file is transferred to the joiner node; the file could get transferred even before the checkpoint event for the same file gets written to it. As a result, the joiner node would fail to start complaining about the missing binlog file needed for recovery. In order to fix this, a mechanism has been put in place to make REFRESH_BINARY_LOG operation wait for Binlog_checkpoint_log_event to be logged for the current binary log file if the node is part of a Galera cluster. As further safety, during rsync based state transfer the donor node now acquires and owns LOCK_log for the duration of file transfer during SST. commit415823a41cAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Wed Jun 8 15:19:01 2016 +0300 Refs: MW-279 - fixes in innodb to skip wsrep processing (like kill victim) when running in native mysql mode - similar fixes in mysql server side - forcing tc_log_dummy in native mysql mode when no binlog used. wsrep hton messes up handler counter and used to lead in using tc_log_mmap instead. Bad news is that tc_log_mmap does not seem to work at all commitfec296cc10Author: Damien Ciabrini <damien.ciabrini@gmail.com> Date: Fri Aug 12 10:57:58 2016 +0200 refs codership/mysql-wsrep#267 Fix Galera crash at startup when compiled with gcc 6 commit2e56c7f3cdAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Aug 9 12:34:03 2016 +0300 Bump WSREP_PATCH_VERSION to 16 commitf01a16b541Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Aug 4 00:33:12 2016 -0700 Galera MTR Tests: fortify galera_bf_abort_flush_for_export against sporadic failures. commit30c6ac3cd1Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Aug 3 02:52:39 2016 -0700 Galera MTR Tests: Attempt to fortify galera_kill_ddl.test against sporadic failures commit0656453135Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Jul 22 04:16:09 2016 -0700 Galera MTR Tests: increase timeouts and adjust some sporadically-failing tests so that the Galera suites can be run with --parallel=4 commit85b9718b22Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Jul 13 03:19:20 2016 -0700 Galera MTR Tests: Test case for galera#414 - crash on shutdown with gcs.max_packet_size=2 commitea3ff73031Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Thu Jun 9 09:21:43 2016 +0200 GCF-837 Fix crash when loading wrong provider version mysqld would crash with "double free or corrruption message" if wrong provider version was given. commitbf19492e3bAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Mon Jun 13 17:49:42 2016 +0200 GCF-837 Check wsrep interface version before loading provider commitdfa9012abbAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Mon Jun 20 14:35:22 2016 +0200 MW-285 MTR test case for broken foreign key constraints commitc9ac48f845Author: Krunal Bauskar <krunal.bauskar@percona.com> Date: Thu Jun 2 16:44:54 2016 +0530 - PXC#592: Tried closing fk-reference-table that was never opened. Function "wsrep_row_upd_check_foreign_constraints" tried to mark fk-reference-table opened without ensuring it table is really opened. commit88a1592b0aAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Tue Jun 14 17:18:21 2016 +0200 MW-286 Avoid spurious deadlock errors when wsrep_on is disabled If a conflict happens under wsrep_on, the THD's wsrep_conflict_state is typically set to MUST_ABORT and cleared later, when transaction is aborted. However, when wsrep_on is disabled, no check is performed to see whether wsrep_conflict_state is set. So this potentially creates spurious deadlock errors on the subsequent statement that runs with wsrep_on enabled. To avoid this problem wsrep_thd_set_conflict_state() sets the conflict state only if wsrep_on is enabled. commita12fa57d35Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Jun 13 06:17:33 2016 -0700 Galera MTR Tests: Run galera_pc_weight on freshly started servers in order to prevent interaction with other tests commit5996c7baadAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Tue Jun 7 10:46:14 2016 +0300 refs: MW-279 - At startup time global wsrep_on is set too late and some wsrep paths may be executed because of this. e.g. replication slave restart could happen before wsrep_on state is defined. - This fix checks both global wsrep_on and wsrep_provider values to determine if wsrep processing should happen - Fix affects all instances where WSREP_ON macro is used commit0e83726edbAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Jun 3 04:26:17 2016 -0700 Galera MTR Tests: force galera_3nodes.galera_pc_bootstrap.test to run on a fresh cluster in order to avoid interaction with galera_3nodes.galera_innobackupex_backup.test commit5609020c71Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Jun 2 23:56:16 2016 -0700 Galera MTR Tests: fortify galera_parallel_simple.test against sporadic failures commit1cb01fe7d2Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Jun 2 23:39:12 2016 -0700 Galera MTR Tests: Fortify galera_restart_nochanges.test against sporadic failures due to node not being ready immediately after restart commit92162e6d87Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Wed May 18 11:07:58 2016 +0200 MW-175 Fix definitively lost memory in wsrep_get_params commit137af55ca1Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue May 17 22:23:51 2016 -0700 Galera MTR Tests: stability fixes commitdb837fde87Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Sun May 1 23:29:55 2016 -0700 Galera MTR Tests: Adjust tests for xtrabackup 2.4.2 commit81174c9ab1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Aug 15 11:29:48 2016 -0400 Fix galera/MW-44 test post-merge. commit182787f39eAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Apr 14 01:25:54 2016 -0700 Galera MTR Tests: Adjust galera_log_output_csv.test to account for the fix for MW-44 commit675bcf3b6dAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Apr 14 01:03:37 2016 -0700 Galera MTR Tests: A test for MW-44 - Disable general log for applier threads commitf49500a803Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Tue Apr 5 14:08:39 2016 +0300 MW-44 Disable general log for applier threads commit3f22e743c5Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Aug 15 11:14:57 2016 -0400 Fix galera/GAL-382 test post-merge. commit9b42f09902Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Apr 4 07:09:32 2016 -0700 Galera MTR Tests: Add test for GAL-382, codership/galera#382 - InnoDB: Failing assertion: xid_seqno > trx_sys_cur_xid_seqno in trx0sys.cc line 356 commitfce9217c21Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Apr 4 05:32:50 2016 -0700 Galera MTR Test: Fix for MW-258.test - do not use SHOW PROCESSLIST commitdda114461eAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Apr 4 05:14:13 2016 -0700 Galera MTR Tests: Fixed tests to account for GAL-391 , GAL-374 commitd45b58263dAuthor: Alexey Yurchenko <ayurchen@galeracluster.com> Date: Sat Apr 2 22:37:22 2016 -0300 MW-259 - moved wsrep desync/resync calls from wsrep_desync_update() to wsrep_desync_check() method which does not hold the lock and is arguably a more fitting place to change provider state - before changing the actual variable value. commit4582a4bccfAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 12 14:03:24 2016 -0400 Fix galera_ist_recv_bind.test. commit90d92d2b49Author: Alexey Yurchenko <ayurchen@galeracluster.com> Date: Sat Apr 2 21:51:26 2016 -0300 MW-258 - RSU DDL should not rely on the global wsrep_desync variable value and should always try to desync on its own. commita00f4b29b5Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Mar 15 03:38:31 2016 -0700 Refs codership/galera#105 An MTR test for ist.recv_bind commitb758e9238aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 12 13:42:12 2016 -0400 Fix galera_transaction_replay.test. commit4e4ad17163Author: sjaakola <seppo.jaakola@iki.fi> Date: Tue Mar 8 18:10:21 2016 +0200 Refs MW-255 - popping PS reprepare observer before BF aborted PS replaying begins dangling observer will cause failure in open_table() ater on - test case for this anomaly commitd246630d73Author: sjaakola <seppo.jaakola@iki.fi> Date: Mon Mar 7 23:34:03 2016 +0200 Refs MW-252 - changed the condition when to do implicit desync as part of FTWRL to cover only case when node is PC and synced. Donor node has alreaydy desycned and other states mean that node is not in cluster, so desync is not even possible. commitf3444c4a43Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Mar 4 14:20:58 2016 +0200 Bump WSREP_PATCH_VERSION to 14 commit8b998a48ccAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 12 12:56:41 2016 -0400 Update galera version-dependent tests. commit65cf1d354aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Aug 11 22:28:57 2016 -0400 Refs: MW-252 Test fix post-merge commitfe6ebb657eAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Mar 1 08:32:06 2016 -0800 Refs: MW-252 MTR tests for FTWRL and desync commita03c45fa98Author: sjaakola <seppo.jaakola@iki.fi> Date: Tue Mar 1 10:56:21 2016 +0200 Refs: MW-252 - if wsrep_on==OFF, unlock tables would resume provider even though it was not passed in FTWRL processing. This is fixed in this patch. commit8ec50ebda3Author: sjaakola <seppo.jaakola@iki.fi> Date: Mon Feb 29 22:54:58 2016 +0200 Refs MW-252 - reverted from tracking donor servicing thread. With xtrabackup SST, xtrabackup thread will call FTWRL and node is desynced upfront - Skipping desync in FTWRL if node is operating as donor commitb159b666e5Author: sjaakola <seppo.jaakola@iki.fi> Date: Mon Feb 29 16:36:17 2016 +0200 Refs MW-252 - Calling FTWRL two times in a row caused desync error, this is fixed by making sub-sequent FTWRL calls bail out before wsrep operations commit4290117b79Author: sjaakola <seppo.jaakola@iki.fi> Date: Mon Feb 29 15:24:06 2016 +0200 Refs MW-252 - enveloped FTWRL processing with wsrep desync/resync calls. This way FTWRL processing node will not cause flow control to kick in - donor servicing thread is unfortunate exception, we must let him to pause provider as part of FTWRL phase, but not desync/resync as this is done as part of donor control on higher level commitda9650a36aAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Fri Feb 19 13:08:22 2016 +0200 Refs: MW-248 - some more code cleanup commitae0fec9c36Author: sjaakola <seppo.jaakola@iki.fi> Date: Fri Feb 19 13:02:59 2016 +0200 refs: MW-248 - removed the off topic mtr test commit5edf55be63Author: sjaakola <seppo.jaakola@iki.fi> Date: Fri Feb 19 11:48:09 2016 +0200 Refs: MW-248 - fixed the test case and extended with autoinc modification is master side commitdf96eb5d04Author: sjaakola <seppo.jaakola@iki.fi> Date: Thu Feb 18 14:34:53 2016 +0200 Refs: MW-248 - test cases from PXC for reproducing the issue - initial fix commita53ac77c42Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Aug 10 12:30:57 2016 -0400 Cleanup: Remove dead code commit58386ca04dAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Mon Jan 11 22:43:27 2016 +0200 refs codership/mysql-wsrep#239 Synced xtrabackup SST scripts from PXC source tree as of PXC 5.6.27-25.13 - PXC#480: xtrabackup-v2 SST fails with multiple log_bin directives in my.cn - PXC#460: wsrep_sst_auth don't work in Percona-XtraDB-Cluster-56-5.6.25-25. - PXC-416: Fix SST related issues. - PXC-389: Merge remote-tracking branch 'wsrep/5.6' into 5.6-wsrep-pxc389 - Bug #1431101: SST does not clobber backup-my.cnf commitd0d99dec91Merge:1e160e5cb32f5ae0fbe7Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Aug 18 11:51:47 2016 +0400 Merge pull request #206 from prohaska7/10.1-with-asan MDEV-10412 fix WITH_ASAN option for 10.1 commit1e160e5cb3Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Aug 17 13:57:34 2016 +0400 MDEV-10404 - Improved systemd service hardening causes SELinux problems Disabled NoNewPrivileges until SELinux policy is fixed. commit48fbb2bf07Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Aug 16 12:34:58 2016 +0200 MDEV-10553: Semi-sync replication hangs when master opens new binlog file In the AFTER_SYNC case, semi-sync was taking the binlog file name from the wrong place, so around binlog rotation it could be using the new name with a position belonging to the previous binlog file name. Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org> commitd40d3f4e57Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Jul 19 20:44:02 2016 +0000 MDEV-10314 : wsrep_client_thread was not set in threadpool. Fixed threadpool_add_connection to use thd_prepare_connection() to match thread-per-conection flow. commitabfbe80840Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Aug 10 14:48:44 2016 -0400 MW-292: Fix test case Also backported missing test include files. commit55fb72d869Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Aug 10 17:57:58 2016 +0200 - JdbcInterface: change return type of ...Field function modified: storage/connect/JdbcInterface.java - Change Version number and date modified: storage/connect/ha_connect.cc - Implement the test on connect_type_conv YES/NO modified: storage/connect/jdbconn.cpp modified: storage/connect/odbconn.cpp - Fix MDEV-10520. Local schema was confused with remote schema modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabodbc.cpp - Fix crash when using mapped indices. Was trying to write in a mapped file declared as read only. modified: storage/connect/xindex.cpp commitdfadb3680dAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Jul 15 01:13:32 2016 -0700 Galera MTR Tests: Test case for MW-292 : NOW() returns stale timestamp after transaction replay commit9a809fe31bAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Thu Jul 14 14:29:59 2016 +0200 MW-292 Reset timestamp after transaction replay Transaction replay causes the THD to re-apply the replication events from execution, using the same path appliers do. While applying the log events, the THD's timestamp is set to the timestamp of the event. Setting the timestamp explicitly causes function NOW() to always the timestamp that was set. To avoid this behavior we reset the timestamp after replaying is done. commit38a0def805Merge:44e3046d3b5ad02062d9Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Aug 10 10:34:54 2016 -0400 Merge tag 'mariadb-5.5.51' into 5.5-galera commit44e3046d3bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Aug 3 22:15:57 2016 -0400 MDEV-10487: Galera SST using rsync does not filter out lost+found In rsync based SST method, during third phase of data transfer, 'lost+found' should be filtered out while recursively transferring files from various directories under data directory. commita8c2f68fb8Merge:ed48fcf177558c8ce0f0Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Aug 2 09:53:41 2016 +0300 Merge pull request #208 from Cona19/10.1-remove-unnecessary-semicolon Remove unnecessary semicolon commited48fcf177Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Aug 1 17:02:28 2016 -0400 MDEV-10478: Trx abort does not work in autocommit mode THD's statement transaction handle (st_transactions::stmt) should also be looked for registered htons while serving a request to abort a transaction. commit84a9e05003Author: Sergei Petrunia <psergey@askmonty.org> Date: Mon Aug 1 12:19:29 2016 +0300 MDEV-10470: main.derived fails, buildbot is broken - Update test result (checked) commit558c8ce0f0Author: Hyeonseok Oh <hyeonso5@gmail.com> Date: Mon Aug 1 12:13:14 2016 +0900 Remove unnecessary semicolon commit67480fc5fdAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jul 28 15:49:59 2016 -0400 MDEV-10429: sys_vars.sysvars_wsrep fails in buildbot on host 'work' (valgrind builder) - Fixed the test - Improved comment for wsrep_drupal_282555_workaround commitb522c71e4bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jul 22 19:00:49 2016 -0400 MDEV-10396: MariaDB does not restart after upgrade on debian 8 During wsrep position recovery, galera_recovery.sh script redirected mysqld's error log to a temporary file in order to find the start position. This, however, will not work if --log-error is configured for the server. Fixed by using --log-error in command line instead of redirection. [Patch contributed by Philippe MARASSE] commita63ceaeab1Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jul 27 17:01:45 2016 +0300 MDEV-10389: Query returns different results on a debug vs non-debug build The problem was caused by a merged semi-join, which contained a non-merged semi-join, which used references to the top-level query in the left_expr. When moving non-merged semi-join from the subquery to its parent, do not forget to call fix_after_pullout for its Item_subselect. We need to do that specifically, because non-merged semi-joins do not have their IN-equality in the WHERE clause at this stage. commit9f211d4956Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Jul 19 20:44:02 2016 +0000 MDEV-10314 : wsrep_client_thread was not set in threadpool. Fixed threadpool_add_connection to use thd_prepare_connection() to match thread-per-conection flow. commit963673e7afAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jul 25 21:52:02 2016 -0400 MW-292: Fix test case commite57287866fAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Jul 15 01:13:32 2016 -0700 Galera MTR Tests: Test case for MW-292 : NOW() returns stale timestamp after transaction replay commit7431368eafAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Thu Jul 14 14:29:59 2016 +0200 MW-292 Reset timestamp after transaction replay Transaction replay causes the THD to re-apply the replication events from execution, using the same path appliers do. While applying the log events, the THD's timestamp is set to the timestamp of the event. Setting the timestamp explicitly causes function NOW() to always the timestamp that was set. To avoid this behavior we reset the timestamp after replaying is done. commitcbc8a84fa2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jul 25 11:51:21 2016 -0400 MW-267 Enforce wsrep_max_ws_size limit in wsrep provider Update test results. commit74f80b3499Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Fri May 6 16:07:53 2016 +0200 MW-267 Enforce wsrep_max_ws_size limit in wsrep provider This changes variable wsrep_max_ws_size so that its value is linked to the value of provider option repl.max_ws_size. That is, changing the value of variable wsrep_max_ws_size will change the value of provider option repl.max_ws_size, and viceversa. The writeset size limit is always enforced in the provider, regardless of which option is used. commit5197fcf6b4Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Thu May 5 13:20:32 2016 +0200 MW-269 Fix outstanding issues with wsrep_max_ws_rows This patch includes two fixes: 1) Rollback when wsrep_max_ws_rows is exceeded would not switch back to previous autocommit mode; and 2) Internal rows counter would not be reset on implicit commits. commit2f5ae0fbe7Author: Rik Prohaska <prohaska7@gmail.com> Date: Sun Jul 24 10:06:18 2016 -0400 MDEV-10412 fix WITH_ASAN option for 10.1 commita52d3aa831Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Jun 22 11:17:44 2016 +0200 MDEV-10045: Server crashes in Time_and_counter_tracker::incr_loops Do not set 'optimized' flag until whole optimization procedure is finished. commite6a64e8f0eAuthor: Daniel Black <danielgb@au.ibm.com> Date: Fri Jul 22 09:19:35 2016 +1000 MDEV-10294: MTR using --valgrind-option to specify a tool / fixing callgrind [10.1] (#200) * MDEV-10294: Put testname into environment as MTR_TEST_NAME during MTR * MDEV-10294: restructure mtr to allow --valgrind-option=--tool=XXX * MDEV-10294: mtr valgrind - supressions all tools + feedback commite373f60fd1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jul 20 18:12:17 2016 -0400 MW-265 Add support for wsrep_max_ws_rows Update test results. commit3db92ee433Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Tue May 3 16:22:01 2016 +0200 MW-265 Add support for wsrep_max_ws_rows Variable wsrep_max_ws_rows limits the number of rows that a transaction can insert/update/delete. commitf0386598ddAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Jul 19 20:44:02 2016 +0000 MDEV-10314 : wsrep_client_thread was not set in threadpool. Fixed threadpool_add_connection to use thd_prepare_connection() to match thread-per-conection flow. commit9b668d7c8aAuthor: Daniel Bartholomew <db@dbart.us> Date: Mon Jul 18 11:01:03 2016 -0400 bump the VERSION commite4b1846c60Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Jul 15 00:43:37 2016 +0200 - jdbc.test: change data file girls.txt CRLF to LF modified: storage/connect/mysql-test/connect/r/jdbc.result modified: storage/connect/mysql-test/connect/std_data/girls.txt modified: storage/connect/mysql-test/connect/t/jdbc.test commit543cba96c6Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Jul 14 19:47:40 2016 +0200 - Disable JDBC tests that fail on Linux modified: storage/connect/mysql-test/connect/disabled.def - Typo modified: storage/connect/CMakeLists.txt commit1168c1a3b9Author: Elena Stepanova <elenst@montyprogram.com> Date: Thu Jul 14 03:55:33 2016 +0300 Fix embedded and 32-bit test results after MDEV-8580 commit12ac3ee11eAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jul 13 14:47:58 2016 +0300 Update test results: make innodb_ext_key test stable commitbebabd68abMerge:326a8dcd8710880d67b9Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Jul 13 12:10:07 2016 +0200 Merge branch '10.0-galera' into 10.1 commit326a8dcd87Merge:64583629adc6fdb92ca8Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Jul 13 12:09:59 2016 +0200 Merge branch '10.0' into 10.1 commit64583629adAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Jul 12 16:36:43 2016 +0200 MDEV-9588 Mariadb client-only build creates a useless mysqld_safe file commit12dc083a45Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jul 12 13:41:29 2016 +0200 MDEV-8580 For some BOOLEAN or ENUM sysvars list of valid values is not generated set the 'typelib' member for plugin boolean sysvars commit0d5583b41bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Jul 13 08:55:20 2016 +0200 cleanup commitc5d73186c0Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jul 12 13:02:26 2016 +0200 MDEV-8227 simple_password_check_minimal_length gets adjusted without a warning commit4b88cf33c2Author: Rik Prohaska <prohaska7@gmail.com> Date: Wed Jun 29 13:27:51 2016 -0400 fix sql-bench test-table-elimination view leak. see MDEV-10310 for details commit98b1bb0b8eAuthor: Rik Prohaska <prohaska7@gmail.com> Date: Sat Jun 25 16:44:48 2016 -0400 fix MDEV-7225. see https://jira.mariadb.org/browse/MDEV-72225 for details. commit8a8ba1949bAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Mon Jul 11 22:22:32 2016 +0300 MDEV-10360: Extended keys: index properties depend on index order TABLE_SHARE::init_from_binary_frm_image has a rule: if an index has a partially-covered column (like in "KEY(col(N))" ), then dont provide "Extended Keys" feature for this index. The problem was that due to coding error Extended Keys feature was disabled for *ALL* subsequent indexes. Fixed the error. commit0bb5d95542Author: Sergei Petrunia <psergey@askmonty.org> Date: Mon Jul 11 22:01:24 2016 +0300 MDEV-10325: Queries examines all rows of a tables when it should not The problem was introduced by1859caf60b: MDEV-10175: range optimizer calls records_in_range() for full extended keys Make the range optimizer not call records_in_range() when it would not give any benefit. that patch used an incorrect way to check for full extended key. Now fixing the check. commit53e7fcca41Author: Craig Andrews <candrews@integralblue.com> Date: Tue Jun 28 11:23:12 2016 -0400 MDEV-10298: Systemd hardening Add ProtectSystem=full, NoNewPrivileges=true, PrivateDevices=true, and ProtectHome=true to the systemd units. commit72844d88f6Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Jul 12 11:56:38 2016 +0200 Adding DESTINATION to install_jar in CMakeLists.txt commit11a1332b87Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jul 11 19:14:19 2016 +0200 Change CONNECT to connect-engine in CMakeLists.txt commitf280a87c66Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Mon Jul 11 17:03:03 2016 +0000 MDEV-10318 : Fix crash in embedded, in case prepared statement has parameter placeholders, but does not bind parameters commit11f0eb0f1dAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jul 11 18:45:37 2016 +0200 Add CONNECT_WITH_JDBC to CMakeLists.txt commit8388ae6c00Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jul 11 15:22:30 2016 +0200 - Try distributing the JdbcInterface.jar ${INSTALL_PLUGIN_DIR} --> ${INSTALL_PLUGINDIR} modified: storage/connect/CMakeLists.txt - Try several paths when looking for JVM lib modified: storage/connect/jdbconn.cpp - Make Jdbc tests running on Windows and Linux modified: storage/connect/mysql-test/connect/r/jdbc.result modified: storage/connect/mysql-test/connect/r/jdbc_new.result modified: storage/connect/mysql-test/connect/t/jdbc.test modified: storage/connect/mysql-test/connect/t/jdbc_new.test - Fix compiler's warnings modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/jsonudf.cpp commitfca92ced73Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Jul 9 12:15:30 2016 +0200 remove jdrv.test commitb6209dc519Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Jul 9 12:08:31 2016 +0200 - JAVA DEBUG now depends on connect_xtrace MySQL and MariaDB drivers use catalog for schema modified: storage/connect/JdbcInterface.java - Jdbc temporal fields now return time in seconds modified: storage/connect/JdbcInterface.java modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h - Recognize JDBC temporal types modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp - Test validity of URL modified: storage/connect/ApacheInterface.java modified: storage/connect/JdbcInterface.java modified: storage/connect/MariadbInterface.java modified: storage/connect/MysqlInterface.java modified: storage/connect/OracleInterface.java modified: storage/connect/PostgresqlInterface.java - Java class files are no more distributed A JdbcInterface.jar file is now compiled modified: storage/connect/CMakeLists.txt deleted: storage/connect/wrappers/ApacheInterface.class deleted: storage/connect/wrappers/Client.class deleted: storage/connect/wrappers/JdbcInterface.class deleted: storage/connect/wrappers/MariadbInterface.class deleted: storage/connect/wrappers/MysqlInterface.class deleted: storage/connect/wrappers/OracleInterface.class deleted: storage/connect/wrappers/PostgresqlInterface.class - Try to find the JVM path using JAVA_HOME or registers (Windows) modified: storage/connect/jdbconn.cpp - Add Monty's patches modified: storage/connect/connect.h modified: storage/connect/csort.cpp modified: storage/connect/ha_connect.cc modified: storage/connect/jsonudf.cpp -Change connect_java_wrapper variable from GLOBAL to SESSION modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp - Modify the tests to be able to run at least jdbc and jdbc_new modified: storage/connect/mysql-test/connect/disabled.def modified: storage/connect/mysql-test/connect/r/jdbc.result modified: storage/connect/mysql-test/connect/r/jdbc_new.result modified: storage/connect/mysql-test/connect/t/jdbc.test modified: storage/connect/mysql-test/connect/t/jdbc_new.test modified: storage/connect/mysql-test/connect/t/jdbconn.inc modified: storage/connect/mysql-test/connect/t/jdbconn_cleanup.inc added: storage/connect/mysql-test/connect/std_data/JdbcMariaDB.jar commitae511cbe38Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Jun 28 14:53:17 2016 +0400 MDEV-9363 - Mroonga tests with datetime field fail on Solaris in buildbot On Solaris mktime() adds one extra day to tm_mday field and returns appropriate value for dates 1600-01-01 and earlier. That is 1600-01-01 becomes 1600-01-02. Solaris mktime manual excerpts: ... The tm_year member must be for year 1901 or later. Calendar times before 20:45:52 UTC, December 13, 1901 or after 03:14:07 UTC, January 19, 2038 cannot be represented. Port- able applications should not try to create dates before 00:00:00 UTC, January 1, 1970 or after 00:00:00 UTC, January 1, 2038. ... The mktime() function assumes Gregorian dates. Times before the adoption of the Gregorian calendar will not match his- torial records. ... According to manual Mroonga only supports dates and datetimes after 1900: https://mariadb.com/kb/en/mariadb/about-mroonga/ Technically these tests cover unsupported values and should fail on all platforms. Disable tests until the problem is fixed upstream. commitecb27d2650Author: Sergey Vojtovich <svoj@mariadb.org> Date: Mon Jun 27 15:01:22 2016 +0400 MDEV-10010 - Recursive call to mysql_rwlock_rdlock for LOCK_system_variables_hash Avoid recursive LOCK_system_variables_hash acquisition in intern_sys_var_ptr() by pre-syncing dynamic session variables. commit95c286cedfAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Jul 5 16:53:03 2016 +0300 MDEV-10324: Server crash in get_sel_arg_for_keypart or Assertion The crash was caused by this problem: get_best_group_min_max() tries to construct query plans for keys that are not processed by the range optimizer. This wasn't a problem as long as SEL_TREE::keys was an array of MAX_KEY elements. However, now it is a Mem_root_array and only has elements for the used keys, and get_best_group_min_max attempts to address beyond the end of the array. The obvious way to fix the crash was to port (and improve) a part of 96fcfcbd7b5120e8f64fd45985001eca8d36fbfb from mysql-5.7. This makes get_best_group_min_max not to consider indexes that Mem_root_arrays have no element for. After that, I got non-sensical query plans (see MDEV-10325 for details). Fixed that by making get_best_group_min_max to check if the index is in table->keys_in_use_for_group_by bitmap. commitd1b2589074Author: Alexander Barkov <bar@mariadb.org> Date: Tue Jul 5 15:23:22 2016 +0400 Removing class Item_func_integer. It's not used since MySQL-5.0. commit1ec91803acAuthor: Alexander Barkov <bar@mariadb.org> Date: Sun Jul 3 13:52:06 2016 +0400 MDEV-10317 EXCTACT(MINUTE_MICROSECOND) truncates data commit3ccf8218bcAuthor: Alexander Barkov <bar@mariadb.org> Date: Sun Jul 3 11:20:46 2016 +0400 Partial backporting of7b50447aa6(MDEV-9407, MDEV-9408) from 10.1 Needed to fix MDEV-10317 easier. commitf832b47833Author: Alexander Barkov <bar@mariadb.org> Date: Sun Jul 3 10:41:16 2016 +0400 Removing the "thd" argument from Item::create_field_for_create_select(). "thd" is available through the "table" argument, as table->in_use. Backporting (partially) from 10.2. commitfc905f15d1Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Jul 2 18:08:40 2016 +0200 - New version of java wrappers as the "wrappers" package modified: storage/connect/CMakeLists.txt commitccdd63388aAuthor: Daniel Bartholomew <db@dbart.us> Date: Fri Jul 1 11:30:38 2016 -0400 bump the VERSION commit6a7c73e340Merge:3fd214c8be37b08eff90Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Jul 1 10:24:25 2016 +0300 Merge pull request #198 from grooverdan/10.1-cross-compile Cross Compile HAVE_FALLOC_PUNCH_HOLE_AND_KEEP_SIZE change to compile check commit37b08eff90Author: Daniel Black <daniel.black@au.ibm.com> Date: Fri Jul 1 17:10:46 2016 +1000 Cross Compile HAVE_FALLOC_PUNCH_HOLE_AND_KEEP_SIZE change to compile check HAVE_FALLOC_PUNCH_HOLE_AND_KEEP_SIZE only needed a compile check rather than a RUN check so after changing to a compile check there is one less variable to manually set while cross compiling. commit10880d67b9Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jun 30 10:24:54 2016 -0400 Postfix: memory leak in XtraDB commitb0c90e8186Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Jun 30 11:28:24 2016 +0200 - New version of java wrappers as the "wrappers" package deleted: storage/connect/JdbcApacheInterface.class deleted: storage/connect/JdbcApacheInterface.java deleted: storage/connect/JdbcDSInterface.class deleted: storage/connect/JdbcDSInterface.java modified: storage/connect/JdbcInterface.java modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h added: storage/connect/ApacheInterface.java added: storage/connect/Client.java added: storage/connect/JdbcInterface.jar added: storage/connect/MariadbInterface.java added: storage/connect/MysqlInterface.java added: storage/connect/OracleInterface.java added: storage/connect/PostgresqlInterface.java added: storage/connect/wrappers/ApacheInterface.class added: storage/connect/wrappers/Client.class added: storage/connect/wrappers/JdbcInterface.class added: storage/connect/wrappers/MariadbInterface.class added: storage/connect/wrappers/MysqlInterface.class added: storage/connect/wrappers/OracleInterface.class added: storage/connect/wrappers/PostgresqlInterface.class commit3fd214c8beAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jun 29 16:50:53 2016 -0400 MDEV-9423: cannot add new node to the cluser: Binlog.. .. file '/var/log/mysql/mariadb-bin.000001' not found in binlog index, needed for recovery. Aborting. In Galera cluster, while preparing for rsync/xtrabackup based SST, the donor node takes an FTWRL followed by (REFRESH_ENGINE_LOG in rsync based state transfer and) REFRESH_BINARY_LOG. The latter rotates the binary log and logs Binlog_checkpoint_log_event corresponding to the penultimate binary log file into the new file. The checkpoint event for the current file is later logged synchronously by binlog_background_thread. Now, since in rsync/xtrabackup based snapshot state transfer methods, only the last binary log file is transferred to the joiner node; the file could get transferred even before the checkpoint event for the same file gets written to it. As a result, the joiner node would fail to start complaining about the missing binlog file needed for recovery. In order to fix this, a mechanism has been put in place to make REFRESH_BINARY_LOG operation wait for Binlog_checkpoint_log_event to be logged for the current binary log file if the node is part of a Galera cluster. As further safety, during rsync based state transfer the donor node now acquires and owns LOCK_log for the duration of file transfer during SST. commit33492ec8d4Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Jun 29 21:51:15 2016 +0200 update tests for 32bit commitf10b7db1e2Author: Sergei Golubchik <vuvova@gmail.com> Date: Wed Jun 29 11:16:26 2016 +0200 valgrind.supp: fix a typo commit341e5f4411Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 28 15:38:41 2016 +0200 MDEV-10054 Secure login fails when CIPHER is required SSL: do not require client certificate to exist, if GRANT didn't require that commit8354c0c4d6Merge:736f821c42e786a57255Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 28 22:13:59 2016 +0200 Merge remote-tracking branch 'refs/remotes/github/10.1' into 10.1 commit736f821c42Merge:62e0a4552f7e64b07968Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 28 22:12:50 2016 +0200 Merge branch 'connect/10.1' into 10.1 commit62e0a4552fMerge:3361aee591f629f53548Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 28 22:06:22 2016 +0200 Merge branch '10.0-galera' into 10.1 commit3361aee591Merge:6ce20fb2b90fdb17e6c3Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 28 22:01:55 2016 +0200 Merge branch '10.0' into 10.1 commite786a57255Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Jun 28 17:20:19 2016 +0300 Output more information when assertion ut_a(state == BUF_BLOCK_NOT_USED || state == BUF_BLOCK_REMOVE_HASH); is hit. commit6ce20fb2b9Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 28 10:10:49 2016 +0200 MDEV-9428 NO_AUTO_VALUE_ON_ZERO is ignored when a trigger before insert is defined fix the *other* fill_record() too, arrgh! commit9c38308d8fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 28 10:04:34 2016 +0200 MDEV-10086 no gssapi-server RPM package anymore in 10.1 set CPACK_COMPONENTS_ALL both on the current and parent scope commit414a417e91Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 28 09:29:23 2016 +0200 MDEV-10032 Connect engine not installable on Xenial s/unixODBC/unixodbc/ commit56a3496067Author: Alexander Barkov <bar@mariadb.org> Date: Tue Jun 28 13:11:04 2016 +0400 MDEV-10236 Where expression with NOT function gives incorrect result Item_cache::is_null() erroneously returned null_value in a non-cached state. Now Item_cache::is_null() uses has_value(), which caches the value if not cached yet, similar to what other value methods do (e.g. val_int, val_real, etc). commit64c115b835Author: Martin Stefany <martinstefany@users.noreply.github.com> Date: Tue Jun 14 21:50:46 2016 +0200 Use hostname instead of IP in donor's socat Using IP address in donor's socat with TLS/SSL and certificate which doesn't contain IP address in CN or SubjectAltName causes transfer to fail with message: socat[5799] E certificate is valid but its commonName does not match hostname. This patch tries to reverse resolve IP address to hostname and use it for transfer. If reverse resolution fails, IP address is still used as fall-back, so proper A/AAAA and PTR records are important, but not mandatory. Certain certificates cannot contain IP addresses, e.g. FreeIPA's Dogtag doesn't allow it, so in my case I would need to use self- signed certificates instead, use verify=0 with socat or don't use TLS/SSL at all. Issue is mentioned in MDEV-9403. commit7ff44b1a83Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 18:30:07 2016 -0400 MDEV-10161: wsrep_sync_wait not enabled when set to 1 in config file Since wsrep_sync_wait & wsrep_causal_reads variables are related, they are always kept in sync whenever one of them changes. Same is tried on server start, where wsrep_sync_wait get updated based on wsrep_causal_reads' value. But, since wsrep_causal_reads is OFF by default, wsrep_sync_wait's value gets modified and loses its WSREP_SYNC_WAIT_BEFORE_READ bit. Fixed by syncing wsrep_sync_wait & wsrep_causal_reads values individually on server start in mysqld_get_one_option() based on command line arguments used. commitaa9c8f2a0dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 18:24:07 2016 -0400 MDEV-10233: Support bootstraping a Galera cluster with mysqld_multi Added a new --wsrep-new-cluster option to enable mysqld_multi script to start mysqld with the same option. [Patch contributed by Hartmut] commit7ef5257a64Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 18:22:35 2016 -0400 MDEV-10230: --wsrep_on option no longer passed through by mysqld_safe Append mysqld_safe's wsrep-on option to the list of options used to start mysqld. [Patch contributed by Hartmut] commit90f222ea7dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 18:21:00 2016 -0400 MDEV-10235: Deadlock in CREATE TABLE .. AS SELECT .. if result set is empty in Galera In CTAS, handlers get registered under statement transaction (st_transactions::stmt), while ha_fake_trx_id(), used by CTAS, looked under standard transaction (st_transactions::all) for registered handlers, and thus it failed to grab a fake transaction ID. As a result, with no valid transaction ID, wsrep commit failed with an error. ha_fake_trx_id() now looks for handlers registered under 'stmt' in case 'all' is empty. Also modified the logic to print warning only once if none of the registered handlers have fake_trx_id. commitad3584bf72Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 18:17:03 2016 -0400 Test cleanup: Remove unnecessary global suppressions commit48a0a66ffaAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 18:15:47 2016 -0400 MDEV-10186: mysqld crash when runtime setting wsrep_cluster_address without wsrep_on=ON On wsrep_cluster_address update, node restarts the replication and attempts to connect to the new address. In this process it makes a call to wsrep provider's connect API, which could lead to segfault if wsrep provider is not loaded (wsrep_on=OFF). Fixed by making sure that it proceeds only if a provider is loaded. commit7f9fcfe00eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 18:07:43 2016 -0400 Code cleanup (wsrep patch). commit47e4e5dfd9Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 18:06:18 2016 -0400 MDEV-6699: wsrep_node_name not automatically set to hostname Update sys_vars.sysvars_wsrep test. commita6816995eeAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 18:03:24 2016 -0400 MDEV-10004: Galera's pc.recovery process fails in 10.1 with systemd Galera recovery process works in two phases. In the first phase, mysqld is started as non-daemon with --wsrep-recover to recover and fetch the last logged global transaction ID. This ID is then used in second phase as the start position (--wsrep-start-position=XX) to start mysqld as daemon. As this process was implemented in mysqld_safe script, the recovery did not work when server was started using systemd. Fixed by introducing a shell script (wsrep_recovery.sh) that mimics the first phase of the recovery process. commit0645699060Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 18:01:21 2016 -0400 MDEV-10145: Systemd fails to start mysqld in multi-instance mode --defaults-xxx options must be placed before all other options in the command line. Also moved MYSQLD_OPTS at the end so that its options take precedence. commit2768829e53Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 17:59:12 2016 -0400 MDEV-10056: SST method mysqldump is broken errno must be reset before strtol()/strtoll() functions are invoked. commitb57232d3cbAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 17:56:59 2016 -0400 MDEV-6699 : wsrep_node_name not automatically set to hostname Fixed by using hostname (glob_hostname) as default value for wsrep_node_name system variable. Added a test case. commitf629f53548Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 27 14:44:07 2016 -0400 Fix memory leak in XtraDB. commite337fd13b2Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon Jun 27 22:12:21 2016 +0400 MDEV-10119 mysql_install_db creates GIS procedures with invalid definer. Servers sets default DEFINER to empty if run with the --scip-grant-tables option. So specify the DEFINER explicitly commit09d902d84bAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon Jun 27 18:02:28 2016 +0400 MDEV-9618 solaris sparc build fails on 10.1. Compiler on Sparc is strict about the 'const' modifiers in function declarations and definitions. Meaning they should be exactly same. commit652e799a38Author: Alexander Barkov <bar@mariadb.org> Date: Mon Jun 27 15:14:07 2016 +0400 MDEV-8502 DECIMAL accepts out of range DEFAULT values MDEV-10277 Redundant NOTE when inserting '0.00001 ' into a DECIMAL(2,1) column commit94a61838feAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Jun 26 21:15:36 2016 -0400 Fix galera,wsrep tests. commit92dbe32ddbAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Jun 25 14:26:36 2016 +0200 - Define MAX_CONNECT_LEN as 1024 following MSDN recommendation modified: storage/connect/odbconn.h - Remove java compiling of JdbcInterface that caused failed compile on BuildBot Labrador site modified: storage/connect/CMakeLists.txt - Remove unused define of MAX_CONNECT_LEN modified: storage/connect/jdbconn.h commitfc799e317dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jun 24 13:54:04 2016 -0400 Fix build failure. commit74dd07e962Merge:14d62505d9ecdb2b6e86Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jun 24 12:02:41 2016 -0400 Merge branch '5.5-galera' into 10.0-galera commit14d62505d9Merge:868c2ceb019fc102b37eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jun 24 12:01:22 2016 -0400 Merge tag 'mariadb-10.0.26' into 10.0-galera commit305bbbce61Merge:6f66920086626a62e5ccAuthor: holyfoot <holyfoot@mariadb.com> Date: Fri Jun 24 18:08:13 2016 +0400 Merge pull request #183 from mweigel/10.1-MDEV-10214 MDEV-10214: Fix segfault when using groups in PAM user mapping plugin commit6f66920086Author: Alexander Barkov <bar@mariadb.org> Date: Thu Jun 23 21:57:15 2016 +0400 Recording innodb_ctype_ldml.result forgotten in the patch for: MDEV-8686 A user defined collation utf8_confusables doesn't work25e68c5e46commitecdb2b6e86Merge:51a32ebeb312ae840375Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jun 23 12:54:38 2016 -0400 Merge tag 'mariadb-5.5.50' into 5.5-galera commit25e68c5e46Author: Alexander Barkov <bar@mariadb.org> Date: Thu Jun 23 14:25:48 2016 +0400 MDEV-8686 A user defined collation utf8_confusables doesn't work The collation customization code for the UCA (Unicode Collation Alrorithm) based collations now allows to reset to and shift of characters with implicit weights. Previously reset/shift worked only for the characters with explicit DUCET weights. An attempt to use reset/shift with character with implicit weights made the server crash. commit3e03b89b0aAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jun 22 23:20:41 2016 +0300 MDEV-10185: Assertion `tree1->keys[key_no] && tree2->keys[key_no]' failed in Make tree_or set correct SEL_TREE::keys_map for the result. commitd50acf9f88Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Jun 22 19:52:40 2016 +0200 - Fix warning "invalid conversion from const char * to char *" modified: storage/connect/jdbconn.cpp - Add java compiling of JdbcInterface modified: storage/connect/CMakeLists.txt commit63120090f9Author: Alexander Barkov <bar@mariadb.org> Date: Tue Jun 21 21:36:23 2016 +0400 MDEV-10262 ucs2_thai_520_w2: wrong implicit weights on the secondary level commit7e64b07968Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jun 20 16:37:57 2016 +0200 - Add column pattern and table type argument to catalog tables modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/odbccat.h modified: storage/connect/odbconn.cpp modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h modified: storage/connect/tabodbc.cpp modified: storage/connect/tabodbc.h - Avoid longjump in AllocCatInfo functions modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/odbconn.cpp - Change GetColumns error return value from 0 to -1 modified: storage/connect/JdbcInterface.class modified: storage/connect/JdbcInterface.java commit7992dae6ebMerge:74009534a161492ea5ddAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jun 20 16:12:19 2016 +0200 Merge branch '10.1' of https://github.com/MariaDB/server into ob-10.1 commit61492ea5ddAuthor: Monty <monty@mariadb.org> Date: Sun Jun 19 15:03:13 2016 +0300 Reset user status after unix_socket.test Fixed mysql-test-run failures for roles.acl_statistics commit74009534a1Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jun 13 12:58:24 2016 +0200 - Possibly fix MDEV-10179 Reset remote tables when re-opening modified: storage/connect/tabtbl.cpp - Add trace and make m_Stmt conditional modified: storage/connect/myconn.cpp modified: storage/connect/myconn.h - Protect trace from null string (for Linux) modified: storage/connect/tabcol.cpp - Record error changes modified: storage/connect/mysql-test/connect/r/jdbc_new.result - Typo modified: storage/connect/jdbconn.cpp modified: storage/connect/jsonudf.cpp commit868c2ceb01Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Jun 12 19:28:56 2016 -0400 MDEV-9083: Slave IO thread does not handle autoreconnect to restarting Galera Cluster node Chery-picked commits from codership/mysql-wsrep. MW-284: Slave I/O retry on ER_COM_UNKNOWN_ERROR Slave would treat ER_COM_UNKNOWN_ERROR as fatal error and stop. The fix here is to treat it as a network error and rely on the built-in mechanism to retry. MW-284: Add an MTR test commit626a62e5ccAuthor: Mario Weigel <mario@movio.co> Date: Sun Jun 12 23:13:26 2016 +1200 MDEV-10214: Fix segfault when using groups in PAM user mapping plugin commit94b47bc5a5Merge:9ff93656ae196d96cc8fAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Jun 8 15:16:39 2016 +0200 Merge branch 'mdev9991' into mdev9991-10.1 commit9ff93656aeAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Fri Jun 3 19:22:47 2016 +0000 Fix sporadic failure of set_statement mtr test. On Windows with low precision (10-16 ms) timer used for timing queries, the statement "set @@long_query_time=0.01" can log itself a slow if it spawn more single timer tick. The fix is to filter this query out from "SELECT FROM mysql.slow_log" results commit1859caf60bAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Fri Jun 3 14:43:08 2016 +0300 MDEV-10175: range optimizer calls records_in_range() for full extended keys Make the range optimizer not call records_in_range() when it would not give any benefit. commit825427fa9fAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Fri Jun 3 10:58:32 2016 +0300 Update test results commit613680a041Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Jun 2 22:11:08 2016 +0200 - Fix MDEV-10111 Reconize unsigned integers when creating tables via srcdef modified: storage/connect/ha_connect.cc modified: storage/connect/myconn.cpp - Fix MDEV-10136 crash on SELECT jsonget_string(NULL, 'a') modified: storage/connect/jsonudf.cpp - Assert longjmp initialized when suballocating modified: storage/connect/plugutil.c - Avoid crash in MakeRecord when table->vcol_set isnull (trace > 1) modified: storage/connect/ha_connect.cc commit904027c820Merge:7d3d75895db3fc7c7fedAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 2 19:27:22 2016 +0300 Merge branch 'bb-10.1-mdev8989' into 10.1 commit7d3d75895dAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 2 19:00:26 2016 +0300 MDEV-9764: MariaDB does not limit memory used for range optimization Part #2: make tree_or(tree1, tree2) to reuse tree1 for the result object for simple cases. These include key IN (c1, ... cN). The reuse was happening in old MySQL versions, but we stopped doing it in the "fair choice between range and index_merge" patch. commitb3fc7c7fedAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 2 17:31:56 2016 +0300 Update test results part #3. commit685c63b698Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 2 15:19:52 2016 +0300 Update test results part#2. commit3fd2521f24Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 2 13:35:21 2016 +0300 Update test results commit66dd9fa397Merge:e0e374783a389c51f4bdAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Jun 2 11:46:35 2016 +0300 Merge pull request #174 from Cona19/10.1 MDEV-10154 - Remove some unnecessary parentheses commit5a5a54f7b4Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jun 1 23:43:11 2016 +0300 MDEV-8989: ORDER BY optimizer ignores equality propagation Post-fix #2: - Update test results - Make the optimization conditional under @@optimizer_switch flag. - The optimization is now disabled by default, so .result files are changed back to be what they were before the MDEV-8989 patch. commite0e374783aAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Jun 1 13:06:14 2016 +0300 MDEV-9865: Test encryption.innodb-log-encrypt-crash takes too long on debug build Add big_test and not_debug requirements to avoid timeouts. commit743814f763Merge:016790403a500b03fe30Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Jun 1 09:23:29 2016 +0300 Merge pull request #177 from Cona19/10.1-spelling-check Fix spelling: shhould -> should commit500b03fe30Author: Hyeonseok Oh <hyeonso5@gmail.com> Date: Wed Jun 1 06:09:13 2016 +0000 Fix spelling: shhould -> should commit016790403aAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue May 31 17:59:04 2016 +0300 MDEV-9764: MariaDB does not limit memory used for range optimization A partial backport of 67f21fb3a077dedfd14b9ca720e926c55e682f93, Bug#22283790: RANGE OPTIMIZER UTILIZES TOO MUCH MEMORY WITH MANY OR CONDITIONS The backported part changes SEL_TREE::keys from being an array of MAX_KEY elements (64*8=512 bytes) to a Mem_root_array<SEL_ARG*> (32 bytes + alloc'ed array of as many elements as we need). The patch doesn't fix the "not limiting memory" part, but the memory usage is much lower with it. commitbc546225c0Author: Alexander Barkov <bar@mariadb.org> Date: Mon May 30 16:56:29 2016 +0400 Adding collations utf8mb4_thai_520_w2, ucs2_thai_520_w2, utf16_thai_520_w2, utf32_thai_520_w2 commitc5733e57e7Author: Alexander Barkov <bar@mariadb.org> Date: Mon May 30 14:27:24 2016 +0400 - Moving ctype_utf8_th.test to ctype_thai.inc and including it from ctype_uca.test. This is to reuse ctype_thai.inc for other Unicode character sets later - Removing separate ctype_uca.result commitdd7f3073fbAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon May 30 13:47:57 2016 +0400 - Moving tests from t/ctype_uca_th.test to include/ctype_uca_w2.inc and including it from t/ctype_uca.test - Deleting r/ctype_uca_th.result commita8cd030ee0Author: Alexander Barkov <bar@mariadb.org> Date: Mon May 30 13:07:43 2016 +0400 Adding LIKE range tests for tricky characters U+0425, U+045F, U+2525, U+5F5F. They have bytes 0x25 and 0x5F. Testing that these bytes are treated as parts of multi-byte characters rather than underscore and percent sign. commit683b88e66aAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Sat May 28 11:46:46 2016 +0200 Mark gssapi plugin as stable. No open bug reports, and no further work planned, thus stable is accurate commita85f6533f1Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri May 27 15:16:08 2016 +0300 MDEV-8989: ORDER BY optimizer ignores equality propagation Post-fix: add comments, remove dead-code. commit29db3b5e5cAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu May 26 22:56:28 2016 +0400 Clean-ups for MDEV-10132 utf8_thai_520_w2 collation: - Changing strnxfrm_multiply from 8 to 4, as agreed with Pruet Boonma - Adjusting tests commitd930d07258Merge:9c9747fed3fb35b9ad07Author: Alexander Barkov <bar@mariadb.org> Date: Thu May 26 21:09:55 2016 +0400 Merge branch 'pruet-utf8thai-10.1' into 10.1 commitead4147b13Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu May 26 18:48:47 2016 +0200 - Reconize the JDBC type -7 (BIT) modified: storage/connect/jdbconn.cpp - Add the global variable connect_java_wrapper This enables to use different wrappers modified: storage/connect/CMakeLists.txt renamed: storage/connect/java/ap/JdbcInterface.class -> storage/connect/JdbcApacheInterface.class renamed: storage/connect/java/ap/JdbcInterface.java -> storage/connect/JdbcApacheInterface.java renamed: storage/connect/java/ds/JdbcInterface.class -> storage/connect/JdbcDSInterface.class renamed: storage/connect/java/ds/JdbcInterface.java -> storage/connect/JdbcDSInterface.java modified: storage/connect/ha_connect.cc deleted: storage/connect/java/std/JdbcInterface.class deleted: storage/connect/java/std/JdbcInterface.java modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h - Add JDBC tests (disabled) modified: storage/connect/mysql-test/connect/disabled.def new file: storage/connect/mysql-test/connect/r/jdbc.result new file: storage/connect/mysql-test/connect/r/jdbc_new.result new file: storage/connect/mysql-test/connect/r/jdbc_oracle.result new file: storage/connect/mysql-test/connect/r/jdbc_postgresql.result new file: storage/connect/mysql-test/connect/std_data/girls.txt new file: storage/connect/mysql-test/connect/t/jdbc.test new file: storage/connect/mysql-test/connect/t/jdbc_new.test new file: storage/connect/mysql-test/connect/t/jdbc_oracle.test new file: storage/connect/mysql-test/connect/t/jdbc_postgresql.test new file: storage/connect/mysql-test/connect/t/jdbconn.inc new file: storage/connect/mysql-test/connect/t/jdbconn_cleanup.inc - Typo modified: storage/connect/jsonudf.cpp commit389c51f4bdAuthor: Hyeonseok Oh <hyeonso5@gmail.com> Date: Thu May 26 10:33:17 2016 +0000 Remove some unnecessary parentheses commitfb35b9ad07Author: pruet <pruetboonma@gmail.com> Date: Thu May 26 16:45:50 2016 +0700 Multi-level collation in UCA, Thai sorting with contraction for UTF8. commitafa4657fd3Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue May 24 23:57:06 2016 +0200 - Fix failing json_udf_bin test when --ps modified: storage/connect/jsonudf.cpp modified: storage/connect/mysql-test/connect/disabled.def commit809422838dAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Tue May 24 11:29:12 2016 +0200 - Alternative versions of the java JdbcInterface Some of them (ap/ds) enable connection to a DataSource added 'storage/connect/java/ap/JdbcInterface.class' added 'storage/connect/java/ap/JdbcInterface.java' added 'storage/connect/java/ds/JdbcInterface.class' added 'storage/connect/java/ds/JdbcInterface.java' added 'storage/connect/java/std/JdbcInterface.class' added 'storage/connect/java/std/JdbcInterface.java' commit99cd5a962cAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Mon May 23 21:15:01 2016 +0300 MDEV-8989: ORDER BY optimizer ignores equality propagation Variant #4 of the fix. Make ORDER BY optimization functions take into account multiple equalities. This is done in several places: - remove_const() checks whether we can sort the first table in the join, or we need to put rows into temp.table and then sort. - test_if_order_by_key() checks whether there are indexes that can be used to produce the required ordering - make_unireg_sortorder() constructs sort criteria for filesort. commit0dae2932f4Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon May 23 15:08:51 2016 +0200 - New version of the java JdbcInterface modified: storage/connect/JdbcInterface.class modified: storage/connect/JdbcInterface.java - Ignore *.tlog and .res files modified: .gitignore commitf8bc587c1aMerge:77dd5ece069c9747fed3Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun May 22 14:49:14 2016 +0200 Merge branch '10.1' of https://github.com/MariaDB/server into ob-10.1 commit77dd5ece06Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat May 21 14:28:21 2016 +0200 - Fix wrong return from ExecuteQuery modified: storage/connect/jdbconn.cpp - Suppress GCC warning modified: storage/connect/tabjdbc.cpp commita982f59b9bAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sat May 21 11:56:59 2016 +0200 - JDBC using separate jmethodID for data types Some DEBUG tests modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h commit2f2797e52fAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Fri May 20 00:18:29 2016 +0200 - JDBC tables can be connected via foreign server wrapper Redesign the handling of errors and exceptions modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h commit9c9747fed3Author: Alexander Barkov <bar@mariadb.org> Date: Wed May 18 12:35:38 2016 +0400 Updating uca-dump.c to be able to dump weights outside of BMP. commit9eaf9345a5Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue May 17 14:01:16 2016 +0300 Update test result after the last commit commit7972a45b43Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu May 12 17:22:45 2016 +0200 - Remove REQUIRED option that caused compilation to fail Remove JVM_LIBRARY (is now dynamically loaded at run time) modified: storage/connect/CMakeLists.txt commit0f5ced1dd5Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu May 12 15:41:21 2016 +0200 - Fix some typo ... causing crash! modified: storage/connect/jdbconn.cpp commit6aa163bce8Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu May 12 12:20:52 2016 +0200 - Continue working on the JDBC table type Suppress the jpath option add the connect_jvm_path and connect_class_path global variables modified: storage/connect/ha_connect.cc modified: storage/connect/jdbccat.h modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h - Add the envar UDF modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h - Fix MDEV-9950 modified: storage/connect/ha_connect.cc modified: storage/connect/plgdbutl.cpp commit5c68bc2c32Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri May 6 12:30:01 2016 +0300 MDEV-10006: optimizer doesn't convert outer join to inner on views with WHERE clause When simplify_joins() converts an outer join to an inner, it should reset the value of TABLE::dep_tables. This is needed, because the function may have already set TABLE::dep_tables according to the outer join dependency. commit4388cb42f5Author: Daniel Bartholomew <db@dbart.us> Date: Tue May 10 09:28:00 2016 -0400 bump the VERSION commit2323cf0033Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon May 9 17:26:50 2016 +0200 - Make the JVM lib dynamically loaded This makes the CONNECT storage engine usable when Java JDK is not installed. modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h - Typo modified: storage/connect/reldef.cpp commitee0695b807Author: Elena Stepanova <elenst@montyprogram.com> Date: Sun May 8 13:37:12 2016 +0300 Fix 32-bit sysvars test commit234efb1d28Author: Sergei Golubchik <serg@mariadb.org> Date: Sun May 8 08:21:57 2016 +0200 update 32-bit rdiff results commitaf93c02510Author: Sergei Golubchik <serg@mariadb.org> Date: Sat May 7 09:12:48 2016 +0200 MDEV-10034 Embedded server crashes on CREATE TABLE in PS protocol don't use MY_THREAD_SPECIFIC on the client side in embedded: 1. server memory accounting does not track client side memory 2. in not embedded builds, this still *might* be useful for plugins (handlersocket, connect, etc) commit5534d81430Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri May 6 13:56:25 2016 +0300 Merged following change from MySQL 5.6 to MariaDB 10.1 XtraDB including the test case: https://github.com/mysql/mysql-server/commit/520aedfe INNODB: "DATA DIRECTORY" OPTION OF CREATE TABLE FAILS WITH PWRITE() OS ERROR 22 Fix for version mysql-5.6 PROBLEM ======== For version mysql-5.6.27 onwards InnoDB fails to create a table with explicit 'data directory' option when Innodb_flush_method is set to O_DIRECT.While creating link file we get a a pwrite error 22 due to the alignment restrictions imposed by O_DIRECT flag which is being set for the link file created. FIX === Fixed the above issue by making use of file IO functions while creating the link file that wouldn't let the O_DIRECT flag restrictions arise. Reviewed-by: Kevin Lewis <kevin.lewis@oracle.com> Reviewed-by: Shaohua Wang <shaohua.wang@oracle.com> RB: 11387 commit025decfc38Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri May 6 01:07:14 2016 +0200 - Remove gcc compiling errors and warnings modified: storage/connect/jdbconn.cpp modified: storage/connect/tabjdbc.h commit1512078a7aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Apr 29 10:50:39 2016 -0400 MDEV-9851: CREATE USER w/o IDENTIFIED BY clause causes crash when using cracklib plugin Do not allow NULL password to pass directly to password validation plugin. commitedbd0ceddaAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Apr 29 09:37:00 2016 -0400 MDEV-9171: innodb.innodb_uninstall Test Failure An additional warning saying "tc-log cannot be enabled" is emitted when InnoDB is installed at runtime on mysqld built with wsrep-patch (-DWITH_WSREP=ON). This happens because, installing InnoDB increments the total number of 2pc-capable engines and with wsrep-patch already enabled - the total count goes >1. Even though, this condition is sufficient to enable tc-logging, it is not permitted at runtime, and thus the warning. Updated the testcase to avoid the warning. commit9a5c75a073Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Apr 29 09:34:44 2016 -0400 MDEV-9853: WSREP says it cannot get fake InnoDB transaction ID followed by segmentation fault Ha_trx_info should not be reset in ha_fake_trx_id() as it is later used during commit. commit9b2151f6afAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Mar 30 00:35:11 2016 -0400 metadata_lock_info: Add compile time assertions This is to ensure that the list of valid values for METADATA_LOCK_INFO fields is always kept in sync with the parent MDL types. commit7abb570756Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Mar 30 00:22:38 2016 -0400 MDEV-6211: MariaDB-Galera-server uses 'socat', but 'socat' is not in the dependency list Xtrabackup-based SST method uses socat. Move it from Suggests to Depends list. commit0a1c2a2051Merge:a87507eec3c0238be6cfAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu May 5 09:15:04 2016 -0400 Merge branch '10.0-galera' into 10.1 commita87507eec3Author: Alexander Barkov <bar@mariadb.org> Date: Thu May 5 15:39:04 2016 +0400 MDEV-9712 Performance degradation of nested NULLIF 10.1 introduced a problem: Execution time for various recursive stages (walk, update_used_table, and propagate_equal_fields) in NULLIF is O(recursion_level^2), because complexity is doubled on every recursion level when we copy args[0] to args[2]. This change fixes to avoid unnecessary recursion in: - Item_func_nullif::walk - Item_func_nullif::update_used_tables - Item_func_nullif::propagate_equal_fields when possible. commit19c4d22a1eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu May 5 12:35:12 2016 +0200 skip debug_sync test in release builds commit4025251efdAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu May 5 11:42:18 2016 +0200 fix rpm installation issues on Fedoras commit3a88adc3b2Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Thu May 5 11:28:35 2016 +0400 MDEV-717 LP:1003679 - Wrong binlog order on concurrent DROP schema and CREATE function. Test case added. commit46973bb3adMerge:fba385e3b1153259874bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu May 5 08:47:17 2016 +0200 Merge branch 'bb-10.1-merge' into 10.1 commit153259874bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue May 3 20:31:02 2016 +0200 MDEV-9155 Enabling Defragmenting in 10.1.8 still causes OPTIMIZE TABLE to take metadatalocks take MDL_SHARED_WRITE instead of MDL_SHARED_NO_READ_WRITE for OPTIMIZE TABLE. For engines that need a stronger lock (like MyISAM), reopen the table with MDL_SHARED_NO_READ_WRITE. commit5ef0ce4131Author: Sergei Golubchik <serg@mariadb.org> Date: Tue May 3 13:07:05 2016 +0200 comments commit92e47c393fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon May 2 18:28:40 2016 +0200 test for group by pushdown with a view commitea195d372bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun May 1 19:33:25 2016 +0200 MDEV-9949 Connect Engine: long SRCDEF leads to broken table Two bugs here: * the server could create an frm (with a long attribute value) that it could not read back * Connect engine opened files from inside DROP TABLE and was ignoring the error (correctly) but was not hiding it from the server (incorrectly). This caused a crash later when DROP TABLE was finishing successfully while stmt_da already have seen an error. Also added a text case for MDEV-7935 CREATE TABLE ... AS SELECT ... can cause a Server crash (Assertion `0' in Protocol::end_statement) because Connect stopped clearing the error status in stmt_da as a fix for MDEV-7935 commit09464ddec4Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Apr 30 22:50:06 2016 +0200 small parser cleanup * my_yyabort_error() helper * s/lex->thd/thd/ * remove 'else' after MYSQL_YYABORT (for consistency, 95% of the parser did not use 'else' in this case) * simplify ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE commitbf9404d3a4Author: Sergei Golubchik <serg@mariadb.org> Date: Wed May 4 16:05:30 2016 +0200 protect against corrupted frms when reading table options commitbba3d42a1fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Apr 30 10:27:42 2016 +0200 MDEV-9926 probes_mysql.h includes nonexisting files install private generated files commit4db2ebb1feAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Apr 30 09:09:10 2016 +0200 MDEV-9940 CREATE ROLE blocked by password validation plugin commit357f4d832bMerge:404056563e4a62480799Author: Sergei Golubchik <serg@mariadb.org> Date: Thu May 5 01:04:05 2016 +0200 Merge branch 'connect/10.1' into 10.1 commit80a204f27eAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Thu May 5 01:03:26 2016 +0200 - Try to fix MDEV-9950 (not tested yet) modified: storage/connect/ha_connect.cc modified: storage/connect/plgdbutl.cpp - Fix Mdev-9997 (Sergey Vojtovitch) modified: storage/connect/inihandl.c - Try to have the JDBC type compiled by CMake modified: storage/connect/CMakeLists.txt - Fixing some bugs in the JDBC table type Use the CONNECTION option for the URL modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/tabjdbc.cpp - Add the JdbcInterface.class to the project new file: storage/connect/JdbcInterface.class commit404056563eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed May 4 20:28:20 2016 +0200 fixes for buildbot commitfba385e3b1Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Sun Feb 21 22:00:58 2016 +0100 MDEV-9487: Server crashes in Time_and_counter_tracker::incr_loops with UNION in ALL subquery Do not mark subquery as inexpensive when it is not optimized. commit87e3e67f43Merge:80da57cc4fcee9ab9d85Author: Sergei Golubchik <serg@mariadb.org> Date: Wed May 4 15:23:26 2016 +0200 Merge branch '10.0' into 10.1 commita02d4023dbAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed May 4 11:42:39 2016 +0400 MDEV-9618 solaris sparc build fails on 10.1. Compiler there is strict about the C/C++ call model mixing in function variable assumptions. Fixed by adding some 'extern "C"' and changing '?' operator with 'if'. commit5dd0c77e92Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue May 3 20:53:29 2016 +0300 MDEV-9362: InnoDB tables using DATA_DIRECTORY created using MySQL 5.6 do not work with MariaDB 10.1 Analysis: Problem is that tablespace flags bit DATA_DIR is on different position on MySQL 5.6 compared to MariaDB 10.1. Fix: If we detect that there is difference between dictionary flags and tablespace flags we remove DATA_DIR flag and compare again. Remote tablespace is tried to locate even in case when DATA_DIR flag is not set. commit80da57cc4fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue May 3 20:13:58 2016 +0200 remove the forgotten PARENT_SCOPE commit67723e9618Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue May 3 15:23:34 2016 +0200 Move MYSQL_ADD_PLUGIN outside of IF(OQGRAPH_OK) condition, otherwise the plugin does not get compiled if cmake is called multiple times. commit673efd0648Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue May 3 15:18:55 2016 +0200 MDEV-10015 Fix oqgraph compilation on Windows commit94cd0f6c9bAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon May 2 12:58:57 2016 +0400 MDEV-9898 SET ROLE NONE can crash mysqld. The check_user_can_set_role() used find_user_exact() to get the permissions for the SET ROLE NONE command. Which returned NULL too often, for instance when user authenticated as 'user'@'%'. Now we use find_user_wild() instead. commitad4239cc3dAuthor: Monty <monty@mariadb.org> Date: Sun May 1 18:52:13 2016 +0300 Fixed assert if user table was mailformed. Added mysql_to_mariadb.sql script, to change mysql.user tables from MySQL 5.7 to MariaDB. After this script is run, one can get the other tables fixed by running mysql_upgrade commitc0238be6cfMerge:8a1efa1bdd51a32ebeb3Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Apr 29 16:59:25 2016 -0400 Merge branch '5.5-galera' into 10.0-galera commit8a1efa1bddMerge:7c42b47e679eba34f086Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Apr 29 16:50:58 2016 -0400 Merge branch '10.0' into 10.0-galera commit037b78e5ecAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Apr 29 12:32:35 2016 +0300 MDEV-9242: Innodb reports Assertion failure in file buf0dblwr.cc line 579 Analysis: When pages in doublewrite buffer are analyzed compressed pages do not have correct checksum. Fix: Decompress page before checksum is compared. If decompression fails we still check checksum and corrupted pages are found. If decompression succeeds, page now contains the original checksum. commitd5822a3ad0Author: Monty <monty@mariadb.org> Date: Thu Apr 28 16:27:42 2016 +0300 Fixed some galera tests commitd62b758522Author: Monty <monty@mariadb.org> Date: Thu Apr 28 14:14:09 2016 +0300 Moved mysqld_server_initialized to before galera is initialized. commitea83c1d7c6Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Apr 28 15:21:10 2016 +0300 MDEV-9977: Crash when accessing large (>4G) InnoDB table on MariaDB 10.1.x 32-bit binaries. Problem was the fact that tablespace size was incorrectly rounded to next extent size (1M). commit732adec0a4Author: Monty <monty@mariadb.org> Date: Thu Apr 28 13:39:05 2016 +0300 Removed some not needed when doing delete thd, which caused warnings about wrong mutex usage from safe_mutex. Ensure that LOCK_status is always taken before LOCK_thread_count commitb4ff64568cAuthor: Monty <monty@mariadb.org> Date: Thu Apr 28 11:10:55 2016 +0300 Fixed wrong counting of global Memory_used commit7c6cb41b15Author: Monty <monty@mariadb.org> Date: Wed Apr 27 16:38:24 2016 +0300 Ignore files in tmp (like mysqld.S) commit48f02af761Author: Monty <monty@mariadb.org> Date: Wed Apr 27 16:37:01 2016 +0300 MDEV-9602 crash in st_key::actual_rec_per_key when group by constant Problem was that cost_group_min_max() could not handle if group by was optimized away. commit51a32ebeb3Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Apr 27 12:29:25 2016 -0400 MDEV-9884: Existing /var/lib/mysql/.sst directory (with contents) causes SST to fail with xtrabackup-v2 [Fix taken from https://github.com/percona/percona-xtradb- cluster/commit/b3ee75949ed82b88f355ca2e26431350cc1c89ac] During SST, the receiver node creates .sst directory under datadir to process/prepare the received data and removes it at the end of the process. In case of error, this directory, however, was not removed, which later caused subsequent SSTs to fail. Fixed by removing this directory at the beginning of SST if it existed. commit646c4cea58Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Apr 27 16:13:14 2016 +0200 MDEV-9973 : Do not set permissions for serviceaccount user (Win7 and later) This appears to break some installation, and it did not do anything useful anyway. commitbbdeb911b8Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Apr 27 12:57:27 2016 +0200 - Add the JdbcInterface.java to the project added: storage/connect/JdbcInterface.java - Add *.java to be handled modified: .gitattributes commit7b7414c0efAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Apr 27 12:36:55 2016 +0200 - Add the JDBC table type compilation for CMAKE. modified: storage/connect/CMakeLists.txt - Fix MDEV-9993 modified: storage/connect/jsonudf.cpp commit071ae303bdAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Apr 27 11:07:43 2016 +0300 MDEV-9121: innodb_force_recovery = 6 cannot recover ANY DATA when change buffer not empty Fix: Allow not empty change buffer when innodb_force_recovery >= 5 and output only a warning to error log. Note: Before using force recovery you should always take backup of your database. commit47e0717806Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Apr 27 11:08:46 2016 +0400 MDEV-9792 Backport MDEV-8713 to 10.1. commit4a62480799Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Apr 26 11:22:30 2016 +0200 - Add the use of prepared statement in the JDBC table type. modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h commit43e19b3fc8Author: Sergey Vojtovich <svoj@mariadb.org> Date: Sat Apr 23 12:15:18 2016 +0400 Fixed compilation failure due to unused var. commit4f1c1975b5Merge:9c89b84d460991e19e9dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Apr 25 11:06:16 2016 -0400 Merge tag 'mariadb-5.5.49' into 5.5-galera commitc086a96b94Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Apr 24 19:56:32 2016 +0200 - Fix an error causing MYSQL table to fail saying "no result set" when joining a table to a MYSQL indexed table. modified: storage/connect/myconn.cpp modified: storage/connect/myconn.h modified: storage/connect/tabmysql.cpp - Fix an error causing JDBC table to fail saying when joining a table to a JDBC indexed table. added: storage/connect/tabjdbc.cpp - Add more tests to the mysql_index.test file modified: storage/connect/mysql-test/connect/r/mysql_index.result modified: storage/connect/mysql-test/connect/t/mysql_index.test - Add dummy JDBC support (NIY) modified: storage/connect/CMakeLists.txt - Typo modified: storage/federatedx/ha_federatedx.cc commitafecdd2419Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Apr 23 23:20:10 2016 +0200 - Fix and error causing remote indexing to fail when for not unique index. Was experienced with MYSQL, ODBC and JDBC tables. modified: storage/connect/connect.cc - Fix MDEV-9966 (zero lines returned) modified: storage/connect/ha_connect.cc modified: storage/federatedx/ha_federatedx.cc - Typo modified: storage/connect/odbconn.cpp modified: storage/connect/reldef.cpp modified: storage/connect/tabmysql.cpp - Add new table type JDBC modified: storage/connect/ha_connect.cc modified: storage/connect/mycat.cc modified: storage/connect/plgdbsem.h modified: storage/connect/plgdbutl.cpp modified: storage/connect/tabodbc.cpp added: storage/connect/jdbccat.h added: storage/connect/jdbconn.cpp added: storage/connect/jdbconn.h added: storage/connect/tabjdbc.cpp added: storage/connect/tabjdbc.h commit1cf852d874Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Thu Apr 7 14:44:29 2016 +0200 MDEV-9383: Server fails to read master.info after upgrade 10.0 -> 10.1 In some cases, MariaDB 10.0 could write a master.info file that was read incorrectly by 10.1 and could cause server to fail to start after an upgrade. (If writing a new master.info file that is shorter than the old, extra junk may remain at the end of the file. This is handled properly in 10.1 with an END_MARKER line, but this line is not written by 10.0. The fix here is to make 10.1 robust at reading the master.info files written by 10.0). Fix several things around reading master.info and read_mi_key_from_file(): - read_mi_key_from_file() did not distinguish between a line with and without an eqals '=' sign. - If a line was empty, read_mi_key_from_file() would incorrectly return the key from the previous call. - An extra using_gtid=X line left-over by MariaDB 10.0 might incorrectly be read and overwrite the correct value. - Fix incorrect usage of strncmp() which should be strcmp(). - Add test cases. commit3f6125129fAuthor: Monty <monty@mariadb.org> Date: Thu Apr 7 20:38:21 2016 +0300 Fixed results commit293cb04959Author: Monty <monty@mariadb.org> Date: Thu Apr 7 19:26:25 2016 +0300 MDEV-9621 INSERT DELAYED fails on insert for tables with many columns This fix also fixes a connection hang when trying to do INSERT DELAYED to a crashed table. Added crash_mysqld.inc to allow easy crash+restart of mysqld commit4b6a3518e4Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Apr 6 14:15:44 2016 +0200 Use _ReadWriteBarrier() rather than MemoryBarrier() for preventing compile optimization commitfd7a8d18eaAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Apr 6 13:38:22 2016 +0200 Fix compile error in UT_COMPILER_BARRIER on Visual Studio compiler. commit9794cf2311Merge:04737330be26c38de804Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Apr 6 08:50:59 2016 +0300 Merge pull request #168 from grooverdan/10.1-MDEV-8684-UT_RELAX_CPU_isnt_relaxing MDEV-8684 ut relax cpu isnt relaxing commit04737330beAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sun Apr 3 20:19:59 2016 +0300 MDEV-9860: TokuDB ORDER BY DESC query is slower in 10.1 with ICP ON Implement ha_tokudb::cancel_pushed_idx_cond(). This is a conservative fix which follows the approach from the previous patch for: BUG#1000051: Query with simple join and ORDER BY takes thousands times... commit26c38de804Author: Daniel Black <daniel.black@au.ibm.com> Date: Fri Apr 1 09:03:57 2016 +1100 MDEV-8684: Use POWER wrappers rather than direct asm i.e. __ppc_set_ppr_low rather than 'or 1,1,1' commitc395aad668Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Mar 31 13:12:48 2016 +0300 MDEV-9840: Test encryption.innodb-log-encrypt-crash fails on buildbot Problem: We created more than 5 encryption keys for redo-logs. Idea was that we do not anymore create more than one encryption key for redo-logs but if existing checkpoint from earlier MariaDB contains more keys, we should read all of them. Fix: Add new encryption key to memory structure only if there currently has none or if we are reading checkpoint from the log. Checkpoint from older MariaDB version could contain more than one key. commit64824a760dAuthor: Daniel Black <daniel.black@au.ibm.com> Date: Wed Mar 30 15:09:52 2016 +1100 MDEV-8684: UT_RELAX_CPU on Power to non-empty expansion Using __ppc_get_timebase will translate to mfspr instruction The mfspr instruction will block FXU1 until complete but the other Pipelines are available for execution of instructions from other SMT threads on the same core. The latency time to read the timebase SPR is ~10 cycles. So any impact on other threads is limited other FXU1 only instructions (basically other mfspr/mtspr ops). Suggested by Steven J. Munroe, Linux on Power Toolchain Architect, Linux Technology Center IBM Corporation commit3d1a7cba71Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Mar 30 14:42:12 2016 +1100 MDEV-8684: Remove delaying maths in ut_delay Also introduce compiler barrier properly on all architectures. commitd4ba50477eAuthor: Yasufumi Kinoshita <yasufumi.kinoshita@oracle.com> Date: Wed Mar 30 14:32:20 2016 +1100 Some POWER specific optimizations Bug#18842925 : SET THREAD PRIORITY IN INNODB MUTEX SPINLOOP Like "pause" instruction for hyper-threading at Intel CPUs, POWER has special instructions only for hinting priority of hardware-threads. Approved by Sunny in rb#6256 Backport of the 5.7 fix -c92102a6ef(excluded cache line size patch) Suggestion by Stewart Smith commit2275640debAuthor: Marko Mäkelä <marko.makela@oracle.com> Date: Wed Mar 30 14:23:37 2016 +1100 Bug#20045167 UT_DELAY MISSING COMPILER BARRIER UT_RELAX_CPU(): Use a compiler barrier. ut_delay(): Remove the dummy global variable ut_always_false. RB: 11399 Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com> Backported from MySQL-5.7 - patch5e3efb0396Suggestion by Stewart Smith commit37a65e3335Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Mar 30 16:08:05 2016 +0300 MDEV-9793: getting mysqld crypto key from key version failed Make sure that we read all possible encryption keys from checkpoint and if log block checksum does not match, print all found checkpoint encryption keys. commit4ddb9deaf3Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Mar 30 14:59:25 2016 +0300 MDEV-9678: Data Directory bug MDEV-9833: Log files are opened using O_DIRECT causing problems if block size != 512 Fix typo. commita1b2a28e55Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Mar 25 13:02:34 2016 +0100 - Fix MDEV-9779. Avoid buffer overflow when setting partname. modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h commitd681c50a70Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Mar 24 23:18:54 2016 +0100 - Fix MDEV-9779. Connection was not recognized in the option list. This was a regression bug. modified: storage/connect/ha_connect.cc modified: storage/connect/mysql-test/connect/r/part_table.result modified: storage/connect/mysql-test/connect/t/part_table.test commit9f5b285662Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu Mar 24 09:45:28 2016 +0100 Followup for2783fc7: return an error to the caller if mysql.proc cannot be opened commit2cb72dcccbMerge:4374501806f6d99a0d8aAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu Mar 24 09:24:02 2016 +0100 Merge branch '10.0' into 10.1 commit4374501806Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Thu Mar 24 11:00:40 2016 +0400 Ugly test removed for now. commit2783fc7d14Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Mar 23 12:16:39 2016 +0400 MDEV-717 LP:1003679 - Wrong binlog order on concurrent DROP schema and CREATE function. The cause of the issue is when DROP DATABASE takes metadata lock and is in progress through it's execution, a concurrently running CREATE FUNCTION checks for the existence of database which it succeeds and then it waits on the metadata lock. Once DROP DATABASE writes to BINLOG and finally releases the metadata lock on schema object, the CREATE FUNCTION waiting on metadata lock gets in it's code path and succeeds and writes to binlog. commite4435b5ec3Author: Alexander Barkov <bar@mariadb.org> Date: Wed Mar 23 08:26:40 2016 +0400 MDEV-9604 crash in Item::save_in_field with empty enum value 1. Fixing Field_time::get_equal_const_item() to pass TIME_FUZZY_DATES and TIME_INVALID_DATES to get_time_with_conversion(). This is needed to make the recursively called Item::get_date() return non-NULL values on garbage input. This makes Field_time::get_equal_const_item() work consistently with how Item::val_time_packed() works. 2. Fixing Item::get_date() to return TIME'00:00:00' rather than DATE'0000-00-00' on empty or garbage input when: - TIME_FUZZY_DATES is enabled - The caller requested a TIME value (by passing TIME_TIME_ONLY). This is needed to avoid conversion of DATE'0000-00-00' to TIME in get_time_with_conversion(), which would erroneously try to subtract CURRENT_DATE from DATE'0000-00-00' and return TIME'-838:59:59' rather than the desired zero value TIME'00:00:00'. #1 and #2 fix these type of scripts to return one row with both MyISAM and InnoDB, with and without an index on t1.b: CREATE TABLE t1 (a ENUM('a'), b TIME, c INT, KEY(b)); INSERT INTO t1 VALUES ('','00:00:00',0); SELECT * FROM t1 WHERE b=''; SELECT * FROM t1 WHERE a=b; SELECT * FROM t1 IGNORE INDEX(b) WHERE b=''; SELECT * FROM t1 IGNORE INDEX(b) WHERE a=b; Additionally, #1 and #2 fix the originally reported in MDEV-9604 crash in Item::save_in_field(), because now execution goes through a different path, so save_in_field() is called for a Item_time_literal instance (which is non-NULL) rather than a Item_cache_str instance (which could return NULL without setting null_value). 3. Fixing Field_temporal::get_equal_const_item_datetime() to enable equal field propagation for DATETIME and TIMESTAMP in case of comparison (e.g. when ANY_SUBST), for symmetry with Field_newdate::get_equal_const_item(). This fixes a number of problems with empty set returned on comparison to empty/garbage input. Now all SELECT queries in this script return one row for MyISAM and InnoDB, with and without an index on t1.b: CREATE TABLE t1 (a ENUM('a'), b DATETIME, c INT, KEY(b)); INSERT INTO t1 VALUES ('','0000-00-00 00:00:00',0); SELECT * FROM t1 WHERE b=''; SELECT * FROM t1 WHERE a=b; SELECT * FROM t1 IGNORE INDEX(b) WHERE b=''; SELECT * FROM t1 IGNORE INDEX(b) WHERE a=b; commitf66303dcf9Author: Elena Stepanova <elenst@montyprogram.com> Date: Wed Mar 23 02:22:09 2016 +0200 Fix sysvar tests - embedded and 32-bit commit29753fb9f2Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Mar 22 22:18:33 2016 +0200 MDEV-9443: Add reexecution test cases. commit287f2d2947Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Mar 22 13:45:51 2016 +0200 MDEV-9443: Add REVOKE <role> as a command to PREPARE commitc4bef7ad3cAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Mon Mar 21 22:14:49 2016 +0200 MDEV-9443: Roles aren't supported in prepared statements Make role statements work with the PREPARE keyword. commit16ddd1824cAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Mon Mar 21 17:47:15 2016 +0200 MDEV-9613: keyfile without any keys crashes mysqld on loading file_key_management plugin Code was assuming that the keys file would contain at least one valid key. This caused a Dynamic_array::at(0) call that lead to the crash. commit8e048579cdAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Mon Mar 21 17:38:52 2016 +0200 Add an empty file to std_data for future testing purposes commit0a4a78ae8cAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Mar 22 23:26:39 2016 +0400 MDEV-6058 MySQL Bug #11766693: LOG-SLOW-ADMIN-STATEMENTS AND LOG-SLOW-SLAVE-STATEMENTS NOT DISPLAYED. These parameters were moved from the command line options to the system variables section. Treatment of the opt_log_slow_slave_statements changed to let the dynamic change of the variable. commitfd6c588659Merge:f71c45c71de0c136b4f0Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 22 19:18:48 2016 +0100 Merge branch 'bb-10.1-serg' into 10.1 commitf71c45c71dAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 22 17:55:23 2016 +0200 MDEV-9678: Data Directory bug Problem was that link file (.isl) is also opened using O_DIRECT mode and if this fails the whole create table fails on internal error. Fixed by not using O_DIRECT on link files as they are used only on create table and startup and do not contain real data. O_DIRECT failures are successfully ignored for data files if O_DIRECT is not supported by file system on used data directory. commite0c136b4f0Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 22 10:53:28 2016 +0100 MDEV-9737 Duplicate error in replication with slave triggers and auto increment delete deferred events after they're executed (otherwise they can be executed again for a sub-statement) See also commit 0e78d1d Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com> Date: Wed Mar 20 11:20:47 2013 +0530 BUG#15850951-DUPLICATE ERROR IN REPLICATION WITH SLAVE TRIGGERS AND AUTO INCREMENT commit37f915c191Merge:52ce743bbf7c42b47e67Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Mar 22 01:35:56 2016 -0400 Merge branch '10.0-galera' into 10.1 commit52ce743bbfAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Mar 16 19:39:19 2016 -0400 MDEV-9382: After updating mariadb server apt-configure fails When acting as a Galera receiver node, server startup may take more than 30 secs (the current default) as it has to wait for SST/IST operation to complete besides spending some time doing wsrep recovery. Fixed by raising the default value of MYSQLD_STARTUP_TIMEOUT to 60 secs. Also sourced /etc/default/mariadb into the init script so that it can be used to set MYSQLD_STARTUP_TIMEOUT. commitdf3ad11097Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Mar 16 16:48:24 2016 -0400 MDEV-9598: Donor's rsync SST script hangs if FTWRL fails Post-fix: initialize err commitd31d6d31bbAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Mar 16 16:44:43 2016 -0400 MDEV-9696: CREATE SERVER statement does not replicate in Galera Cluster Enable replication of CREATE/ALTER/DROP SERVER statements in Galera cluster. commit000f76d886Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Mar 2 09:19:36 2016 -0500 Fix galera_sync_wait_show test. commit7c42b47e67Merge:01897db1029c89b84d46Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Mar 22 00:35:14 2016 -0400 Merge branch '5.5-galera' into 10.0-galera commitd5a80519c9Merge:e984159e3959c4675c6bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 21 21:43:28 2016 +0100 Merge branch 'connect/10.1' into 10.1 commit537fc572d4Author: Alexander Barkov <bar@mariadb.org> Date: Tue Mar 22 00:09:04 2016 +0400 MDEV-9516 type error when setting session variable Allowing assigning of DECIMAL(N,0) values to INT-alike system variables. commite984159e39Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 18 16:54:05 2016 +0100 MDEV-9527 build FAILs with GCC 5.1 with release supported "-std=c+11" 10.1 part of the fix commit3b0c7ac1f9Merge:e7cf898d6d22ebf3cb45Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 21 13:02:53 2016 +0100 Merge branch '10.0' into 10.1 commite8af217e16Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu Mar 17 15:12:57 2016 +0100 MDEV-9590: Always print "Engine-independent statistic" warnings and might be filtering columns unintentionally from engines Do not issue the warning in case we are not going to collect the statistics. commite7cf898d6dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 21 11:35:48 2016 +0100 rpm: prefer the conditional %{?...} syntax commitc03433dea7Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 18 21:59:24 2016 +0100 rpm: ignore /usr/lib/systemd and /usr/lib/systemd/system commit14771bd044Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 18 13:28:58 2016 +0100 MDEV-9660 yum/rpm update from 10.0 to 10.1 replaces/obsoletes ? MariaDB-server-10.1 should obsolete MariaDB-Galera-server commit9476854211Author: Alexander Barkov <bar@mariadb.org> Date: Mon Mar 21 11:21:44 2016 +0400 MDEV-9369 IN operator with ( num, NULL ) gives inconsistent result Based on this commit into MySQL-5.7: > commit 8e51b845aafc8b4cdebd763c8aebda262ac2d4cd > Author: Guilhem Bichot <guilhem.bichot@oracle.com> > Date: Mon Nov 4 15:44:55 2013 +0100 > > Bug#13944462 'NULL IN (XX)' RETURNS WRONG RESULTS commit23903255d8Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 17 22:03:09 2016 +0100 MDEV-9629 Disappearing PRI from Key column after creating a trigger when creating shadow nullable fields, preserve all original field flags (because we swap flags back and forth in not_null_fields_have_null_values()) commitb24a04c6e0Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 17 18:55:39 2016 +0100 don't do anything for AWS plugin unless it's enabled in particular, don't do ExternalProject_Add() that starts creating build directories for a disabled plugin commita1782b4ab9Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Mar 19 19:40:25 2016 +0100 MDEV-9739 Assertion `m_status == DA_ERROR || m_status == DA_OK' failed in Diagnostics_area::message() ; connect.xml* tests fail in buildbot commit59c4675c6bAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Mar 19 12:02:03 2016 +0100 - Fix compile error when copying a string on itself. modified: storage/connect/value.cpp - Fix compile error of MDEV-9603 modified: storage/connect/tabmysql.cpp commitd70697b6f8Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 17 18:06:25 2016 +0100 main.mysqld--help failure with cracklib plugin don't fail if cracklib_password_check is statically compiled in commit3fdc6140a3Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 11 08:59:51 2016 +0100 update plugins' maturity levels commit7cb16dc2a3Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Mar 18 20:53:18 2016 +0200 MDEV-9422: Checksum errors on restart when killing busy instance that uses encrypted XtraDB tables Fix incorrectly merged files on innodb_plugin. commit4fdac6c07eAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Mar 16 19:49:17 2016 +0100 MDEV-9701: CREATE VIEW with GROUP BY or ORDER BY and constant produces invalid definition Fixed printing integer constant in the ORDER clause (MySQL solution) Removed workaround for double resolving counter in the ORDER. commit9c89b84d46Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Mar 18 11:27:32 2016 -0400 MDEV-9401: wsrep_forced_binlog_format with binlog causes crash Some statements are always replicated in STATEMENT binlog format. So upon their execution, the current binlog format is temporarily switched to STATEMENT even though the session's format is different. This state, stored in THD's current_stmt_binlog_format, was getting incorrectly masked by wsrep_forced_binlog_format, causing assertions and unintended generation of row events. Backported galera.galera_forced_binlog_format and added a test specific to this case. commitb25373beb5Author: Alexander Barkov <bar@mariadb.org> Date: Fri Mar 18 17:50:18 2016 +0400 MDEV-9653 Assertion `length || !scale' failed in uint my_decimal_length_to_precision(uint, uint, bool) MDEV-9752 Wrong data type for COALEASCE(?,1) in prepared statements commit546e9139abAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Sun Feb 28 20:53:07 2016 +0400 Fixed plugins.cracklib_password_check failure In RHEL7/RHEL7.1 libcrack behavior seem to have been modified so that "foobar" password is considered bad (due to descending "ba") earlier than expected. For details google for cracklib-2.9.0-simplistic.patch. Adjusted affected passwords not to have descending and ascending sequences. commit1c84836819Author: Akira Higuchi <ahiguti100@gmail.com> Date: Tue Aug 11 15:51:54 2015 +0900 fix that mysqld aborts on exit if an open handlersocket connection remains commit4f0fc0f912Author: Akira Higuchi <ahiguti100@gmail.com> Date: Tue Aug 11 15:42:25 2015 +0900 fix a memory leak in handlersocket commitee768d8e0eAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Mar 18 11:48:49 2016 +0200 MDEV-9640: Add used key_id to INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION commit4aac51db9aAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Mar 16 17:04:32 2016 +0400 MDEV-9587 - Debian packaging for GSSAPI plugin commitf448a800e1Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Mar 17 16:24:49 2016 +0200 MDEV-9422: Checksum errors on restart when killing busy instance that uses encrypted XtraDB tables Analysis: -- InnoDB has n (>0) redo-log files. -- In the first page of redo-log there is 2 checkpoint records on fixed location (checkpoint is not encrypted) -- On every checkpoint record there is up to 5 crypt_keys containing the keys used for encryption/decryption -- On crash recovery we read all checkpoints on every file -- Recovery starts by reading from the latest checkpoint forward -- Problem is that latest checkpoint might not always contain the key we need to decrypt all the redo-log blocks (see MDEV-9422 for one example) -- Furthermore, there is no way to identify is the log block corrupted or encrypted For example checkpoint can contain following keys : write chk: 4 [ chk key ]: [ 5 1 ] [ 4 1 ] [ 3 1 ] [ 2 1 ] [ 1 1 ] so over time we could have a checkpoint write chk: 13 [ chk key ]: [ 14 1 ] [ 13 1 ] [ 12 1 ] [ 11 1 ] [ 10 1 ] killall -9 mysqld causes crash recovery and on crash recovery we read as many checkpoints as there is log files, e.g. read [ chk key ]: [ 13 1 ] [ 12 1 ] [ 11 1 ] [ 10 1 ] [ 9 1 ] read [ chk key ]: [ 14 1 ] [ 13 1 ] [ 12 1 ] [ 11 1 ] [ 10 1 ] [ 9 1 ] This is problematic, as we could still scan log blocks e.g. from checkpoint 4 and we do not know anymore the correct key. CRYPT INFO: for checkpoint 14 search 4 CRYPT INFO: for checkpoint 13 search 4 CRYPT INFO: for checkpoint 12 search 4 CRYPT INFO: for checkpoint 11 search 4 CRYPT INFO: for checkpoint 10 search 4 CRYPT INFO: for checkpoint 9 search 4 (NOTE: NOT FOUND) For every checkpoint, code generated a new encrypted key based on key from encryption plugin and random numbers. Only random numbers are stored on checkpoint. Fix: Generate only one key for every log file. If checkpoint contains only one key, use that key to encrypt/decrypt all log blocks. If checkpoint contains more than one key (this is case for databases created using MariaDB server version 10.1.0 - 10.1.12 if log encryption was used). If looked checkpoint_no is found from keys on checkpoint we use that key to decrypt the log block. For encryption we use always the first key. If the looked checkpoint_no is not found from keys on checkpoint we use the first key. Modified code also so that if log is not encrypted, we do not generate any empty keys. If we have a log block and no keys is found from checkpoint we assume that log block is unencrypted. Log corruption or missing keys is found by comparing log block checksums. If we have a keys but current log block checksum is correct we again assume log block to be unencrypted. This is because current implementation stores checksum only before encryption and new checksum after encryption but before disk write is not stored anywhere. commitd1e6c40294Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Thu Mar 17 17:58:40 2016 +0100 mtr complains about klist is not found, if Kerberos is not installed on machines commitb80b292117Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Mar 17 00:08:00 2016 +0100 - Fix crash when sorting a TBL table with thread=yes. This was because Tablist can be NULL when no lacal tables are in the list. modified: storage/connect/tabtbl.cpp modified: storage/connect/mysql-test/connect/r/tbl.result modified: storage/connect/mysql-test/connect/t/tbl.test commit7829cefa41Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Mar 16 18:53:56 2016 +0100 - Fix MDEV-9603 compiler error. modified: storage/connect/tabmysql.cpp - Test invalid CSV separator when creating the table (MDEV-9714) modified: storage/connect/ha_connect.cc - Stop using SQLDescribeParam anymore modified: storage/connect/odbconn.cpp - Fix MDEV-9723 Regression due to calling Cardinality instead of GetMaxSize in info. modified: storage/connect/tabtbl.h modified: storage/connect/mysql-test/connect/r/tbl.result modified: storage/connect/mysql-test/connect/t/tbl.test - Typo modified: storage/connect/tabodbc.cpp commit9b53d84d14Author: Alexander Barkov <bar@mariadb.org> Date: Wed Mar 16 13:43:06 2016 +0400 MDEV-9656 Assertion `0' failed in Item_sum_field::get_tmp_table_field(). Removing a wrong ASSERT. Item_sum_field now uses the inherited Item::get_tmp_table_field(). commitd5d0c35f23Merge:46089d76915ea894a7c8Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 15 10:46:33 2016 +0200 Merge pull request #160 from grooverdan/crc32_power_abi_fix MDEV-9699: power8 crc32: Per the PPC64 ABI, v20-v31 are non-volatile registers commit46089d7691Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Sun Mar 13 20:29:14 2016 +0100 MDEV-9659 : AWS KMS encryption plugin commit517584dde0Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Thu Mar 10 17:12:58 2016 +0100 Provide a way to reenable DISABLED plugin with -DPLUGIN_${NAME}=STATIC|DYNAMIC commita12326458dAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sun Mar 13 15:37:47 2016 +0200 Add check to avoid NULL-pointer access if encryption information is not available. Clarify system tablespace page 0 check. commitf341d94423Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sat Mar 12 13:43:33 2016 +0200 MDEV-9549: Trying to decrypt a not encrypted page Make sure that on decrypt we do not try to reference NULL pointer and if page contains undefined FIL_PAGE_FILE_FLUSH_LSN field on when page is not the first page or page is not in system tablespace, clear it. commit8c2fd5537bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 8 09:06:02 2016 +0100 bump the version commit5ea894a7c8Author: Anton Blanchard <anton@au.ibm.com> Date: Tue Mar 8 11:31:45 2016 +1100 MDEV-9699: power crc32: Per the PPC64 ABI, v20-v31 are non-volatile registers These where modified and not restored. Corrected as per upstream:f2145e5858...aaf0ac4commit33d298493dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 4 10:13:41 2016 +0100 MDEV-9683 Server crashes in Item::basic_const_item on numerous nested NULLIFs test case only commit70f5fabdbfAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 4 10:09:17 2016 +0100 MDEV-9682 Assertion `0' failed in Item_cache_row::illegal_method_call on 2nd execution of PS with NULLIF don't cache Item_cache commitff93b77fd6Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 3 18:44:10 2016 +0100 MDEV-9641 MDEV-9644 NULLIF assertions * only copy args[0] to args[2] after fix_fields (when all item substitutions have already happened) * change QT_ITEM_FUNC_NULLIF_TO_CASE (that allows to print NULLIF as CASE) to QT_ITEM_ORIGINAL_FUNC_NULLIF (that prohibits it). So that NULLIF-to-CASE is allowed by default and only disabled explicitly for SHOW VIEW|FUNCTION|PROCEDURE and mysql_make_view. By default it is allowed (in particular in error messages and debug output, that can happen anytime before or after optimizer). commit5a3a79ce5fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 26 12:07:07 2016 +0100 MDEV-9637 select nullif(count(col1),0) gives wrong result if in a view don't do special SUM_FUNC_ITEM treatment in NULLIF for views (as before), but do it for derived tables (when context_analysis_only == CONTEXT_ANALYSIS_ONLY_DERIVED) commitc689e93500Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Mar 5 16:25:23 2016 +0100 update sysvar_innodb,32bit,xtradb.rdiff commit6c414fcf89Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Tue Mar 1 21:10:59 2016 +0100 MDEV-5542: GROUP_CONCAT truncate output to 65.536 chars when using DISTINCT or ORDER BY port of mysql fix WL#6098 commit66832b6195Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 26 10:49:19 2016 -0500 MDEV-9598: Donor's rsync SST script hangs if FTWRL fails During SST, since wsrep_sst_rsync waits for mysqld to create "tables_flushed" file after it has successfully executed FTWRL, it would wait forever if FTWRL fails. Fixed by introducing a mechanism to report failure to the script. commit0251232f8cAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 24 23:32:37 2016 -0500 Fix to ensure updates in gtid_slave_state table do not get binlogged. Also, renamed wsrep_skip_append_keys to wsrep_ignore_table. Test case : galera.galera_as_slave_gtid.test commit01897db102Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 24 17:40:12 2016 -0500 Skip galera_sync_wait_show.test on non-debug builds. The test uses a debug feature SHOW PROCEDURE|FUNCTION CODE. commitb05158cc10Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Feb 24 17:14:38 2016 +0300 MDEV-8988: Apparently valid SQL query gives wrong result (nested WHERE) - "Early NULLs filtering" optimization used to "peel off" Item_ref and Item_direct_ref wrappers from an outside column reference before adding "outer_table_col IS NOT NULL" into JOIN::outer_ref_cond. - When this happened in a subquery that was evaluated in a post-GROUP-BY context, attempt to evaluate JOIN::outer_ref_cond would fetch an incorrect value of outer_table_col. commitd044507dc5Merge:ff2d92b17d5a4ec8e60bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Feb 24 10:27:23 2016 +0100 Merge branch 'bb-10.1-serg' into 10.1 10.0 merge 10.0-galera merge connect/10.1 merge commit5a4ec8e60bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Feb 24 10:26:13 2016 +0100 fix test results after the merge commitff2d92b17dAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed Feb 24 13:12:03 2016 +0400 MDEV-7231 Field ROUTINE_DEFINITION in INFORMATION_SCHEMA.`ROUTINES` contains broken procedure body when used shielding quotes inside. commitcceec7858fMerge:88576b3a80f67d6fccacAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 24 01:21:40 2016 -0500 Merge branch '10.0-galera' into bb-10.1-serg commitf67d6fccacAuthor: Krunal Bauskar <krunal.bauskar@percona.com> Date: Fri Dec 4 15:09:08 2015 +0530 - PXC#480: xtrabackup-v2 SST fails with multiple log_bin directives in my.cnf If any given variable the xtrabackup-v2 sst script looks for is specified multiple times in cnf file then it tend to pick both of them causing some of the follow-up command to fail. Avoid this programatic mistake by honoring only the last variable assigned setting as done by mysqld too. Check https://bugs.launchpad.net/percona-xtradb-cluster/+bug/1362830 commit0cf66e49dbAuthor: Krunal Bauskar <krunal.bauskar@percona.com> Date: Thu Oct 22 14:56:29 2015 +0530 - PXC#460: wsrep_sst_auth don't work in Percona-XtraDB-Cluster-56-5.6.25-25.12.1.el7 Semantics: --------- * Generally end-user will create a separate user with needed privileges for performing DONOR action. * This user credentials are specified using wsrep_sst_auth. * Along with this user there could be other user(s) created on the server that sysadmin may use for normal or other operations * Credentials for these user(s) can be specified in same cluster/server cnf file as part of [client] section When cluster act as DONOR and if wsrep_sst_auth is provided then it should strictly use it for performing SST based action. What if end-user has same credentials for performing both SST action and normal admin work ? * Then end-user can simply specify these credentials as part of [client] section in cnf file and skip providing wsrep_sst_auth. Issue: ----- MySQL client user/password parsing preference order is as follows: * command line (through --user/--password) * cnf file * MYSQL_PWD enviornment variable. Recent change tried passing sst user password through MYSQL_PWD (and user though --user command line param as before). On the system where-in admin had another user for performing non-SST actions, credentials for such user were present in cnf file under [client] section. Due to mysql client preference order, SST user name was used (as it was passed through command line) but password of other user (meant for non-SST) action was being used as it was passed through cnf file. Password passed through MYSQL_PWD was completely ignored causing user-name/password mismatch. Solution: --------- * If user has specified credentials for SST then pass them through command line so that they are used in priority. (There could be security concern on passing things through command line but when I tried passing user-name and password through command line to mysql client and then did ps I saw this ./bin/mysql --user=sstuser --password=x xxxxxxxx -S /tmp/n1.sock so seems like password is not shown) commit0fd9d5a656Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 23 21:24:00 2016 -0500 Update WSREP_PATCH_REVNO. commit1b0d811d2dMerge:0d58323e263042d655e2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 23 21:08:42 2016 -0500 Merge branch '5.5-galera' into 10.0-galera commit0d58323e26Merge:276d65b324a4b2714968Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 23 20:53:29 2016 -0500 Merge tag 'mariadb-10.0.24' into 10.0-galera commit276d65b324Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 23 20:33:21 2016 -0500 Fix for test failures. commit88576b3a80Merge:a5679af1b169042ffe4eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Feb 23 22:16:35 2016 +0100 Merge tracking branch 'connect/10.1' into 10.1 commita5679af1b1Merge:20c4dfd4a95f2f3c4fa8Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Feb 23 21:35:05 2016 +0100 Merge branch '10.0' into 10.1 commitb9c42d7a47Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Jan 11 11:57:22 2016 +0200 Bump WSREP_PATCH_VERSION in cmake/wsrep.cmake to 13 commit28a36f617fAuthor: Vicențiu Ciorbaru <cvicentiu@gmail.com> Date: Tue Feb 23 14:09:25 2016 +0200 Update column bitmaps for delete during binlog row image minimal. commitde1fa45276Author: Vicențiu Ciorbaru <cvicentiu@gmail.com> Date: Mon Feb 22 17:50:55 2016 +0200 [MDEV-8411] Assertion failed in !table->write_set The reason for the assertion failure is that the update statement for the minimal row image sets only the PK column in the write_set of the table to true. On the other hand, the trigger aims to update a different column. Make sure that triggers update the used columns accordingly, when being processed. commit0e20137a80Author: Vicențiu Ciorbaru <cvicentiu@gmail.com> Date: Tue Feb 16 16:15:22 2016 +0200 [Code cleanup] Refactor duplicate code within myisam and maria sort.cc commit20c4dfd4a9Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Feb 22 19:55:43 2016 +0100 MDEV-9576 syntax error on view with nullif and count don't transform Item_func_nullif if it's context_analysis_only commit216b5cc9b6Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Feb 22 18:49:35 2016 +0100 MDEV-9606 Server crashes in fix_fields, main.null fails with ps-protocol #2 commite6d51aac77Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Feb 22 12:52:29 2016 +0100 MDEV-9550 COUNT(NULL) returns incorrect result with sequence storage engine when calculating COUNT(basic_const), take into account that this basic_const may be NULL commit9214d043fdAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Feb 20 22:26:48 2016 +0100 disable SHOW I_S_table for built-in I_S tables This fixes MDEV-9538 Server crashes in check_show_access on SHOW STATISTICS MDEV-9539 Server crashes in make_columns_old_format on SHOW GEOMETRY_COLUMNS MDEV-9540 SHOW SPATIAL_REF_SYS and SHOW SYSTEM_VARIABLES return empty results with numerous warnings commit57905d18d6Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Feb 20 21:00:51 2016 +0100 MDEV-9535 Trigger doing "SET NEW.auctionStart = NOW();" on a timestamp kills MariaDB server when doing set_field_to_new_field (from switch_to_nullable_trigger_fields()) make sure that the field we're about to change actually belongs to the right table (otherwise we cannot dereference new_field[] array as the wrong table might have more fields than new_field[] has elements) commit0fcd0ee34eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Feb 20 21:06:20 2016 +0100 MDEV-9500 Bug after upgrade to 10.1.10 (and 10.1.11) Case: table with a NOT NULL field, BEFORE UPDATE trigger, and UPDATE with a subquery that uses GROUP BY on that NOT NULL field, and needs a temporary table for it. Because of the BEFORE trigger, the field becomes nullable temporarily. But its Item_field (used in GROUP BY) doesn't. When working with the temptable some code looked at item->maybe_null, some - at field->null_ptr. The fix: make Item_field nullable when its field is. This triggers an assert. The group key size is calculated before the item is made nullable, so the group key doesn't have a null byte. The fix: make fields/items nullable before the group key size is calculated. commita38b705fe0Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Feb 20 19:30:14 2016 +0100 MDEV-9560 Mariadb 10.1 Crashes when replicating from 10.0 when replicating old temporal type fields (that don't store metadata in the binlog), take the precision from destination fields. (this fixes the replication failure, crashes were fixed in a different commit) commit4cabc608b6Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 19 14:17:35 2016 +0100 correct temporal fields in max_display_length_for_field() it's *display length* (a.k.a. field_length) not storage length (a.k.a. pack_length) commitd4b1425b60Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 19 12:06:37 2016 +0100 cleanup * make a local variable for target_table->field[col] * move an often-used bit function to my_bit.h * remove a non-static and not really needed trivial comparison function with a very generic name commitab2a9600a7Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Feb 18 12:56:27 2016 +0100 MDEV-9475 I can't finish my_install_db using binary tar distribution to avoid run-time libjemalloc.so dependency link binary tarballs with a static libjemalloc_pic.a commitbb54df6ec9Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Feb 23 10:32:06 2016 +0100 update test results after MDEV-9307 commit15118d3561Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 23 00:30:47 2016 -0500 refs codership/mysql-wsrep#237: Add sync point for mtr test. commitb633dbdac9Author: sjaakola <seppo.jaakola@iki.fi> Date: Wed Dec 23 09:44:32 2015 +0200 refs codership/mysql-wsrep#237 - test for FLUSH TABLES hang in slave node commit32df0b1aacAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Wed Dec 2 23:20:10 2015 +0200 refs codership/mysql-wsrep#233 - avoiding the race condition, by not grabbing thd->LOCK_wsrep_thd for accessing thd->wsrep_exec_mode. The caller is same thread and exec mode can only be changed by self. commit90e5e2f91cAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Wed Dec 2 23:16:25 2015 +0200 refs codership/mysql-wsrep#233 - added mtr test case for this issue - not a perfect one, depends on some sleeps instead of checking if sync points are met commit2cdcde93c5Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 23 00:19:41 2016 -0500 Merge sync point from previous commit to XtraDB. commit18f160d954Author: sjaakola <seppo.jaakola@iki.fi> Date: Wed Dec 2 22:57:46 2015 +0200 refs codership/mysql-wsrep#233 - added dbug sync points for further mtr test for this issue commitbf9572ba59Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Nov 25 03:36:26 2015 -0800 refs codership/mysql-wsrep#228 - a test for wsrep_sync_wait and SHOW commit1e14db11eeAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Mon Nov 16 11:57:38 2015 +0100 refs codership/mysql-wsrep#228 - Add calls to wsrep_sync_wait for SHOW CREATE DB/PROCEDURE/FUNCTION/TRIGGER/EVENT and SHOW PROCEDURE/FUNCTION CODE commit5ebf6ce7aaAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Nov 16 04:06:38 2015 -0800 Bump WSREP_PATCH_VERSION in cmake/wsrep.cmake to 12 commit2b7a5d9edbAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Nov 16 03:00:27 2015 -0800 Galera MTR Tests: adjust the galera.galera_defaults test for the new MTR default value for repl.causal_read_timeout commit8504330d1dAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Nov 13 04:03:39 2015 -0800 Galera MTR Tests: misc test stability fixes commitc6659345a0Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Tue Nov 3 14:16:08 2015 +0100 refs codership/mysql-wsrep#201 Fix remaining issues with wsrep_sync_wait and query cache. - Fixes misplaced call to invalidate query cache in Rows_log_event::do_apply_event(). Query cache was invalidated too early, and allowed old entries to be inserted to the cache. - Reset thd->wsrep_sync_wait_gtid on query cache hit. THD->cleanup_after_query is not called in such cases, and thd->wsrep_sync_wait_gtid remained initialized. commitc05d85f45dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Feb 22 22:35:48 2016 -0500 Refs codership/mysql-wsrep#198 : Fix test case commite9d805b845Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Oct 23 00:01:16 2015 -0700 Refs codership/mysql-wsrep#198 . MTR test case commitd45f0c117fAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Feb 22 22:30:14 2016 -0500 refs codership/mysql-wsrep#198: Revert test changes from previous commit Restore tests for FLUSH commands supported by MariaDB. commitea0b1837edAuthor: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Fri Oct 23 09:38:33 2015 +0300 refs codership/mysql-wsrep#198 Removed code duplication, PXC specifics * Total order isolation was started twice for FLUSH TABLES, from reload_acl_and_cache() and from mysql_execute_command(). Removed the reload_acl_and_cache() part. * Removed PXC specific stuff from MTR tests commit235bebe02eAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Thu Oct 22 17:30:20 2015 +0200 refs codership/mysql-wsrep#201 - Eliminates code duplication in query cache patch - Reduces the number of iterations in mysql-wsrep#201.test to shorten the execution time - Adds a new test case that exercises more scenarios commit17ac959716Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Feb 22 22:07:59 2016 -0500 Bug#1421360: Add Percona Server specific FLUSH statements. - Restore FLUSH commands supported by MariaDB (removed in the previous commit) - Adjust test case commit5d4fb15e5aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Feb 22 22:05:16 2016 -0500 Fix for compilation failure. commit7d89deb0a3Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Thu Oct 22 14:59:53 2015 +0300 refs codership/mysql-wsrep#198 fixed merge issues commit0ecc4fe2acAuthor: Raghavendra D Prabhu <rprabhu@wnohang.net> Date: Tue Jul 7 14:20:22 2015 +0530 Bug#1421360: Add Percona Server specific FLUSH statements. Added following: FLUSH CLIENT_STATISTICS FLUSH INDEX_STATISTICS FLUSH TABLE_STATISTICS FLUSH THREAD_STATISTICS FLUSH USER_STATISTICS pertaining to USER STATISTICS https://www.percona.com/doc/percona-server/5.6/diagnostics/user_stats.html FLUSH CHANGED_PAGE_BITMAPS pertaining to changed page tracking. https://www.percona.com/doc/percona-server/5.6/management/changed_page_tracking.html Also, added tests for them. (cherry picked from commit 7efe49010c7f217663f364657090812b4723f426) Conflicts: mysql-test/suite/galera/r/galera_flush.result mysql-test/suite/galera/r/galera_flush_gtid.result mysql-test/suite/galera/t/galera_flush.test sql/sql_parse.cc commit1077eef942Author: Raghavendra D Prabhu <rprabhu@wnohang.net> Date: Thu Jul 16 05:24:13 2015 -0700 PXC-391: Avoid Total Order Isolation (TOI) for LOCAL sql admin commands. The admin commands in question are: > OPTIMIZE > REPAIR > ANALYZE For LOCAL or NO_WRITE_TO_BINLOG invocations of these commands, ie OPTIMIZE LOCAL TABLE <t1> they are not binlogged as expected. Also, in addition, they are not executed under TOI. Hence, they are not propagated to other nodes. The effect is same as that of wsrep_on=0. Also added tests for this. A WSREP_DEBUG for wsrep_register_hton has also been added. The galera_flush_local test has also been updated for verifying that effects of NO_WRITE_TO_BINLOG / LOCAL are equivalent to wsrep_on=0 from wsrep perspective. (cherry picked from commit 5065122f94a8002d4da231528a46f8d9ddbffdc2) Conflicts: sql/sql_admin.cc sql/sql_reload.cc sql/wsrep_hton.cc commit5be449d014Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Oct 21 01:25:32 2015 -0700 Galera MTR Tests: attempt to work around codership/QA#179 in galera_as_slave_nonprim.test commitd794f05910Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Oct 21 01:15:52 2015 -0700 Galera MTR Tests: stability fix for galera_gcs_fragment.test (TCP port was output to the .result file) commitace86a2375Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Tue Oct 20 17:54:14 2015 +0200 refs codership/mysql-wsrep#201 - Fixes query cache so that it is aware of wsrep_sync_wait. Query cache would return (possibly stale) results to the client, regardless of the value of wsrep_sync_wait. - Includes the test case that reproduced the issue. commitc1ea0570afAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Feb 22 16:51:45 2016 -0500 refs codership/mysql-wsrep#184 Merge fix to XtraDB engine. commit251c53a8a7Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Mon Oct 19 11:17:13 2015 +0200 refs codership/mysql-wsrep#184 - Adds runtime check wsrep_on(), to not interfere with default innodb behavior. commit5ad30e8ad1Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Fri Oct 16 15:57:22 2015 +0300 MTR test for checking correctness of fragmentation over CCs commitcf43620136Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Fri Oct 16 11:51:11 2015 +0200 refs codership/galera#308 - Avoid calling wsrep->stats_free() directly, instead, use wsrep_free_status(). commit8c89e843dbAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Fri Oct 16 10:22:30 2015 +0200 refs codership/galera#308 - Moves cleanup of status vars to function export_wsrep_status_to_mysql(). commit2c56142b77Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Feb 22 16:36:05 2016 -0500 refs codership/mysql-wsrep#184 Merge fix to XtraDB engine. commit1d21676853Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Thu Oct 15 15:13:29 2015 +0200 refs codership/mysql-wsrep#184 Fixes a deadlock between applier and its victim transaction. The deadlock would manifest when a BF victim was waiting for some lock and was signaled to rollback, and the same time its wait timeout expired. In such cases the victim would return from lock_wait_suspend_thread() with error DB_LOCK_WAIT_TIMEOUT, as opposed to DB_DEADLOCK. As a result only the last statement of the victim would rollback, and eventually it would deadlock with the applier. commit267d429b5aAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Mon Oct 5 11:01:04 2015 +0200 refs codership/mysql-wsrep#31 - Erronously removed call to wsrep_xid_init() in previous commit. commitc0dac420e5Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Mon Oct 5 09:42:03 2015 +0200 refs codership/mysql-wsrep#31 - Removes useless call to wsrep_xid_init() in wsrep_apply_events(). Transaction's xid is already initialized at that point. - Adds call to wsrep_set_SE_checkpoint() for committing TOI events in the applier side. - Includes test case that reproduced the issue. commit0ec457b0deAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Fri Oct 2 10:16:55 2015 +0200 refs codership/galera#308 - Moves call wsrep_free_status() to THD::cleanup_after_query(). Wsrep status variables were previously freed only on SHOW STATUS. - Removes valgrind suppression from mysql-test/valgrind. commit00b058aca3Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Thu Oct 1 17:05:48 2015 +0300 refs codership/mysql-wsrep#202 Added schema info into wsrep messages Added schema info to wsrep messages above debug level. commit7ce84cf764Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Sep 29 23:29:54 2015 -0700 Galera MTR Tests: stability fixes Conflicts: mysql-test/include/mtr_check.sql mysql-test/suite/galera/r/galera_log_bin.result mysql-test/suite/galera/t/galera_log_bin.test commit2f870f5376Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Tue Sep 15 13:20:55 2015 +0300 Restore original value of wsrep_on after waiting for sync point. commitd01328d73bAuthor: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Sun Sep 13 18:57:20 2015 +0300 Helpers to deal with galera dbug sync points. commitb128f26cd5Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Mon Feb 22 18:11:59 2016 +0100 Fix build : change MYSQL_ADD_PLUGIN to be MACRO again, rather than FUNCTION commitc20979b163Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Mon Feb 22 16:26:44 2016 +0100 MDEV-9601 Build client plugins, also for the cmake client-only build (-DWITHOUT_SERVER=1) commitd9c640aa8bAuthor: Oliver Giles <ohw.giles@gmail.com> Date: Sat Dec 12 10:37:25 2015 +0100 SphinxSE: add support for json filtering The filter command did not accept characters . [ ] which are valid in an attribute name for a sphinx query with json filtering. + test case added commit3a24f1cf84Author: Vladislav Vaintroub <vvaintroub@googlemail.com> Date: Mon Feb 22 12:48:03 2016 +0100 MDEV-9307 - provide info about DATA/INDEX directory in INFORMATION_SCHEMA.TA BLES (in CREATE_OPTIONS column) commitff25158d7fAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Thu Feb 18 19:11:13 2016 +0100 MDEV-9529 - do not install sql script to BINDIR commitbcd2a156eeAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Fri Feb 19 14:42:43 2016 +0100 MDEV-9833 - fix mysql_config --libs for weird cases, where mysqlclient link dependencies contain flags instead of libraries (like -pthread rather than -lpthread) commit4b08b10b3aAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu Feb 18 17:20:48 2016 +0100 MDEV-9489:Assertion `0' failed in Protocol::end_statement() on UNION ALL Restoring currect_select fixed. commit69042ffe4eAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Feb 20 00:22:16 2016 +0100 - Fix to MDEV-9579 be testing for void result. modified: storage/connect/tabodbc.cpp commitfd8e846a3bAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Feb 18 11:01:22 2016 +0400 MDEV-9564 - added s390x to lib64 INSTALL_LIBDIR handling Adjusted INSTALL_LIBDIR detection so that it is set to "lib64" on any 64bit system (not only x86_64). New condition is insipired by GNUInstallDirs cmake module. commit17b5cb6172Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 17 22:56:38 2016 -0500 codership/mysql-wsrep#247: Fix test case commita6d93b20d7Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Feb 16 23:42:42 2016 -0800 Galera MTR Tests: MW-246 codership/mysql-wsrep#247 Stability fix for galera.mysql-wsrep#247.test commit2438afbfdeAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Feb 16 03:12:58 2016 -0800 Galera MTR tests: MW-246 codership/mysql-wsrep#247 Additional tests around RSU and wsrep_desync commit13627d49a9Author: sjaakola <seppo.jaakola@iki.fi> Date: Tue Feb 16 11:55:03 2016 +0200 refs MW-246 - created mtr test for testing explicit desyncing with RSU mode DDL commit4bdf0258b6Author: sjaakola <seppo.jaakola@iki.fi> Date: Mon Feb 15 23:33:55 2016 +0200 refs MW-246 - skipping desync and resync before and after DDL execution in RSU mode, if wsrep_desync is set upfront commit3042d655e2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 17 15:50:01 2016 -0500 MDEV-9577: sys_vars.ignore_db_dirs_basic fails under Valgrind Ensure that the command line argument is of sufficient length before moving past the leading long option marker "--". commitdb5b51fb7eAuthor: Jean Weisbuch <jean@phpnet.org> Date: Wed Jan 27 00:46:12 2016 +0100 mysqlreport update to 4.0, see MDEV-573 for more informations commitf22f2a62aeAuthor: Daniel Dent <DanielDent@users.noreply.github.com> Date: Thu Jan 14 03:59:19 2016 -0800 MDEV-9484 - Typo fixes commit59b6b99ce3Author: Andrew McDonnell <bugs@andrewmcdonnell.net> Date: Sat Feb 28 23:15:17 2015 +1030 Added regression test for MDEV_5871 commit36ca65b73bAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Feb 17 12:32:07 2016 +0200 MDEV-9559: Server without encryption configs crashes if selecting from an implicitly encrypted table There was two problems. Firstly, if page in ibuf is encrypted but decrypt failed we should not allow InnoDB to start because this means that system tablespace is encrypted and not usable. Secondly, if page decrypt is detected we should return false from buf_page_decrypt_after_read. commit02259623b9Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 16 17:14:11 2016 -0500 Update global_suppressions for galera suite to include new warning. commit1ac64b7510Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Feb 16 12:55:45 2016 +0000 MDEV-9557 - fix compilation errors due to missing krb5_free_unparsed_name() in old versions of Heimdal Kerberos commitd163ad338dAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Feb 15 10:32:30 2016 +0100 - Fix to MDEV-9542 Connect was not handling NULLs in the answer from catalog functions and tables. It does now and when decimal is NULL defines DOUBLE without parameters. modified: storage/connect/ha_connect.cc modified: storage/connect/mysql-test/connect/r/odbc.result modified: storage/connect/mysql-test/connect/r/odbc_oracle.result modified: storage/connect/mysql-test/connect/r/odbc_postgresql.result modified: storage/connect/mysql-test/connect/r/odbc_sqlite3.result modified: storage/connect/mysql-test/connect/r/odbc_xls.result modified: storage/connect/odbconn.cpp modified: storage/connect/table.cpp modified: storage/connect/valblk.h commitd23bd26becMerge:b83de1151aa9a08b1e2fAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Feb 13 18:28:36 2016 -0500 Merge tag 'mariadb-5.5.48' into 5.5-galera commitb83de1151aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 10 18:04:08 2016 -0500 Update WSREP_PATCH_REVNO. commita6d0903764Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Jan 11 12:03:35 2016 +0200 Bump WSREP_PATCH_VERSION in cmake/wsrep.cmake to 14 commit403a8bf8dfAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Nov 16 04:07:08 2015 -0800 Bump WSREP_PATCH_VERSION in cmake/wsrep.cmake to 13 commit1ce821b509Author: sjaakola <seppo.jaakola@iki.fi> Date: Thu Nov 12 10:33:04 2015 +0200 Refs codership/mysql-wsrep#221 - disabling certain IB atomic builtins, which caused complete hangs commitbd1d2b90a7Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Fri Nov 6 10:50:21 2015 +0100 refs codership/mysql-wsrep#201 Removes MTR tests. commit8a93a7c0b0Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Wed Nov 4 16:19:48 2015 +0200 refs codership/mysql-wsrep#226 Limit binlog recovery to found wsrep position Limit binlog recovery so that the wsrep position found from storage engines is not exceeded. This is required to have consistent position between wsrep position stored in innodb header and recoverd binlog. commit652e4c1d33Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 10 17:29:28 2016 -0500 Fix for a build failure. commit484bbd332fAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Wed Nov 4 09:36:01 2015 +0100 refs codership/mysql-wsrep#201 Manually merged query cache fixes from 97c02faf0a39dd189eeda4f75fb35bc5db69d541. commit0c7dffe9e1Author: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Thu Oct 22 17:30:20 2015 +0200 refs codership/mysql-wsrep#201 - Eliminates code duplication in query cache patch - Reduces the number of iterations in mysql-wsrep#201.test to shorten the execution time - Adds a new test case that exercises more scenarios commit8a71fde01fAuthor: Daniele Sciascia <daniele.sciascia@galeracluster.com> Date: Tue Oct 20 17:54:14 2015 +0200 refs codership/mysql-wsrep#201 - Fixes query cache so that it is aware of wsrep_sync_wait. Query cache would return (possibly stale) results to the client, regardless of the value of wsrep_sync_wait. - Includes the test case that reproduced the issue. commitd80b8442a6Author: Monty <monty@mariadb.org> Date: Sun Feb 7 15:00:30 2016 +0200 Fixes needed to compile with musl C library Patch originally by Codarren Velvindron commit07b8aefe90Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Feb 3 00:15:49 2016 +0300 MDEV-9504: ANALYZE TABLE shows wrong 'rows' value for ORDER BY query Revert the patch for MDEV-9504. It causes test failures, attempt to fix these causes more failures. The source of all this is that the code in test_if_skip_sort_order() has a peculiar way of treating select_limit parameter: Correct value is computed when the query plan is changed. In other cases, we use an approximation that ignores the presence of GROUP BY clause, or JOINs, or both. A patch that fixes all of the above would be too big to do in 10.1 commit55ea26541dAuthor: Monty <monty@mariadb.org> Date: Tue Feb 2 19:54:18 2016 +0200 Fixed warnings and one memory loss found by valgrind The memory loss could happen in Aria with encrypted tables when Aria failed to encrypt a block. In normal usage this should never happen. commit11c2d3c3e2Merge:52d695fef45cf293fcadAuthor: Monty <monty@mariadb.org> Date: Tue Feb 2 13:07:53 2016 +0200 Merge branch '10.0' into 10.1 Conflicts: configure.cmake commit52d695fef4Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Mon Feb 1 17:51:57 2016 +0100 Fix authentication plugin's tests in case username contains non-alphanumeric character, e.g dash commite6dee57f1aAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Mon Feb 1 19:06:54 2016 +0300 MDEV-9504: ANALYZE TABLE shows wrong 'rows' value for ORDER BY query - Legacy code would set JOIN_TAB::limit only for EXPLAIN queries (this variable is only used when producing EXPLAIN output) - ANALYZE/SHOW EXPLAIN need to produce EXPLAIN output for non-EXPLAIN queries, too, so we should always set JOIN_TAB::limit. commit91ff017297Merge:a96fbc3c358cf1f50967Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Feb 1 16:40:20 2016 +0100 Merge MDEV-9112 into 10.1 Conflicts: config.h.cmake configure.cmake commita96fbc3c35Author: Alexander Barkov <bar@mariadb.org> Date: Mon Feb 1 12:43:19 2016 +0400 MDEV-9503 Server crashes in fix_fields, main.null fails with ps-protocol DBUG_ASSERT() added in the patch for MDEV-9181 did not take into account special circumstances for the prepared statement EXECUTE. Fixig the assert. Also, extending and fixing comments made during MDEV-9181. commitdc50a3dd19Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Feb 1 01:02:23 2016 +0200 Raise the version number commit0bee1504a3Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Feb 1 01:01:29 2016 +0200 MDEV-9502 maria.encrypt-wrong-key fails with embedded server The test restarts the server, it should not be executed for embedded commit3d794d0ee8Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Jan 6 09:15:19 2016 +0100 MDEV9494 Fix build for Heimdal Kerberos commit7b14ba63f2Author: Monty <monty@mariadb.org> Date: Thu Jan 28 14:06:05 2016 +0200 MDEV-8724 Assertion `rc == 0' failed in ma_decrypt on reading an Aria table Don't assert if decrypt or encrypt fails if my_assert_on_error is not set. Added failed file name if encryption/decryption fails. commitce40ccaf24Author: Alexander Barkov <bar@mariadb.org> Date: Thu Jan 28 13:58:39 2016 +0400 MDEV-9181 (NULLIF(count(table.col)), 0) gives wrong result on 10.1.x Wrapping args[0] and args[2] into an Item_cache for aggregate functions. commit5092ab28baAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 28 08:57:30 2016 +0100 bump the version commit11c85e1d9fAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Jan 27 23:58:01 2016 +0400 MDEV-5273 Prepared statement doesn't return metadata after prepare. The SQL command 'PREPARE' was broken - should be take into account. commit418518c0b1Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Jan 27 16:42:42 2016 +0400 MDEV-5273 Prepared statement doesn't return metadata after prepare. Keep the embedded-server version valid. commitd16d40be2cAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Jan 27 14:58:52 2016 +0400 MDEV-5273 Prepared statement doesn't return metadata after prepare. SHOW CREATE PROCEDURE/FUNCTION fixed. commit34df3140f2Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Jan 27 13:57:25 2016 +0400 MDEV-5273 Prepared statement doesn't return metadata after prepare. SHOW BINARY LOGS fixed. commitefb36ac5d5Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Jan 27 13:42:53 2016 +0400 MDEV-5273 Prepared statement doesn't return metadata after prepare. SHOW MASTER STATUS fixed. commit75a1d866ddAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Jan 27 13:31:53 2016 +0400 MDEV-5273 Prepared statement doesn't return metadata after prepare. SHOW SLAVE STATUS fixed. commit552d33095aAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Jan 27 12:39:27 2016 +0400 MDEV-5273 Prepared statement doesn't return metadata after prepare. Fix for SHOW GRANTS statement. commitf3926cd18eAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Jan 27 12:01:55 2016 +0400 MDEV-5273 Prepared statement doesn't return metadata after prepare. Fix for SHOW CREATE DATABASE. commit07e9762940Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Fri Jan 22 19:29:26 2016 +0100 MDEV-8615: Assertion `m_cpp_buf <= begin_ptr && begin_ptr <= m_cpp_buf + m_buf_length' failed in Lex_input_stream::body_utf8_start Nothing should be done before any keyword recognized. commiteb15566138Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Jan 27 15:26:12 2016 +0100 fix failures of ps and ps_1general in --ps-protocol commit02cc921a44Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Jan 27 15:14:57 2016 +0100 compiler warnings commit4b31e6dc95Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Jan 27 15:23:42 2016 +0100 Address review comments, add unit test commitc1bf5ba27eAuthor: Georg Richter <georg@mariadb.com> Date: Tue Oct 13 17:10:16 2015 +0200 Revert "On Windows SSL works with sockets only, so we shouldn't tell the client" This reverts commit2ee149be4e. commit33e5a8aba2Author: Georg Richter <georg@mariadb.com> Date: Tue Oct 13 16:35:53 2015 +0200 On Windows SSL works with sockets only, so we shouldn't tell the client that we support SSL when using named pipes or shared memory. commitef3ca5c3baAuthor: Georg Richter <georg@mariadb.com> Date: Tue Oct 13 10:13:53 2015 +0200 New authentication plugin for authentication via named pipe on Windows operating systems. The plugin gets the sid of the client process and considers the user authenticated if the given username matches the username of this sid. commit13b79f488bAuthor: Monty <monty@mariadb.org> Date: Wed Jan 27 16:33:41 2016 +0200 Fixed MDEV-9347 Not all rows returned by the C API Problem was that insert-order (enforced by the optimizer) did not handle the case where the bitmap changed to a new one. Fixed by remembering the last bitmap page used and to force usage of this when inserting new rows commitb404b236a2Author: Alexander Barkov <bar@mariadb.org> Date: Wed Jan 27 11:42:31 2016 +0400 MDEV-9332 Bug after upgrade to 10.1.10 commit7d39b28093Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Jan 26 16:33:06 2016 +0200 [MDEV-9468]: Client hangs in my_addr_resolve Account for timeout of select returning a 0 error code. commitd227399318Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Jan 26 23:16:56 2016 +0400 Comment fixed. commitdf26954951Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Jan 26 16:00:59 2016 +0400 MDEV-5273 Prepared statement doesn't return metadata after prepare. The metadata creation part of the mysqld_shww_create separated to be used on the mysqld_stmt_prepare stage. commita095c99301Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Jan 26 17:56:41 2016 +0100 Fix packaging for client RPM plugins - provide 'ignored' list commit7831b79f44Merge:c76ab94fa977c75a46cfAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Jan 26 17:46:42 2016 +0100 Merge branch '10.1' of http://github.com/MariaDB/server into 10.1 commit77c75a46cfAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Jan 26 17:52:24 2016 +0400 A clean-up patch for Item_func_conv_charset (needed for MDEV-9181) Removing the "conv_charset" member and using collation.collation instead, as they duplicated each other. commitc76ab94fa9Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Jan 26 14:36:13 2016 +0100 Fix invalid format warnings commit71b39066d4Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 25 20:17:55 2016 +0100 after merge fixes fix compiler warnings commit44dea7ffbfMerge:f4faac4d6a3e20a0d8f4Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 25 22:59:41 2016 +0100 Merge branch 'connect/10.1' into 10.1 commitf4faac4d6aMerge:2ff65ba531666b9663f9Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 25 22:58:57 2016 +0100 Merge branch '10.0' into 10.1 commit2ff65ba531Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jan 24 17:41:11 2016 +0100 MDEV-9299 Test main.events_2 incompatible with Debian reproducibility testing framework Debian tests are run in 2017, update the test to use 2027 as a "future". commited4fb9b248Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jan 24 19:53:32 2016 +0100 MDEV-9259 Add missing mroonga files to Debian packaging in 10.1 commit5da7c346c7Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Jan 23 20:40:01 2016 +0100 MDEV-9428 NO_AUTO_VALUE_ON_ZERO is ignored when a trigger before insert is defined Don't compare "field == table->next_number_field" because the field can be special nullable field copy created by the trigger. Compare field_index values instead. commit68910e7092Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jan 24 20:43:19 2016 +0100 MDEV-9273 ERROR 1819 on grant statment for existing user Cannot do password validation in fix_lex_user(), we don't know there what "GRANT ... TO user" means - creating a new user with an empty password (need validation) or granting privileges to an existing user (no validation needed). Move validation down into replace_user_table(). And copy into check_change_password(). commitd14c4c7874Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jan 24 20:00:35 2016 +0100 cleanup: move all password validation logic into one function commitd5b1b1ac60Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 25 22:57:47 2016 +0100 stack too small on labrador (again!) increase the thread stack a bit for main.signal_demo3 and sys_vars.max_sp_recursion_depth_func to stop failing commitc37107380aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Jan 23 16:24:32 2016 +0100 cleanup: LEX_USER::pwtext and LEX_USER::pwhash Was: * LEX_USER::password was storing sometimes plaintext password and sometimes password hash * LEX_USER::auth was storing sometimes password hash and sometimes plugin authentication string Now: * LEX_USER::pwtext stores the password in plain-text * LEX_USER::pwhash stores the password hash * LEX_USER::auth stores the plugin authentication string commit1fea7e785fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Jan 23 16:08:24 2016 +0100 cleanup: create LEX_USER::reset_auth() as this is used quite often commitb01e2ff1cdAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 21 22:10:44 2016 +0100 MDEV-9385 Devel package wants ownership of /usr/share/pkgconfig on CentOS/RHEL add /usr/share/pkgconfig to the rpm ignored list commit5a5f18f3f7Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 21 21:58:30 2016 +0100 MDEV-9205 PAM user map plugin does not work with LDAP groups allow more characters in a valid user/group name: * POSIX allows dashes '-' and dots '.' * also the name may end with a dollar sign '$' for our purposes it's enough to allow [-.$] anywhere in the name commita2330c820aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 25 17:04:09 2016 +0100 MDEV-8208 Sporadic SEGFAULT on startup different fix. remove old ones, wait for THD to be fully initialized before continuing with the server startup process. This reverts commitsdb2e21b,13615c5,3f515a0,70113ee. commit744e605de0Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Dec 26 09:40:49 2015 +0100 cleanup: wsrep helper to create a thread commit0fab28ceddAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Dec 22 20:25:29 2015 +0100 cmake: better auto *.i targets in Makefiles commit8fb34ea8c1Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jan 25 14:10:09 2016 +0100 - Fix to MDEV-9446 (using Json UDFs when CONNECT is not installed) modified: storage/connect/ha_connect.cc modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h modified: storage/connect/mysql-test/connect/r/json_udf.result modified: storage/connect/mysql-test/connect/t/json_udf.inc modified: storage/connect/mysql-test/connect/t/json_udf.test modified: storage/connect/mysql-test/connect/t/json_udf2.inc commitda0991c6daAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Thu Jan 21 14:03:24 2016 +0400 MDEV-7875 Duplicate maria_add_gis_sp script in the sources. Now both are generated by the cmake from the scripts/maria_add_gis_sp.sql.in commitff8d4009a7Author: Sergei Petrunia <psergey@askmonty.org> Date: Sun Jan 24 12:31:11 2016 +0300 MDEV-9457: Poor query plan chosen for ORDER BY query by a recent 10.1 Undo the change in test_if_skip_sort_order() that set ref_key=-1 when a variant of index_merge is used (was made in fix for MDEV-9021). It turned out that test_if_cheaper_ordering() call below assumes that ref_key=-1 means "no index is used", that is, "an inefficient full table scan is done". This is not the same as index_merge, index_merge can actually be quite efficient. So, ref_key=MAX_KEY denotes the fact that some index is used, not any given index. commit825f51d1aaAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Dec 16 19:33:41 2015 +0100 MDEV-9118 ANALYZE TABLE for Engine independent status fetchs blob/text columns without use Do not include BLOB fields by default. commit45920d3d4aMerge:4bb62e91f642d9f3d87bAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Jan 20 21:29:37 2016 +0100 Merge pull request #151 from frozencemetery/my_name Fix spelling of my name commit42d9f3d87bAuthor: Robbie Harwood <rharwood@redhat.com> Date: Wed Jan 20 13:24:30 2016 -0500 Fix spelling of my name commit4bb62e91f6Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Jan 20 14:35:11 2016 +0100 Do not require server RPM for client plugins commit67cf76ad9bAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Mon Jan 18 19:30:46 2016 +0100 MDEV 4691- address review comments commit059c0c8b37Merge:e7a89b46d4f602c3938cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Jan 19 07:59:02 2016 +0200 Merge pull request #149 from grooverdan/10.1-static-analysis-innodbchecksum innodbchecksum: add fclose and handle errors commitf602c3938cAuthor: Daniel Black <daniel.black@au.ibm.com> Date: Tue Jan 19 14:19:31 2016 +1100 innodbchecksum: add fclose and handle errors commitddd62ba24aAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jan 18 23:00:40 2016 +0100 - Change SQL_NTS to 0 when the string is NULL modified: storage/connect/odbconn.cpp commite7a89b46d4Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Sun Jan 17 22:57:37 2016 +0200 Revert "[Code cleanup] Refactor duplicate code within myisam and maria sort.cc" This reverts commit727f92fe00. commitacc837981fAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Sun Jan 17 22:57:27 2016 +0200 Revert "Fixed compilation failure on MacOSX" This reverts commitdf32495c85. commit275f7d7d82Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Sun Jan 17 22:33:36 2016 +0200 Remove warning in my_addr_resolve ISO C90 does not allow mixed declarations and code. commitb2bd10d4d6Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Sun Jan 17 22:23:21 2016 +0200 [MDEV-9427] Server does not build on OpenSUSE 42.1 Changed code to comply to C90 standard. commit6d3ffd2e3aAuthor: Vicențiu Ciorbaru <cvicentiu@gmail.com> Date: Fri Dec 11 09:16:42 2015 +0200 Fixed a crash during stacktrace printing if addr2line failed to start. In order to get all the input from addr2line we must read in a loop, until the response is complete. Also, in case that the response is malformed, we must not end up reading invalid memory. commitdf32495c85Author: Vicențiu Ciorbaru <cvicentiu@gmail.com> Date: Thu Dec 10 03:56:31 2015 +0200 Fixed compilation failure on MacOSX Due to a hack that has propagated to the maria storage engine, undefined behaviour would result by bypassing the initialization code of variables after my_thread_init(). By refactoring the nested logic into a separate function, this problem is resolved. commit727f92fe00Author: Vicențiu Ciorbaru <cvicentiu@gmail.com> Date: Wed Dec 9 23:36:16 2015 +0200 [Code cleanup] Refactor duplicate code within myisam and maria sort.cc Setting read and write methods for the SORT_PARAM struct based on variable length key is done within a single function. commit38bcb4464eAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Jan 15 14:24:11 2016 +0100 After-merge fix. commit2f88b14acdMerge:55d61ec87806b2e327fcAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Jan 15 13:01:19 2016 +0100 Merge branch 'tmp' into tmp-10.1 Conflicts: sql/slave.cc commit55d61ec878Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Thu Jan 14 13:31:08 2016 +0100 MDEV-4961 SSPI/GSSAPI/Kerberos authentication plugin commit3e20a0d8f4Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Jan 9 19:51:51 2016 +0100 - Fix MDEV-9239. Meanwhile, make all references to the database in XTAB Schema (was sometimes in XTAB Catalog) modified: storage/connect/mycat.cc modified: storage/connect/mycat.h modified: storage/connect/reldef.cpp modified: storage/connect/reldef.h modified: storage/connect/tabmysql.cpp modified: storage/connect/tabpivot.cpp modified: storage/connect/tabtbl.cpp modified: storage/connect/tabutil.cpp commit111acb721fAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Jan 5 18:50:54 2016 +0200 MDEV-9359: encryption.create_or_replace fails sporadically in buildbot: failing assertion: mutex->magic_n == MUTEX_MAGIC_N Make sure that encryption threads mutex is initialized before starting encryption threads. commit56e0de0411Merge:1bb66ea88cae7b39a13aAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Dec 30 20:56:52 2015 +0100 Merge branch '10.0' into 10.1 commit1bb66ea88cMerge:4282ac48c64d3bc26152Author: Alexander Barkov <bar@mariadb.org> Date: Tue Dec 29 18:44:13 2015 +0400 Merge remote-tracking branch 'origin/10.0' into 10.1 commit4282ac48c6Merge:30b2447f7d7529870c7eAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Dec 29 15:22:33 2015 +0400 Merge remote-tracking branch 'origin/10.0' into 10.1 commit3e76d54b98Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Dec 27 19:37:28 2015 +0100 - Fix MDEV-9322. modified: storage/connect/json.cpp commit30b2447f7dAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Sun Dec 27 15:40:34 2015 +0400 MDEV-9128 - Compiling on IBM System Z fails Provided IBM System Z have outdated compiler version, which supports gcc sync builtins but not gcc atomic builtins. It also has weak memory model. InnoDB attempted to verify if __sync_lock_test_and_set() is available by checking IB_STRONG_MEMORY_MODEL. This macro has nothing to do with availability of __sync_lock_test_and_set(), the right one is HAVE_ATOMIC_BUILTINS. commit0f10a5c97aAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Thu Dec 24 21:46:38 2015 +0100 Fix annoying repetitive tokudb build warning, if MariaDB is build on non-Linux x64 system commit000eba94f5Merge:8efdfc8b5889a264809dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Dec 23 10:42:55 2015 -0500 Merge branch '10.0-galera' into 10.1 commit8efdfc8b58Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Dec 23 16:22:48 2015 +0100 update results innodb 32-bit funcs_1 embedded commit923b6dc888Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Dec 23 15:59:56 2015 +0100 remove HA_ERR_INFO, use ER_ALTER_INFO commit89a264809dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Dec 23 09:51:32 2015 -0500 MDEV-9224: postfix - thd can be null in reload_acl_and_cache() commit8d9fbaaba6Author: Monty <monty@mariadb.org> Date: Wed Dec 23 13:46:32 2015 +0200 Fixed that ccache can be used again (broken by TokuDB patches) For now, only if ccache is installed with symlinks in /usr/lib64/ccache commitdeef90eb75Author: Monty <monty@mariadb.org> Date: Wed Dec 23 11:57:42 2015 +0200 Don't send error 0 to my_printf_error() Fixed by adding HA_ERR_INFO as a informational warning to by used by MyISAM This is used to inform when we create a backup copy of the data file. Also improved informational messages when creating backup copies of data and index files commite6c0f25f04Merge:fe4047dc3970113ee170Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Dec 22 15:09:29 2015 -0500 Merge branch '5.5-galera' into 10.0-galera commitfe4047dc39Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Dec 22 15:02:18 2015 -0500 MDEV-9224 : Database lockup on flush in galera A deadlock can occur when the wsrep applier thread while executing FLUSH TABLES waits for MDL lock owned by other local transactions, which in turn are waiting for commit order if their seqno comes after one assigned to FLUSH TABLES. Fixed by making sure that the wsrep applier thread while executing FLUSH TABLES does not wait for table share(s) to be removed from table definition cache. commit70113ee170Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Dec 22 14:58:02 2015 -0500 MDEV-9290 : InnoDB: Assertion failure in file trx0sys.cc line 353 Addendum: Save thd's server_status & option_bits before setting the thread specific pointer. commit27e6fd9a59Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Dec 22 14:51:26 2015 +0400 MDEV-9095 - [PATCH] systemd capability for --memlock Adjust systemd files to enable CAP_IPC_LOCK to allow rootless mlockall (triggered by memlock option). This is amended version of a patch originally submitted by Daniel Black. commit87e6873ce9Author: Sergey Vojtovich <svoj@mariadb.org> Date: Mon Dec 21 14:40:41 2015 +0400 MDEV-9081 - Debian: insecure debian-sys-maint password handling Set umask so that newly created file is not readable by others. This is a quick fix to close security gap. To be replaced by MDEV-8375 - passwordless root login. commitc597ed0111Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Dec 16 17:29:26 2015 +0400 MDEV-9209 - [PATCH] scripts: Do not prepend the prefix to absolute paths Allow absolute paths for INSTALL_*DIR. commitd8e127f9f4Merge:0278151260d58a770201Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Dec 22 15:19:51 2015 +0100 Merge branch '10.1' into bb-10.1-serg commit0278151260Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Dec 22 11:59:15 2015 +0100 fix galera.lp1438990 test binlog_savepoint_rollback() should not try to truncate a binlog unless binlog_savepoint_set has actually remembered the position to truncate to. commit7697bf0bd7Merge:0686c34d22080da551eaAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Dec 22 10:32:33 2015 +0100 Merge branch 'github/10.0-galera' into 10.1 Note: some tests fail, just as they failed before the merge! commit0686c34d22Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Nov 14 22:51:54 2015 +0100 MDEV-8605 MariaDB not use DEFAULT value even when inserted NULL for NOT NULLABLE column NOT NULL constraint must be checked *after* the BEFORE triggers. That is for INSERT and UPDATE statements even NOT NULL fields must be able to store a NULL temporarily at least while BEFORE INSERT/UPDATE triggers are running. commitad5db17e88Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Dec 16 12:12:01 2015 +0100 cleanup * move common code to a new set_bad_null_error() function * move repeated comparison out of the loop * remove unused code * unused method Table_triggers_list::set_table * redundant condition (if (table) after table was dereferenced) * add an assert commitde7636e147Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 21 21:30:15 2015 +0100 32-bit test fixes commitdfb58a3782Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Dec 20 12:33:58 2015 +0100 innodb/xtradb: init scrub mutex even in read-only mode because it's locked for innodb part of SHOW STATUS, which can happen in read-only mode too. commitab64d674e8Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Dec 20 12:31:49 2015 +0100 fix innodb-get-fk test incorrect option name and doing ALTER TABLE under read-only: the test "passed" in 10.0 only because $restart_parameters was first implemented in 10.1 commit752349d8afAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Dec 20 12:27:37 2015 +0100 update disabled.def for connect engine commita2bcee626dMerge:1788bfe93a4fdf25afa8Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 21 21:24:22 2015 +0100 Merge branch '10.0' into 10.1 commitd58a770201Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon Dec 21 16:07:07 2015 +0400 MDEV-7540 Information Schema SPATIAL_REF_SYS contents don't match the expected contents. Table content filled appropriately. Thare are still just two records as we don't have geodetics yet. commit080da551eaAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Dec 21 16:36:26 2015 +0200 MDEV-8869: Potential lock_sys->mutex deadlock In wsrep BF we have already took lock_sys and trx mutex either on wsrep_abort_transaction() or before wsrep_kill_victim(). In replication we could own lock_sys mutex taken in lock_deadlock_check_and_resolve(). commit1788bfe93aMerge:7e8e83029fe57876eacfAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 21 14:36:24 2015 +0100 Merge branch 'connect/10.1' into 10.1 commitafc2fb1bf8Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Fri Dec 18 23:41:08 2015 +0200 MDEV-8627: SHOW GRANTS does not work for a replicated role The bug was caused by accessing uninitialized fields within the LEX related to ssl by mysql_show_grants() -> get_current_user() -> has_auth() function. commitab9a488decAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Dec 20 19:24:03 2015 -0500 MDEV-9141 : [PATCH] Add CA validation to wsrep_sst_xtrabackup-v2.sh - Add CA validation to wsrep_sst_xtrabackup-v2.sh. - Also added a few {} around tpem for consistency. - Abort if encryption is requested but socat is not ssl-enabled. Patch contributed by : Klaas Demter commit8dfd157bb2Merge:dad555a09c3f515a09ffAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Dec 19 19:19:32 2015 -0500 Merge branch '5.5-galera' into 10.0-galera commitdad555a09cMerge:18173ddfc490ea014585Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Dec 19 14:24:38 2015 -0500 Merge tag 'mariadb-10.0.23' into 10.0-galera commit7e8e83029fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Dec 18 13:18:35 2015 +0100 document %M format commit8d34a29663Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Dec 18 08:37:56 2015 +0100 aria_read_log: silence expected safemalloc warnings commit97d2c9bf39Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Dec 17 22:44:11 2015 +0100 MDEV-9214 Server miscalculates the number of XA-capable engines Relax the number-of-XA-engines check on recovery. Allow *more* engines to be present than absolutely necessary, extra engines cannot affect ACID guarantees of the recovery process. As a bonus, 10.0->crash->10.1 upgrade won't complain about wsrep being a new XA storge engine. commit392d557901Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Dec 16 19:33:53 2015 +0100 MDEV-9183 MariaDB 10.1 crash on `mysqld --verbose --help` plugin_init() works like this: 1. init MyISAM 2. load plugins from mysql.plugin, if it's a MyISAM table 3. init all not initialized plugins 4. all done, if step 2 loaded mysql.plugin, otherwise: 5. load plugins from mysql.plugin 6. init all not initialized plugins now, with --help --verbose, step 3 will not actually initialize them, and if mysql.plugin is unreadable, step 6 will try to initialize existing plugins again. Fix: when skipping initialization because of --help, change plugin status from PLUGIN_IS_UNINITIALIZED. commit03245ec02eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Dec 18 08:37:24 2015 +0100 bump the version commit5b94ea71c3Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Dec 18 20:29:17 2015 +0100 MDEV-9044 Binlog corruption in Galera unit test for the IO_CACHE bug commit58b54b7d1aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Dec 7 14:01:52 2015 -0500 MDEV-9044 : Binlog corruption in Galera While refreshing the IO_CACHE, do not update its parameters (read_pos, read_end & pos_in_file) if there is nothing left to read. commit428e09a789Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Dec 18 11:22:58 2015 +0200 Fix buildbot failure seen on p8-rhel71. Currently we support file block sizes 512K-4K. commit206039b8baMerge:69147040a6e4e2d9dd3cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Dec 18 10:11:02 2015 +0200 Merge pull request #135 from grooverdan/crc32_conditional Do not build optimised power crc32 on bigendian commite4e2d9dd3cAuthor: Daniel Black <daniel.black@au.ibm.com> Date: Fri Dec 18 16:48:38 2015 +1100 Do not build optimised power crc32 on bigendian commit69147040a6Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Dec 17 19:45:42 2015 +0200 MDEV-9236: Dramatically overallocation of InnoDB buffer pool leads to crash Part I: Add diagnostics to page allocation if state is not correct but do not assert if it is incorrect. commit670bc0b352Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Dec 17 09:24:54 2015 +0200 Improve validation. If page type is not valid, try to print more information from the page (note that page could be corrupt). commit3f515a09ffAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Dec 16 20:07:12 2015 -0500 MDEV-9290 : InnoDB: Assertion failure in file trx0sys.cc line 353 As a fix for MDEV-8208, for initial wsrep threads, the invocation of init_for_queries() was moved after plugins were initialized. Due to which, OPTION_BEGIN bit of wsrep applier THD (originally set in wsrep_replication_process) got reset due to implicit commit within init_for_queries(). As a result, events from a multi-statement transaction from another node were committed separately by the applier thread, which leads to an assertion as they all carry same seqno. Fixed by making sure that variable.option_bits are restored post init_for_queries(). Also restored server_status. Added a test case. commit953d5680a3Merge:1ac664021060f09cd2b7Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Dec 16 09:34:24 2015 +0200 Merge pull request #133 from grooverdan/power-crc32 MDEV-9288: Use POWER8 accelerated crc32 commit60f09cd2b7Author: Daniel Black <daniel.black@au.ibm.com> Date: Wed Dec 16 11:12:05 2015 +1100 MDEV-9288: portablity for compling on non-power platforms Also removed surperflous stdio include. commit1ac6640210Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Dec 15 20:37:33 2015 +0200 MDEV-9129: Server is restarting in the loop after crash Analysis: We have reserved ROW_MERGE_RESERVE_SIZE ( = 4) for encryption key_version. When calculating is there more space on sort buffer, this value needs to be substracted from current available space. commit477c84d51eAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Dec 15 11:33:41 2015 +0200 Add new sysvar. commit5b5c110666Merge:efeb9057366ddd775314Author: Sergey <svoj@mariadb.org> Date: Tue Dec 15 13:08:30 2015 +0400 Merge pull request #132 from iangilfillan/10.1 10.1 man pages commitefeb905736Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Dec 15 09:46:53 2015 +0200 Rename test files. commit82bec8bfdfAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Dec 15 11:04:51 2015 +0400 MDEV-9265 SuSE patches: Suspicious implicit sign extension commit16f0d996c3Merge:44b107da90804a59e408Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Dec 15 08:53:57 2015 +0200 Merge pull request #125 from grooverdan/MDEV-8923_innodb_buffer_pool_dump_pct MDEV-8923: port innodb_buffer_pool_dump_pct from MySQL WL#6504 InnoDB buffer pool dump/load enchantments This patch consists of two parts: 1. Dump only the hottest N% of the buffer pool(s) 2. Prevent hogging the server duing BP load From MySQL - commit b409342c43ce2edb68807100a77001367c7e6b8e Add testcases for innodb_buffer_pool_dump_pct. Part of the code authored by Daniel Black. commit2538c7cf89Author: Daniel Axtens <dja@axtens.net> Date: Fri Nov 27 15:18:48 2015 +1100 Use POWER8 accelerated crc32 - Make accelerated checksum available to InnoDB and XtraDB. - Fall back to slice-by-eight if not available. The mode used is printed on startup. - Will only build on POWER systems at the moment until CMakeLists are modified to only add the crc32_power8/ files when building on POWER. running MySQL-5.7 unittest/gunit/innodb/ut0crc32-t Before: 1..2 Using software crc32 implementation, CPU is little-endian ok 1 Using software crc32 implementation, CPU is little-endian normal CRC32: real 0.148006 sec normal CRC32: user 0.148000 sec normal CRC32: sys 0.000000 sec big endian CRC32: real 0.144293 sec big endian CRC32: user 0.144000 sec big endian CRC32: sys 0.000000 sec ok 2 After: 1..2 Using POWER8 crc32 implementation, CPU is little-endian ok 1 Using POWER8 crc32 implementation, CPU is little-endian normal CRC32: real 0.008097 sec normal CRC32: user 0.008000 sec normal CRC32: sys 0.000000 sec big endian CRC32: real 0.147043 sec big endian CRC32: user 0.144000 sec big endian CRC32: sys 0.000000 sec ok 2 Author CRC32 ASM code: Anton Blanchard <anton@au.ibm.com> ref: https://github.com/antonblanchard/crc32-vpmsum Signed-off-by: Daniel Black <daniel.black@au.ibm.com> commite57876eacfAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Dec 14 23:49:17 2015 +0100 - Fix MDEV-9279. Replacing exit(1) in yy_fatal_error by a longjmp. modified: storage/connect/fmdlex.c modified: storage/connect/plgdbutl.cpp commit6ddd775314Author: iangilfillan <github@greenman.co.za> Date: Mon Dec 14 23:16:27 2015 +0200 10.1 man pages commit18173ddfc4Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Dec 14 11:33:52 2015 -0500 MDEV-9162 : MariaDB Galera Cluster memory leak on async slave node As galera node (slave) received query log events from an async replication master, it partially wrote the updates made to replication state table (mysql.gtid_slave_pos) to galera transaction writeset post TOI. As a result, the transaction handle, thus created within galera, was never freed/purged as the corresponding trx did not commit. Thus, it kept piling up for every query log event and was only reclaimed upon server shutdown when the transaction map object got destructed. Fixed by making sure that updates in replication slave state table are not written to galera transaction writeset and thus, not replicated to other nodes. commit4437f51682Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Dec 14 10:10:09 2015 +0200 MDEV-8869: Potential lock_sys->mutex deadlock In wsrep brute force (BF) we have already took lock_sys and trx mutex either on wsrep_abort_transaction() or before wsrep_kill_victim(). commit2ce0043bf3Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Dec 13 18:43:37 2015 +0100 - Copy error message from G to g when using temporary storage for parsing. modified: storage/connect/tabjson.cpp commit673cc06598Merge:32393e225332879b9580Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Dec 11 19:19:21 2015 +0100 Merge branch 'ob-10.1' into 10.1 commit32879b9580Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Dec 11 18:43:54 2015 +0100 Update version number commitca07ee85eaMerge:278ff1661ad67aacb4fbAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Dec 10 13:00:08 2015 -0500 Merge tag 'mariadb-5.5.47' into 5.5-galera commit44b107da90Author: Monty <monty@mariadb.org> Date: Thu Dec 10 12:39:54 2015 +0200 Fixed a bug in galera + some failing galera tests - Added missning setting of table->rpl_write_set in record_gtid(), required by galera - Removed output of WSREP_PATCH_VERSION from galera_defaults, as this can change over time - Limit galera_many_tables_pk and galera_many_tables_nopk to 900, as on many systems the default open table limit is 1024 commit33f0cf7119Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Dec 9 12:24:53 2015 -0500 MDEV-9227 : Both CentOS service names mysql and mariadb exist? As 10.1 has systemd support, there is no longer need to set _SYSTEMCTL_SKIP_REDIRECT/SYSTEMD_NO_WRAP. commit218da97d5dAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Nov 27 13:58:30 2015 +0400 MDEV-9172 - Analyze patches for IBM System z Extended my_timer_cycles() to support s390. Some compiler tunings for RHEL/SLES RPM packages on s390. commit32393e2253Merge:ad916ef33ca18a3fbdd1Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Dec 9 00:02:04 2015 +0100 Merge branch 'ob-10.1' into 10.1 commita18a3fbdd1Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Dec 9 00:00:08 2015 +0100 - Serialize: Protect again eventual longjmp's. Always return NULL on error. Adding also the file length. modified: storage/connect/json.cpp modified: storage/connect/jsonudf.cpp - JSONCOL::WriteColumn Add types SHORT and BIGINT as accepted modified: storage/connect/tabjson.cpp - TDBJSN: Make this type use a separate storage for Json parsing and retrieve this memory between each rows. This is necessary to be able to handle big tables. See MDEV-9228. modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h commit1ad5a8dfb7Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Dec 5 20:51:40 2015 +0100 Fix memory error when a plain string argument is parsed. Parsing memory, not added in CalcLen, is added in CheckMemory. Adding also the file length. modified: storage/connect/jsonudf.cpp commit0ec89291f1Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Dec 4 01:02:27 2015 +0100 Remove warning on Linux modified: storage/connect/filamzip.cpp Avoid calling the wrong AddValue (Windows compiler error ???) modified: storage/connect/json.h Fix looping bug in JARRAY::AddValue for arrays having one value. Fix potential crash in JVALUE::SetValue modified: storage/connect/json.cpp Many changes to fix bugs, enhance memory handling and modify Jpath. In JSNX some functions have been re-written or added to handle new Jpath. BMX was re-defined to avoid a different size between Windows an Linux. Jbin memory was fixed to use the proper memory when adding values. Default pretty value is now 0 instead of 2. Filename is stored in BSON when IsJson == 2. BSON size is added to memlen in CalcLen when applicable. The order or parameter was switch in Json_Object_Grp. File name argument must be a constant (temporary?) Json_Set_Item now returns file name when applicable. modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h Include "mycat.h" modified: storage/connect/mycat.cc Udf_json test revisited and fixed for Linux modified: storage/connect/mysql-test/connect/r/json_udf.result modified: storage/connect/mysql-test/connect/t/json_udf.inc modified: storage/connect/mysql-test/connect/t/json_udf.test modified: storage/connect/mysql-test/connect/t/json_udf2.inc commitf3e5329846Author: Christian Loos <cloos@netcologne.de> Date: Thu Dec 3 13:31:33 2015 +0100 switch from myisam_recover to myisam_recover_options myisam_recover is only an alias for myisam_recover_options. Use the option name instead of the alias is more correct. This also avoids an note about the use of an alias instead of the option name on every server start. commit089a586b43Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Dec 2 18:33:54 2015 +0100 Windows : Fix crash with "uninitialized variable keyname used" by C runtime debug check. commit804a59e408Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Sun Nov 29 18:10:58 2015 +1100 MDEV-8923: innodb_buffer_pool_dump_pct add test cases Add testcases for innodb_buffer_pool_dump_pct commita816df7009Author: Vasil Dimov <vasil.dimov@oracle.com> Date: Sun Nov 29 18:08:42 2015 +1100 MDEV-8923 Port innodb_buffer_pool_dump_pct WL#6504 InnoDB buffer pool dump/load enchantments This patch consists of two parts: 1. Dump only the hottest N% of the buffer pool(s) 2. Prevent hogging the server duing BP load From MySQL - commit b409342c43ce2edb68807100a77001367c7e6b8e commit3c0e9d31b3Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Nov 25 15:50:19 2015 +0300 Fix a typo (this is not a user-visible bug as currently there are no engines that don't support HA_READ_PREV) commitb88c67d5f2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Nov 24 14:24:23 2015 -0500 Update galera suite global_suppressions. commit310c718cffAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Nov 24 22:47:42 2015 +0400 MDEV-9178 Wrong result for CAST(CONVERT('1IJ3' USING ucs2) AS SIGNED) Also, fixing compilation warnings in ctype-mb.ic (Windows). commit2f8c84fd16Author: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Nov 24 14:16:48 2015 +0100 MDEV-7588 Add thd_wait_begin/thd_wait_end to wait_for_binlog_endpos commit73fc19bbcdAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Nov 24 14:11:16 2015 +0100 Fix warning about unused variable if FD_CLOEXEC is not defined commit22b594267cAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Nov 23 16:23:10 2015 -0500 MDEV-9033: Incorrect statements binlogged on slave with do_domain_ids=(...) Post-fix: The test case pushed with the fix had each node acting as slave to the other two nodes with different set of filters on server_id's. The slave's gtid_slave_pos is updated after it processes the events received from master nodes irrespective of whether the events were filtered or not. Thus, sync_with_master_gtid.inc could unblock even on filtered events. As a result, sync_with_master_gtid.inc would fail to block until the desired changes have been replicated. Fixed by simplifying the topology. Also, modified CHANGE MASTER commands to ignore based on gtid_domain_id instead of server_id. commitedf6354bd6Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Nov 18 15:51:20 2015 +0400 MDEV-9128 - Compiling on IBM System Z fails Provided IBM System Z have outdated compiler version, which supports gcc sync builtins but not gcc atomic builtins. It also has weak memory model. InnoDB attempted to verify if __sync_lock_test_and_set() is available by checking IB_STRONG_MEMORY_MODEL. This macro has nothing to do with availability of __sync_lock_test_and_set(), the right one is HAVE_ATOMIC_BUILTINS. commitf00d7657f8Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Nov 17 13:13:47 2015 +0400 MDEV-7806 - thread_pool_size is not auto-sized thread_pool_size is auto-sized before my_getopt(). But my_getopt starts from resetting all options to their default values. So the auto-sized value is lost. Fixed by moving thread_pool_size auto-sizing after my_getopt(). commit8a860fda0cAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Nov 22 16:15:57 2015 +0100 Remove commented lines. modified: storage/connect/value.cpp Avoid warning on redefined XSTR modified: storage/connect/tabxml.cpp commit1d239d8c94Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Nov 22 14:49:51 2015 +0100 Make changes required by version 10.1.9 (see Sergei's mmail): Use PlgDBSuballoc in JbinAlloc to avoid unsupported longjmp's. modified: storage/connect/ha_connect.cc modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h modified: storage/connect/mysql-test/connect/r/json_udf.result modified: storage/connect/mysql-test/connect/t/json_udf.inc modified: storage/connect/tabjson.cpp modified: storage/connect/value.cpp Add new UDF functions jsoncontains, jsoncontains_path, json_set_item, json_insert_item, json_update_item, jbin_set_item, jbin_insert_item, jbin_update_item modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h commit370a2cbe96Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Nov 20 19:49:16 2015 -0500 Fix syntax error in wsrep_sst_common.sh. commit4d1a4bc3e5Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Nov 20 12:35:28 2015 -0500 Increase default MTR_PORT_GROUP_SIZE to 20. Some Galera tests can require more than 10 ports. commit75afa93eb1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Nov 20 12:32:31 2015 -0500 Fix galera.galera_as_slave_nonprim test. commit0d8eb20cb0Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Nov 20 12:31:22 2015 -0500 Remove duplicate code. commit2fc3dc393dMerge:e52c753ab91e156e1436Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 20 09:31:13 2015 +0100 Merge branch '10.1' into bb-10.1-serg commite52c753ab9Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 20 09:15:30 2015 +0100 cleanup commitdf25018c2aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Nov 19 12:52:55 2015 -0500 MDEV-6264: CentOS missing lsof as dependency for MariaDB-server (10.1) wsrep.cmake should be included before cpack_rpm.cmake as it defines WITH_WSREP, required by cpack_rpm.cmake to conditionally include galera helper tools in server package's requires list. commit87c306802bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 19 21:20:14 2015 +0100 update test results commit1e156e1436Author: Monty <monty@mariadb.org> Date: Fri Nov 20 10:00:06 2015 +0200 Fixed compile warnings on Solaris commit981b474753Author: Monty <monty@mariadb.org> Date: Fri Nov 20 09:57:58 2015 +0200 Updated configure.pl to new plugin syntax --with-plugin-name=xxxx --with-plugins= now uses =AUTO instead of =1 commitfdba672b6fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 19 18:13:01 2015 +0100 Post-merge fixes for Connect engine 1. define connect_EXPORTS, this causes the engine to use MariaDB versions for timestamp<->struct tm conversion instead of TZ-dependent libc versions. 2. remove check_access() that was removed once, but re-appeared during a complex merge. 3. disable a totally broken test 4. update test results 5. skip odbc_firebird test when no firebird DSN is available commite3d37bfebfMerge:7f19330c59ad916ef33cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 19 18:09:06 2015 +0100 Merge branch 'connect/10.1' into 10.1 commit7f19330c59Merge:4046ed12bcf4421c893bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 19 17:48:36 2015 +0100 Merge branch 'github/10.0-galera' into 10.1 commit4046ed12bcAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 19 17:04:19 2015 +0100 rbr and savepoint in a subtatement Apply MySQL fix for bug#76727: https://github.com/mysql/mysql-server/commit/69d4e72c Bug#20901025: SLAVE ASSERTION IN UNPACK_ROW WITH ROLLBACK TO SAVEPOINT IN ERROR HANDLER commit33ab30dfe2Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 19 16:39:40 2015 +0100 fix tokudb compilation with bundled zlib commitd4017d498fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 17 13:39:04 2015 +0100 fix for windows builders commitc99fba2678Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Nov 16 22:13:28 2015 +0100 compilation warning commitbeded7d9c9Merge:af71da5d2f2553f143fdAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 19 15:52:14 2015 +0100 Merge branch '10.0' into 10.1 commitaf71da5d2fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 19 14:01:16 2015 +0100 remove duplicated like commitf47124c9efAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Nov 18 02:11:20 2015 -0500 Incorrect statements binlogged on slave with do_domain_ids=(...) In domain ID based filtering, a flag is used to filter-out the events that belong to a particular domain. This flag gets set when IO thread receives a GTID_EVENT for the domain on filter list and its reset at the last event in the GTID group. The resetting, however, was wrongly done before the decision to write/filter the event from relay log is made. As a result, the last event in the group will always pass through the filter. Fixed by deferring the reset logic. Also added a test case. commit836275bb20Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Nov 17 00:42:18 2015 +0400 MDEV-4829 BEFORE INSERT triggers dont issue 1406 error. Turn the 'abort_on_warning' on for assigning value to fields. commit905613f825Author: Monty <monty@mariadb.org> Date: Tue Nov 17 18:19:59 2015 +0200 Fixed wrong tests found by buildbot commit19d99faf1eAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Mon Nov 16 15:41:09 2015 +0100 MDEV-8734 mysqlbinlog --start-position isn't bigint fix it only for local operations. commitc0216f1d02Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Nov 17 09:45:55 2015 +0200 MDEV-9099: Test encryption.innodb_encryption_discard_import fails on buildbot commitf4421c893bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Nov 16 12:39:56 2015 -0500 Fix for some failing tests. commitc78fc8b1eaAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Nov 16 12:35:06 2015 -0500 MTR: rsync process is left running if pid file is removed MTR drops the datadir in the event of a test failure. In case mysqld is running as a Galera node and a failure occurs while the SST is in progress, the rsync pid file gets removed as part of the cleanup and wsrep_sst_rsync, which relies on this file, fails to kill the rsync. Fixed by using the cached $RSYNC_REAL_PID to kill rsync daemon. commit3228ad33f0Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 13 19:21:45 2015 +0100 MDEV-8973 Build failure on missing alloca.h in *BSD family alloca() is in stdlib.h commit0c5f36d579Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 13 18:41:11 2015 +0100 MDEV-8969 groonga is compiled even with -DPLUGIN_MROONGA=NO first add mroonga plugin (MYSQL_ADD_PLUGIN) then add dependent targets (add_subdirectory(groonga)) commit12c32bd989Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 13 18:41:58 2015 +0100 MDEV-8962 TokuDB tries to build on OS X, even when disabled in compile flag first add tokudb plugin (MYSQL_ADD_PLUGIN) then add dependent targets (ADD_SUBDIRECTORY(ft-index)) commit296338147cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 13 17:53:16 2015 +0100 MDEV-8453 Alter table not returning engine errors remove ~15 years old print_lock_error() function, use handler::print_error() instead commitdaf3551cceAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Nov 11 15:48:08 2015 +0100 add missing DBUG_RETURN-s commit2e0ac16827Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 10 17:01:14 2015 +0100 remove obsolete workaround The workaround is not needed anymore - mariadb requires bison 2.x. And removing all __attribute__ in sql_yacc.yy breaks new DBUG_ENTER. commitda957310d0Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 10 16:57:44 2015 +0100 compiler warning (no return in non-void function) commit29dd634a4cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 10 16:57:15 2015 +0100 dbug: correct trace for DBUG_RETURN(func()); -- gcc only when func1 calls func2 from DBUG_RETURN, dbug shows the trace as | > func1 | < func1 | > func2 | < func2 because DBUG_LEAVE happens before func2(). Change that to invoke DBUG_LEAVE when the local variable goes out of scope. This uses gcc specific __attribute__((cleanup)). commit8f60656fd5Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 6 16:43:40 2015 +0100 MDEV-9039 Can't upgrade MariaDB to to 10.1.8 version from 10.0.21 Don't mark the SEQUENCE engine as XA-capable. The engine never registers itself for any transaction, so it doesn't matter whether it is XA-capable or not. The only effect of being "XA-capable" is breaking the "number of XA-capable engines" check of TC_LOG_MMAP. commita716433da3Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 3 20:59:36 2015 +0100 MDEV-7298 plugins.cracklib_password_check test fails remove the test that depended on the current cracklib dictionary commit4165961d54Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Oct 16 01:07:06 2015 +0200 disable innodb on sol10-64 because buildbot config invokes BUILD/compile-solaris-amd64 with the --extra-args=--without-plugin-innodb argument, but BUILD/compile-solaris-amd64 doesn't take arguments and doesn't invoke configure.pl, so this extra-args is lost. commitdcb7996cb7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Nov 15 17:24:47 2015 -0500 Fix/disable failing tests. commit0dfa0eef59Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Sun Nov 15 10:44:20 2015 +0100 MDEV-8957 [PATCH] Useless ssl_ctx_set_tmp_dh call in libmysql Accepted patch of Georg: do not setup Differ-Hellman parameters on client. commitd85490afabMerge:1774230c24e46c8bbf62Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Sat Nov 14 10:19:53 2015 +0100 Merge branch 'bb-10.1-knielsen' into 10.1 commit1774230c24Author: Monty <monty@mariadb.org> Date: Fri Nov 13 19:47:31 2015 +0200 Fixed regexp to fix buildbot failures commite46c8bbf62Merge:8f2e05f41cd5d87c98c0Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Nov 13 15:32:55 2015 +0100 Merge branch 'mdev7818-4' into bb-10.1-knielsen Conflicts: sql/sql_parse.cc commit8f2e05f41cMerge:2828c2be55ba02550166Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Nov 13 14:24:40 2015 +0100 Merge branch 'mdev7818-4' into 10.1 Conflicts: mysql-test/suite/perfschema/r/stage_mdl_global.result sql/rpl_rli.cc sql/sql_parse.cc commit1e63a81a3bAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Fri Nov 13 15:07:45 2015 +0200 Follow-up for a change MDEV-9040: fixed the 32-bit rdiff commit2828c2be55Author: Elena Stepanova <elenst@montyprogram.com> Date: Fri Nov 13 03:23:22 2015 +0200 MDEV-9124 mysqldump does not dump data if table name is same as view earlier on While querying INFORMATION SCHEMA, check for a table's engine only used table name, but not schema name; so, if there were different rows with the same table name, a wrong one could be retrieved. The result of the check affected the decision whether the contents of the table should be dumped, and whether a DELAYED option can be used. Fixed by adding a clause for table_schema to the query. commita430df3abaAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Tue Nov 10 17:47:39 2015 +0100 Fix compile error on Windows Using __attribute__ needs my_attribute.h include commit3f24cf2dbdAuthor: Monty <monty@mariadb.org> Date: Tue Nov 10 13:47:28 2015 +0200 Don't delete non existing .TMD and .OLD files for Aria internal temporary tables (Simple speedup) commit65151e0cd1Author: Monty <monty@mariadb.org> Date: Tue Nov 10 13:42:35 2015 +0200 Change stage_copying_to_tmp_table to stage_creating_tmp_table like in MySQL. (We where using stage_copying_to_tmp_table twice) commit2f63e2e2a0Author: Monty <monty@mariadb.org> Date: Tue Nov 10 13:40:15 2015 +0200 MDEV-8426 mysqlbinlog: "Corrupted replication event was detected. Not printing the value" with binlog-row-image=minimal" Merged Rows_log_event::print_verbose_one_row() and log_event_print_value() with MySQL 5.7 Added flush after writing of Table_map_log_event() to fix wrong order of lines in output. This causes a lot of changes in some test results. commit78771189e7Author: Monty <monty@mariadb.org> Date: Mon Nov 9 15:07:13 2015 +0200 Ignore MySQL 5.7 log events not relevant for MariaDB - XA - Transaction_context_event (used by MysQL group replication) - View change event (used by MysQL group replication) commit78ffeaa988Author: Monty <monty@mariadb.org> Date: Fri Nov 6 14:42:43 2015 +0200 Fix that one can run rpl_binlog_errors with --debug commit05ed9fec03Author: Monty <monty@mariadb.org> Date: Fri Nov 6 13:18:40 2015 +0200 Use MEM_CHECK_DEFINED to check if blocks contain uninitialized data Fixed failure in tests when running optimized code - Some assert() was using code that had to be executed Fixed copying of some uninitialized data (fixed valgrind warning) commite3868ee072Author: Monty <monty@mariadb.org> Date: Fri Nov 6 13:02:19 2015 +0200 Don't store vcol bitmaps in TABLE if table doesn't have virtual fields. (Makes TABLE a bit smaller) commit93d1e5ce0bAuthor: Monty <monty@mariadb.org> Date: Thu Nov 5 22:09:58 2015 +0200 table->write_set was changed if binary logging was used, which caused the changes in query execution plans. Fixed by introducing table->rpl_write_set which holds which columns should be stored in the binary log. Other things: - Removed some not needed references to read_set and write_set to make code really changing read_set and write_set easier to read (in opt_range.cc) - Added error handling of failed unpack_current_row() - Added missing call to mark_columns_needed_for_insert() for DELAYED INSERT - Removed not used functions in_read_set() and in_write_set() - In rpl_record.cc, removed not used variable error commitcb4737cb4eAuthor: Monty <monty@mariadb.org> Date: Mon Nov 2 10:35:59 2015 +0200 Fixed compiler warning commit7cd2095cdeAuthor: Monty <monty@mariadb.org> Date: Fri Oct 23 18:44:13 2015 +0300 Sage cleanup in heap storage engine Removed old not needed code withing #if Changed 0x%lx to %p commit7ec6558503Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Nov 6 14:38:03 2015 -0500 MDEV-9021: MYSQLD SEGFAULTS WHEN BUILT USING --WITH-MAX-INDEXES=128 The bitmap implementation defines two template Bitmap classes. One optimized for 64-bit (default) wide bitmaps while the other is used for all other widths. In order to optimize the computations, Bitmap<64> class has defined its own member functions for bitmap operations, the other one, however, relies on mysys' bitmap implementation (mysys/my_bitmap.c). Issue 1: In case of non 64-bit Bitmap class, intersect() wrongly reset the received bitmap while initialising a new local bitmap structure (bitmap_init() clears the bitmap buffer) thus, the received bitmap was getting cleared. Fixed by initializing the local bitmap structure by using a temporary buffer and later copying the received bitmap to the initialised bitmap structure. Issue 2: The non 64-bit Bitmap class had the Iterator missing which caused compilation failure. Also added a cmake variable to hold the MAX_INDEXES value when supplied from the command prompt. (eg. cmake .. -DMAX_INDEXES=128U). Checks have been put in place to trigger build failure if MAX_INDEXES value is greater than 128. Test modifications: * Introduced include/have_max_indexes_[64|128].inc to facilitate skipping of tests for which the output differs with different MAX_INDEXES. * Introduced include/max_indexes.inc which would get modified by cmake to reflect the MAX_INDEXES value used to build the server. This file simply sets an mtr variable '$max_indexes' to show the MAX_INDEXES value, which will then be consumed by the above introduced include file. * Some tests (portions), dependent on MAX_INDEXES value, have been moved to separate test files. commitad916ef33cMerge:e7fa7e08580a852591dbAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Nov 8 14:56:48 2015 +0100 Merge branch 'ob-10.1' into 10.1 commit0a852591dbAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Nov 8 14:54:56 2015 +0100 PATCH-P0-FIX-UPSTREAM: Fix possible buffer overflow (MDEV-8317) Maintainer: Michal Hrusecky <Michal.Hrusecky@opensuse.org> (modified by O. Bertrand --> adding and using the XSTR macro) modified: storage/connect/tabxml.cpp commitd6b430c91bAuthor: Daniel Black <grooverdan@users.sourceforge.net> Date: Sat Nov 7 13:40:44 2015 +1100 MDEV-8995: systemd - 16K open-files-limit by default commit99283ba455Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Nov 6 20:02:45 2015 -0500 MDEV-8974: boostrap systemd service for galera is confusing Fix the conditions for systemd scripts with '@' in path. commit125cf485b1Author: Elena Stepanova <elenst@montyprogram.com> Date: Fri Nov 6 17:52:57 2015 +0200 Fixed engine test results in accordance with changes made in scope of commit6b20342651commit4e421687c2Merge:b80cc31ab40b8144a472Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Nov 6 16:35:00 2015 +0300 Merge pull request #112 from openquery/MDEV-8981 MDEV-8981: Analyze stmt - cycles can overflow commitb80cc31ab4Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Nov 5 13:57:24 2015 +0400 MDEV-9082 - Debian: mysql_install_db is called on upgrade A comment in debian/mariadb-server-10.1.postinst says: "can safely run on upgrades with existing databases". While this is true there're a few reasons not to do that: - it increases installation time (it has to run rather heavy mysqld multiple times) - as well as it increases mysqld downtime - it may fail if database has some plugin specific configs (see MDEV-8437) - there should be no need to run this script on upgrade: they should be handled by mysql_upgrade to - RPM postin doesn't call it if database directory exists Also postinst is not supposed to create database directories: let mysql_install_db do that intead. commit7f5e005d16Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Nov 4 20:13:15 2015 +0400 MDEV-9080 - Debian: incorrect empty password check in postinst There was code that was supposed to "catch upgrades from previous versions where the root password wasn't set". But it is wrong in many regards: - it is supposed to be executed against running server, but at this point server should be down, which makes this code no-op - if the above is fixed, root password will be requested twice (initial root password request + this one) - it asks for a password only once, while "initial root password request" asks twice (password + password verification) - it may give false positive if unix socket based authentication is in effect Removed this code since it didn't work for quite a while (at least since mysql-5.1) and nobody cared about it. commit60ad339840Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Nov 3 14:02:49 2015 +0400 MDEV-8437 - plugin variables conflict with bootstrap There is no strong need to change password column: the only side effect is that 4.0 -> 10.1 upgrades may get root/debian-sys-maint passwords stored in old format. This should be perfectly acceptable, since all password at this point are stored in old format. commit8e40f9b713Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Nov 3 12:08:23 2015 +0400 MDEV-8437 - plugin variables conflict with bootstrap Removed redundant attempt to create mysql.plugin table: - original code was supposed to INSTALL some plugins: INSERT INTO plugin VALUES ('innodb', 'ha_innodb.so'), ('federated', 'ha_federated.so'), ('blackhole', 'ha_blackhole.so'), ('archive', 'ha_archive.so'); - original code was supposed to fail if mysql.plugin exists: The query sequence is supposed to be aborted if the CREATE TABLE fails due to an already existent table in which case the admin might already have chosen to remove one or more plugins. - mysql.plugin must've been created by preceeding mysql_install_db anyway commit5079d69d48Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Nov 5 21:52:19 2015 -0500 MDEV-8975: 10.1 Fails To Join Existing Galera Cluster During the process of guessing the IP address, if bind-address is INADDR_ANY, mysqld should proceed with address specified via wsrep_node_address or use one from network interfaces. Patch contributed by darkain (pull#115). commit25f8738112Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Nov 5 09:42:23 2015 +0200 MDEV-9040: 10.1.8 fails after upgrade from 10.0.21 Analysis: Lengths which are not UNIV_SQL_NULL, but bigger than the following number indicate that a field contains a reference to an externally stored part of the field in the tablespace. The length field then contains the sum of the following flag and the locally stored len. This was incorrectly set to define UNIV_EXTERN_STORAGE_FIELD (UNIV_SQL_NULL - UNIV_PAGE_SIZE_MAX) When it should be define UNIV_EXTERN_STORAGE_FIELD (UNIV_SQL_NULL - UNIV_PAGE_SIZE_DEF) Additionally, we need to disable support for > 16K page size for row compressed tables because a compressed page directory entry reserves 14 bits for the start offset and 2 bits for flags. This limits the uncompressed page size to 16k. To support larger pages page directory entry needs to be larger. commite947a52697Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Nov 4 21:58:07 2015 -0500 Update global_suppressions. commit2399f1aee7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Nov 4 21:56:46 2015 -0500 Fix for build failure. commitf9e320c82dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Nov 4 15:00:34 2015 -0500 MDEV-9026: Revert patch for MDEV-6069 Post-fix: Reverting the patch for MDEV-6069 brought some ALTERs with ENGINE=MYISAM back into the mysql_system_tables_fix.sql script. As a result, running mysql_upgrade with global enforce_storage_engine=INNODB (or any other non-MyISAM engine, for that matter) would fail. Fixed by locally unsetting enforce_storage_engine in the upgrade script. commit1216429cfdAuthor: Vladislav Vaintroub <wlad@mariadb.com> Date: Wed Nov 4 13:17:40 2015 +0100 MDEV-8738 Application Verifier stop during server shutdown The verifier exception is caused by using thread local storage key after key was deleted. my_free() used current_thd within malloc size callback, which does pthread_get_specific(THR_THD), but THR_THD is already deleted at this point. The fix moves pthread_key_delete() to a later point in shutdown. commit95289e5b66Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Nov 3 11:55:30 2015 -0500 Revert "MDEV-6069: Remove old logic for 3.23-to-higher upgrades from upgrade SQL scripts" This reverts commit5e6f12366a. commitd68b083672Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Nov 3 11:54:37 2015 -0500 Revert "MDEV-6069: Remove old logic for 3.23-to-higher upgrades from upgrade SQL scripts" This reverts commitf8381d9382. commit6189951003Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Nov 3 16:03:25 2015 +0200 MDEV-9063: encryption.innodb-log-encrypt produces warnings in error logs on builds with bundled SSL Test used aes_ctr that is not available everywhere when aes_cbc is fine also for this test. commita574407444Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Nov 2 23:19:37 2015 -0500 MDEV-9007: Bootstrap does not work in CentOS start script Some modifications in galera_new_cluster : * Do not use absolute path for systemctl * Fix parameter substitution syntax commitd8ecc2a011Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Sun Oct 25 11:22:12 2015 +1100 MDEV-9007: systemd - service mariadb bootstrap Now this error out and refers to galera_new_cluster. commita2c3549404Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Thu Oct 15 15:38:45 2015 +0200 MDEV-427: systemd - use galera_new_cluster instead of bootstrap Use galera_new_cluster instead. systemctl start mariadb@bootstrap will generate error message, use_galera_new_cluster.conf is the name of the file that will generate this error. Output: Job for mariadb@bootstrap.service failed. See "systemctl status mariadb@bootstrap.service" and "journalctl -xe" for details. ● mariadb@bootstrap.service - MariaDB database server Loaded: loaded (/usr/lib/systemd/system/mariadb@.service; disabled; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/mariadb@bootstrap.service.d └─use_galera_new_cluster.conf Active: failed (Result: exit-code) since Thu 2015-10-15 19:27:52 CEST; 5s ago Process: 24334 ExecStart=/usr/bin/false (code=exited, status=1/FAILURE) Process: 24330 ExecStart=/usr/bin/echo Please use galera_new_cluster to start the mariadb service with --wsrep-new-cluster (code=exited, status=0/SUCCESS) Main PID: 24334 (code=exited, status=1/FAILURE) Oct 15 19:27:52 spaceman systemd[1]: Starting MariaDB database server... Oct 15 19:27:52 spaceman systemd[1]: mariadb@bootstrap.service: main process exited, code=exited, status=1/FAILURE Oct 15 19:27:52 spaceman systemd[1]: Failed to start MariaDB database server. Oct 15 19:27:52 spaceman systemd[1]: Unit mariadb@bootstrap.service entered failed state. Oct 15 19:27:52 spaceman systemd[1]: mariadb@bootstrap.service failed. commit7877438f31Author: Elena Stepanova <elenst@montyprogram.com> Date: Tue Nov 3 03:25:38 2015 +0200 Increased the version number commit641644a862Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Sun Nov 1 20:37:23 2015 +0400 MDEV-8992 MariaDB crashes when accessing table with GIS features. we don't test for not-existing gis extra in FRM. commit4d15112962Merge:17b0b45b1dd775ecdd01Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Oct 31 18:07:02 2015 -0400 Merge tag 'mariadb-10.0.22' into 10.0-galera commit3e043b30acAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Oct 30 12:10:54 2015 -0400 MDEV-8991: bind-address appears twice in default my.cnf Add comment about bind-address mentioned under galera section. commit81d35841bdAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Oct 30 13:12:30 2015 +0200 MDEV-9011: Redo log encryption does not work Redo log encryption used too short buffer when getting encryption keys. commit3e98383787Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Oct 30 08:37:40 2015 +0200 Fix test failures seen on buildbot. commit923827e2ccAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Sun May 17 15:10:45 2015 +0200 MDEV-7949: Item_field::used_tables() takes 0.29% in OLTP RO Part 2: removed hack workaround for bug we do not have. commitfb4358f432Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed May 13 16:17:22 2015 +0200 MDEV-7949: Item_field::used_tables() takes 0.29% in OLTP RO small sixes of used_tables() usage commit937aa7ad77Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Oct 29 09:58:11 2015 +0100 MDEV-9010 Encryption preset file contains different configuration preset then documentation * clarify the comment in the preset file * make boolean --aria-encrypt-tables option to work without an argument commit239e0c571eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Oct 29 10:11:07 2015 +0100 MDEV-8551 compilation fails with 10.1.6 Restore changes that were lost in a merge. Originally from commit66fd45aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 8 21:06:56 2015 +0200 MDEV-7398 mysqld segfaults on FreeBSD 10.1 i386 when built with clang 3.4 commit9164a24311Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Oct 29 10:35:37 2015 +0200 Test debug_key_management fails sporadically in buildbot. Problem is that we expect key_version to be increasing so before we reset debug_key_management plugin key_version disable encryption. commit0fe5eb5caeAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Oct 29 08:21:28 2015 +0200 MDEV-9032: MariaDB 10.1.8 crashes at startup Add diagnostics when externally stored field is freed but rollback ctx is not what we expect. commit1108c1ca5cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Oct 28 14:30:30 2015 +0200 MDEV-8950: encryption.innodb_encryption_discard_import fails sporadically in buildbot At least some of the failures where due to fact that TMPDIR contained old file. commitf2ab9abbd6Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Oct 28 09:14:22 2015 +0200 MDEV-9000: storage/xtradb/fil/fil0pagecompress.cc fails to compile on i686-linux Incorrect parameter type was used. Fixed by casting data types to correct ones. commite7fa7e0858Merge:de19721296abe87bb011Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Oct 25 21:19:45 2015 +0100 Fix error and warnings raised by gcc on Linux: Define O_RDONLY in jsonudf.cpp Correct wrong deinit function names Make Locate functions use the variable more Avoid signed/unsigned warning in ha_connect.cc GetIntegerTableOption Initialize oom in tabodbc MakeInsert modified: storage/connect/ha_connect.cc modified: storage/connect/jsonudf.cpp modified: storage/connect/tabodbc.cpp commitabe87bb011Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Oct 25 21:11:04 2015 +0100 Fix error and warnings raised by gcc on Linux: Define O_RDONLY in jsonudf.cpp Correct wrong deinit function names Make Locate functions use the variable more Avoid signed/unsigned warning in ha_connect.cc GetIntegerTableOption Initialize oom in tabodbc MakeInsert modified: storage/connect/ha_connect.cc modified: storage/connect/jsonudf.cpp modified: storage/connect/tabodbc.cpp commitde19721296Author: Buggynours <bertrandop@gmail.com> Date: Sun Oct 25 17:46:20 2015 +0100 Fix of error and warnings when compiling on linux modifié : storage/connect/ha_connect.cc modifié : storage/connect/jsonudf.cpp nouveau fichier : storage/connect/mysql-test/connect/r/odbc_firebird.result modifié : storage/connect/mysql-test/connect/t/json.test nouveau fichier : storage/connect/mysql-test/connect/t/odbc_firebird.test modifié : storage/connect/tabodbc.cpp supprimé : storage/connect/Makefile commit0b8144a472Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Fri Oct 23 23:23:36 2015 +1100 MDEV-8981: Analyze stmt - cycles can overflow A 64bit counter can overflow within the time of a query so lets take it that the measurement is the small value rather than an order 1e12 millisecond query. tested with: int main() { ulonglong start = ULONGLONG_MAX - 30; ulonglong end = 600; ulonglong cycles = 10000; cycles += end - start; if (unlikely(end < start)) cycles += ULONGLONG_MAX; printf("cycles %llu\n", cycles); } commit8a09280dc1Author: Michael Widenius <monty@mariadb.org> Date: Thu Oct 22 17:01:46 2015 +0300 Removed not needed note when doing mysqld --version commitc3ebd7867dAuthor: Michael Widenius <monty@mariadb.org> Date: Thu Oct 22 17:00:58 2015 +0300 Remove THD argment from Log_event->net_send() and Protocol::pack_info() as THD is already available in Protocol commit0bf2b1c13aAuthor: Michael Widenius <monty@mariadb.org> Date: Mon Oct 12 12:53:03 2015 +0300 Ignore tokudb tool commite498d32625Author: Alexander Barkov <bar@mariadb.org> Date: Thu Oct 22 09:11:23 2015 +0400 Adding "const" qualifier to arguments of date2my_decimal() and ErrConvString::ErrConvString(String *). commitbdc03e0579Author: Alexander Barkov <bar@mariadb.org> Date: Thu Oct 22 08:11:31 2015 +0400 MDEV-7195 AVG() loses precision in INT context The fix for MDEV-8918 previously fixed the problem reported in MDEV-7195. Adding a test case from MDEV-7195 only. commit1816eca57cAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Oct 21 19:26:35 2015 +0200 Fix MDEV-8882 modified: storage/connect/tabodbc.cpp commit17b0b45b1dAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Oct 21 09:20:54 2015 +0300 Code cleanup. commit2445b1b212Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Oct 20 18:49:33 2015 +0200 Typo commitf3e362464bAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Oct 20 13:41:14 2015 +0300 MDEV-8869: Potential lock_sys->mutex deadlock Analysis: We are alreading holing lock_sys mutex when we call thd::awake. This could lead mutex deadlock if trx->current_lock_mutex_owner is not correctly set. Fix: Make sure that trx->current_lock_mutex_owner is correctly set. commit76701c6d34Merge:3ec139a4af52a910395aAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 19 14:17:36 2015 +0300 Merge pull request #105 from philip-galera/10.0-galera-mysql-wsrep-gh202 refs codership/mysql-wsrep#202 Fix bad cherry-pick (and the compiler warnings it generated) commit52a910395aAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Oct 19 04:14:51 2015 -0700 refs codership/mysql-wsrep#202 Fix bad cherry-pick (and the compiler warnings it generated) commit3ec139a4afMerge:4d33f9dca043b2a451feAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 19 12:05:25 2015 +0300 Merge pull request #104 from philip-galera/10.0-galera-mysql-wsrep-gh202 Refs codership/mysql-wsrep#202 Added schema info into wsrep messages commit43b2a451feAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Oct 19 01:56:04 2015 -0700 refs codership/mysql-wsrep#202 Added schema info into wsrep messages Added schema info to wsrep messages above debug level. commit7cd9af694fAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Oct 18 15:55:32 2015 +0200 Fix MDEV-8926 modified: storage/connect/ha_connect.cc modified: storage/connect/mysql-test/connect/r/datest.result modified: storage/connect/mysql-test/connect/t/datest.test commit100be0b6eeAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Oct 17 17:23:11 2015 +0200 Update JSON UDFs to version 1.04.0004 modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/mysql-test/connect/r/json_udf.result modified: storage/connect/mysql-test/connect/std_data/biblio.json modified: storage/connect/mysql-test/connect/t/json_udf.inc modified: storage/connect/mysql-test/connect/t/json_udf.test modified: storage/connect/tabjson.cpp commit7e29f2d64fAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Oct 15 18:25:54 2015 +0400 MDEV-8948 ALTER ... INPLACE does work for BINARY, BLOB commit1993780284Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Oct 13 00:04:51 2015 +0200 fix build on sol10-64 commit7454f1c54cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Oct 15 08:49:58 2015 +0200 fix events_1 test for October 2015 commit278ff1661aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Oct 15 05:47:06 2015 -0400 Add warnings to galera test suppression list. commit534e4247c3Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Oct 14 23:21:36 2015 +0200 fix lowercase* tests labrador commit2a471e8e98Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Oct 14 15:29:57 2015 +0200 fix func_hybrid_type crash in --ps --embedded create_embedded_thd() must reset current_thd before returning, otherwise client [de-]allocations will be happening in that stray THD context commitb867ade591Author: Alexander Barkov <bar@mariadb.org> Date: Wed Oct 14 18:33:16 2015 +0400 Removing Used_tables_and_const_cache from "class udf_handler". It was used only temporary, during udf_handler::fix_fields() time, and then copied to the owner Item_func_or_sum object. Changing the code to use the Used_tables_and_const_cache part of the owner Item_sum_or_func object directly. commit3723c70a30Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Wed Oct 14 07:46:31 2015 +0200 MDEV-426: systemd PermissionsStartOnly=true by default mariadb-service-convert during migration can create a file containing ExecStartPre=/usr/sbin/sysctl -q -w vm.drop_caches=3 if the users my.cnf contains [mysqld_safe] flush_caches. This sysctl entry change requires root access. No existing ExecStartPre requires execution requires execution as another user. There is a comment in the mariadb{,@}.service.in that indicates mysqld_install which would require -u mysql to explicity change user to mysql from root since PermissionsStartOnly=true. Otherwise the following error would be generated: Oct 14 07:38:38 spaceman systemd[1]: Starting MariaDB database server... -- Subject: Unit mariadb.service has begun start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit mariadb.service has begun starting up. Oct 14 07:38:38 spaceman sysctl[10089]: sysctl: permission denied on key 'vm.drop_caches' Oct 14 07:38:38 spaceman systemd[1]: mariadb.service: control process exited, code=exited status=255 Oct 14 07:38:38 spaceman systemd[1]: Failed to start MariaDB database server. commit079cc48e06Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Wed Oct 14 07:32:34 2015 +0200 MDEV-426: systemd mariadb-sevice-convert - abs paths Systemd config files need absolute paths. LimitCore was ment to be LimitCORE Oct 14 07:28:04 spaceman systemd[1]: [/etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf:7] Unknown lvalue 'LimitCore' in section 'Service' Oct 14 07:28:04 spaceman systemd[1]: [/etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf:9] Executable path is not absolute, ignoring: sync Oct 14 07:28:04 spaceman systemd[1]: [/etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf:10] Executable path is not absolute, ignoring: sysctl -q -w vm.drop_caches=3 commit82fb035eccAuthor: Daniel Black <grooverdan@users.sourceforge.net> Date: Wed Oct 14 07:05:42 2015 +0200 MDEV-426: mariadb-service-convert to use MYSQLD_OPTS During the review process OPTIONS was converted to MYSQLD_OPTS. In the script mariadb-service convert, the ExecStart of the system also uses this setting. commitddb93b427eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Oct 14 05:14:06 2015 -0400 WSREP_TO_ISOLATION_BEGIN should be called with the table list. commit8d2d947ac1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Oct 13 15:42:53 2015 -0400 Fix galera_var_dirty_reads test. commitfd68a7dac6Merge:13615c5e1816c4b3c68bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Oct 13 14:42:36 2015 -0400 Merge tag 'mariadb-5.5.46' into 5.5-galera commit950e6f5b43Author: Sergey Vojtovich <svoj@mariadb.org> Date: Sun Oct 11 10:32:44 2015 +0200 Fixed Fedora 22 package build failure. Since MariaDB packages have absolute paths, they are marked as not relocatable by setting CPACK_RPM_PACKAGE_RELOCATABLE. According to logics of recent CPackRPM it is not enough: one needs to set CPACK_PACKAGE_RELOCATABLE additionally. commit6346d1de2fAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Mon Sep 28 15:08:09 2015 +0400 MDEV-427/MDEV-5713 Add systemd script with notify functionality After review/QA fixes. commit20c2ae39dbAuthor: Daniel Black <grooverdan@users.sourceforge.net> Date: Thu Sep 17 22:16:19 2015 +1000 MDEV-427/MDEV-5713 Add systemd script with notify functionality commit92271c78b6Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Tue Sep 22 21:59:18 2015 +0200 MDEV-8087: Server crashed in Time_and_counter_tracker::incr_loops Problem: Procedure which uses stack of views first executed without most deep view. It fails but one view cached (as well as whole procedure). Then simultaniusely create the second view we lack and execute the procedure. In the beginning of procedure execution the view is not yet created so procedure used as it was cached (cache was not invalidated). But by the time we are trying to use most deep view it is already created. The problem with the view is that thd->select_number (first view was not parsed) so second view will get the same number. The fix is in keeping the thd->select_number correct even if we use cached views. In the proposed solution (to keep it simple) counter can be bigger then should but it should not create problem because numbers are still unique and situation is very rare. commite19a6f3dcaMerge:0b4c3ad818dfb74dea30Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Oct 12 10:03:04 2015 +0200 Merge branch 'bb-10.1-serg' into 10.1 commit0b4c3ad818Author: Alexander Barkov <bar@mariadb.org> Date: Mon Oct 12 10:49:37 2015 +0400 Moving Used_tables_and_const_chache from Item_func to Item_func_or_sum and thus reusing Used_tables_and_const_cache for Item_sum instead of declaring the same members inside Item_sum. commitdfb74dea30Merge:b785857d00e7cb032e56Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Oct 12 00:37:58 2015 +0200 Merge branch '10.0' into 10.1 commitb785857d00Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Oct 11 11:53:02 2015 +0200 s/--silent/--silent-startup/ commitb4fad1f18dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Oct 11 07:57:40 2015 +0200 fix feedback plugin tests commitc4e336e01eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Oct 10 14:19:02 2015 +0200 fix the encryption.filekeys_nofile test and move the error reporting where it belongs commitaffff1aefcAuthor: Monty <monty@mariadb.org> Date: Fri Oct 9 13:08:41 2015 +0300 Less logging of not critial things during startup/shutdown: - Added --start option to mysqld which don't prints notes to log on startup This helps to find errors in configure options easier - Dont write [Note] entries to log after we have abort the server This makes it easier to find what went wrong - Don't by default write out Changed limits for max_open_files as this didn't really change from anything the user gave us - Dont write warnings about not using --explicit_defaults_for_timestamp (we don't have plans do depricate the old behaviour) commit602c803bd9Author: Monty <monty@mariadb.org> Date: Fri Oct 9 13:02:55 2015 +0300 Don't enable file_key_management_plugin by default (as this gives warnings in the log) Better warning from file_key_management plugin if filename is not given commitc696fc74cfAuthor: Monty <monty@mariadb.org> Date: Fri Oct 9 13:01:07 2015 +0300 Fixed compiler warnings and errors commitb0935fc5daAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Oct 7 15:52:26 2015 +0500 MDEV-8842 add group support to pam_user_map module. Added to the pam_user_map module. commit3757bc5e89Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon Oct 5 14:46:12 2015 +0500 MDEV-8431 Feedback plugin needs an option for http proxy. 'feedback_http_proxy' system variable added to specify the proxy server as host:port. Not a dynamic one. commit16ad1fc540Author: Alexander Barkov <bar@mariadb.org> Date: Thu Oct 8 20:48:46 2015 +0400 MDEV-8921 Wrong result for CAST(AVG(double_column) AS SIGNED) commit7091b7852dAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Oct 8 19:19:21 2015 +0400 MDEV-8918 Wrong result for CAST(AVG(bigint_column) AS SIGNED) - Moving Item_xxx_field declarations after Item_sum_xxx declarations, so Item_xxx_field constructors can be defined directly in item_sum.h rather than item_sum.cc. This removes some duplicate code, e.g. initialization of the following members at constructor time: name, decimals, max_length, unsigned_flag, field, maybe_null. - Adding Item_sum_field as a common parent for Item_avg_field and Item_variance_field - Deriving Item_sum_field directly from Item rather that Item_result_field, as Item_sum_field descendants do not need anything from Item_result_field. - Removing hybrid infrastructure from Item_avg_field, adding Item_avg_field_decimal and Item_avg_field_double instead, as desired result type is already known at constructor time (not only at fix_fields time). This simplifies the code. - Changing Item_avg_field_decimal::val_int() to call val_int_from_decimal() instead of doing { return (longlong) rint(val_real()); } This is the fix itself. commit174a0b9eb7Author: Alexander Barkov <bar@mariadb.org> Date: Thu Oct 8 12:09:05 2015 +0400 Clean-up: Item_sum_variance and Item_variance_field had hybrid type infrastructure, though in fact they always return REAL result. Removing hybrid type artifacts. commitde1a48e7d9Author: Alexander Barkov <bar@mariadb.org> Date: Thu Oct 8 08:59:58 2015 +0400 A clean-up for a few recent result set metadata related bug fixes: - MDEV-8875 Wrong metadata for MAX(CAST(time_column AS DATETIME)) - MDEV-8873 Wrong field type or metadata for LEAST(int_column,string_column) - MDEV-8912 Wrong metadata or type for @c:=string_or_blob_field Adding Item_hybrid_func as a common parent for Item_func_hybrid_field_type, Item_func_min_max, Item_func_user_var. This removes some duplicate code. commit8777724901Author: Alexander Barkov <bar@mariadb.org> Date: Wed Oct 7 20:19:29 2015 +0400 MDEV-8912 Wrong metadata or type for @c:=string_or_blob_field commit8afe96f011Author: Alexander Barkov <bar@mariadb.org> Date: Wed Oct 7 11:42:23 2015 +0400 MDEV-8910 Wrong metadata or field type for MAX(COALESCE(string_field)) commitbed4e84795Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Tue Aug 18 13:28:17 2015 +0200 MDEV-8380: Subquery parse error backport mysql parser fixes 0034963fbf199696792491bcb79d5f0731c98804 5948561812bc691bd0c13cf518a3fe77d9daf920 commitd6371d3a8eAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Oct 6 18:03:10 2015 +0300 Combined fix for MDEV-7267 and MDEV-8864 The problem was that GROUP BY code created Item_field objects that referred to fields in the temp. tables used for GROUP BY. Item_ref and set_items_ref_array() call caused pointers to temp. table fields to occur in many places. This patch introduces Item_temptable_field, which can handle item->print() calls made after the underlying table is freed. commit21adad000aAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Oct 6 15:40:26 2015 +0300 MDEV-8901: InnoDB: Punch hole is incorrecty done also to log files causing assertion and database corruption Analysis: Problem is that punch hole does not know the actual page size of the page and does the page belong to an data file or to a log file. Fix: Pass down the file type and page size to os layer to be used when trim is called. Also fix unsafe null pointer access to actual write_size. commit90f2c82246Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon Oct 5 16:09:21 2015 +0500 MDEV-7817 ALTER TABLE {ADD|DROP} INDEX IF [NOT] EXISTS does not get written into binlog if nothing to do. Just log the ALTER statement even if there's nothing to do. commit3c47809bc2Author: Alexander Barkov <bar@mariadb.org> Date: Tue Oct 6 00:48:46 2015 +0400 Clean-up: changing switch(result_type()) followed by a test for temporal types in case of STRING_RESULT to switch(cmp_type()). commit56cd7d0cd0Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Sep 19 12:58:41 2015 +0200 compilation failure on windows commit6b0b1941bfAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Sep 16 12:48:24 2015 +0200 fix installation location for policy files commit3407438ea6Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Oct 4 09:53:05 2015 +0200 fixes for buildbot commite302602ac0Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Thu May 28 22:42:32 2015 +1000 plugin: qc_info test - hide output so result isn't a binary file commitd4557934ecAuthor: Daniel Black <grooverdan@users.sourceforge.net> Date: Mon May 18 22:03:01 2015 +1000 plugin - qc_info - add Query Cache flags commit3abfe76e2dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Oct 3 08:22:17 2015 +0200 remove unused group_by_handler::init() method The assumption is that the engine should not need to evaluate HAVING on the table->record[0] - the engine either can evaluate HAVING internally before writing it to the table->record[0], or it should leave it to the server, that will evaluate HAVING(table->record[0]). Similarly the engine should not need to evaluate ORDER on the table->record[0]. Either it returns the data already sorted, or the server will sort the table. commit21175bb316Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Oct 2 18:40:38 2015 +0200 Don't use flags in the group_by_handler class instead pass the whole query down and let the engine return unsupported parts back commit8dff1aa5dcAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Oct 2 13:06:30 2015 +0200 bug: move one_storage_engine checking loop down to the point where all tables are already known (and subqueries converted to joins, if needed) commitc93ac0a1c6Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Oct 2 14:38:06 2015 +0200 cleanups and simplifications commit7ca8b4bbfaAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Oct 2 10:19:40 2015 +0200 move internal API out from group_by_handler into a Pushdown_query object commit9ca3d9ea9cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Oct 2 10:19:34 2015 +0200 remove unused method commite8daa41885Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Oct 5 09:47:45 2015 +0200 typos in comments, minor stylistic edits commitcf50e13fbdAuthor: Monty <monty@mariadb.org> Date: Fri Oct 2 10:18:27 2015 +0200 MDEV-6080: Allowing storage engine to shortcut group by queries This task is to allow storage engines that can execute GROUP BY or summary queries efficiently to intercept a full query or sub query from MariaDB and deliver the result either to the client or to a temporary table for further processing. - Added code in sql_select.cc to intercept GROUP BY queries. Creation of group_by_handler is done after all optimizations to allow storage engine to benefit of an optimized WHERE clause and suggested indexes to use. - Added group by handler to sequence engine and a group_by test suite as a way to test the new interface. - Intercept EXPLAIN with a message "Storage engine handles GROUP BY" libmysqld/CMakeLists.txt: Added new group_by_handler files sql/CMakeLists.txt: Added new group_by_handler files sql/group_by_handler.cc: Implementation of group_by_handler functions sql/group_by_handler.h: Definition of group_by_handler class sql/handler.h: Added handlerton function to create a group_by_handler, if the storage engine can intercept the query. sql/item_cmpfunc.cc: Allow one to evaluate item_equal any time. sql/sql_select.cc: Added code to intercept GROUP BY queries - If all tables are from the same storage engine and the query is using sum functions, call create_group_by() to check if the storage engine can intercept the query. - If yes: - create a temporary table to hold a GROUP_BY row or result - In do_select() intercept normal query execution by instead calling the group_by_handler to get the result - Intercept EXPLAIN sql/sql_select.h: Added handling of group_by_handler Added caching of the original join tab (needed for cleanup after group_by handler) storage/sequence/mysql-test/sequence/group_by.result: Test group_by_handler interface storage/sequence/mysql-test/sequence/group_by.test: Test group_by_handler interface storage/sequence/sequence.cc: Added simple group_by_engine for handling COUNT(*) and SUM(primary_key). This was done as a test of the group_by_handler interface commitd8df2b9464Author: Monty <monty@mariadb.org> Date: Fri Oct 2 10:18:40 2015 +0200 Bugs, found by valgrind commitae2cdc1798Author: Monty <monty@mariadb.org> Date: Sun Sep 27 21:28:48 2015 +0200 fix comments commit8ed5fde3e1Author: Monty <monty@mariadb.org> Date: Sun Sep 27 21:28:07 2015 +0200 bug in JOIN_TAB::cleanup() that caused freed memory to be accessed commit4193fa7ae2Author: Monty <monty@mariadb.org> Date: Sun Sep 27 21:30:18 2015 +0200 Simple optimization commit7e31279666Author: Monty <monty@mariadb.org> Date: Sat May 16 18:00:32 2015 +0300 Speed up some innodb tests Fixed compiler warnings sql/sql_view.cc: Ensure that merged_for_insert is properly reset (Left of an old patch) commitb2b07b33cfAuthor: Monty <monty@mariadb.org> Date: Mon May 11 23:11:05 2015 +0300 Don't write DROP TEMPORARY TABLE to binary log if we didn't write the CREATE TEMPORARY TABLE statement. - Enable old code from one of my older changesets that didn't make into 10.0 - Fix test cased that failed as they expected DROP TEMPORARY TABLE in the log. commitd2f6166ec5Author: Sergei Petrunia <psergey@askmonty.org> Date: Mon Oct 5 16:47:34 2015 +0300 MDEV-8830: Weird output in the error log Remove debug printout that was accidentally left in place commit23d4c95b50Author: Alexander Barkov <bar@mariadb.org> Date: Mon Oct 5 16:16:13 2015 +0400 MDEV-8896 Dead code in stored_field_cmp_to_item() commit9337173915Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Oct 5 09:27:33 2015 +0300 MDEV-8893: Test encryption.innodb_encryption_filekeys fails on buildbot commit608ad38a0dAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Oct 4 11:57:57 2015 +0200 Temporary changes for making compile to work commitba0b668551Author: Alexander Barkov <bar@mariadb.org> Date: Sun Oct 4 09:37:57 2015 +0400 A clean-up for MDEV-7950: - Turning get_mm_tree_for_const() from a static function into a protected method in Item. - Adding a new class Item_bool_func2_with_rev, for the functions and operators that have a reverse function and can use the range optimizer for to optimize "value OP field" as "field REV_OP value". Deriving Item_bool_rowready_func2 and Item_funt_spatial_rel from the new class. - Removing Item_bool_func2::have_rev_func(). commit100d77e69dAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Oct 2 14:48:32 2015 +0400 Clean-up: removing the unused "Item_result cmp_type" parameter from the methods: - Item_bool_func::get_func_mm_tree() - Item_bool_func::get_mm_parts() - Item_bool_func::get_ne_mm_tree() commit322bc6e8c9Author: Alexander Barkov <bar@mariadb.org> Date: Fri Oct 2 12:14:50 2015 +0400 Adding "virtual bool Field::can_optimize_range(...)" and moving the code from Item_bool_func::get_mm_leaf() into Field_xxx::can_optimize_range(). This reduces the total amount of virtual calls. Also, it's a prerequisite change for the pluggable data types. commit5e7f100bf5Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Oct 1 13:50:11 2015 +0300 MDEV-8523: InnoDB: Assertion failure in file buf0buf.cc line 5963 (Failing assertion: key_version == 0 || key_version >= bpage->key_version) commit6b36fb96f1Author: Alexander Barkov <bar@mariadb.org> Date: Fri Oct 2 08:54:25 2015 +0400 Clean-up: sharing duplicate code in Item_field::val_bool_result() and Item_ref::val_bool_result(). commit38f3b99d46Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Oct 1 20:36:25 2015 -0400 MDEV-8831 : enforce_storage_engine doesn't block table creation on other nodes Check if the engine is supported/allowed before replicating the statement. commitaccf9b5675Author: Alexander Barkov <bar@mariadb.org> Date: Thu Oct 1 20:01:35 2015 +0400 MDEV-5694 GREATEST(date, time) returns a wrong data type commita84fae27d9Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Oct 1 11:35:18 2015 +0400 MDEV-8836 - Server crashed in my_copy_8bit on querying I_S.PROCESSLIST Fixed race condition in code filling INFORMATION_SCHEMA.PROCESSLIST.INFO_BINARY. When loading query string/length of another connection one must have LOCK_thd_data locked. commite1cbca1851Author: Alexander Barkov <bar@mariadb.org> Date: Thu Oct 1 14:21:12 2015 +0400 MDEV-657 LP:873142 - GREATEST() does not always return same signness of argument types. The patch for MDEV-8871 also fixed the problem reported in MDEV-657. Adding the test case from the bug report. commitb50c607056Author: Alexander Barkov <bar@mariadb.org> Date: Thu Oct 1 14:07:42 2015 +0400 MDEV-4848 Wrong metadata or column type for LEAST(1.0,'10') MDEV-8873 Wrong field type or metadata for LEAST(int_column,string_column) commit3266216f2cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Oct 1 08:16:14 2015 +0300 MDEV-8727: Server/InnoDB hangs on shutdown after trying to read an encrypted table with a wrong key Analysis: When a page is read from encrypted table and page can't be decrypted because of bad key (or incorrect encryption algorithm or method) page was incorrectly left on buffer pool. Fix: Remove page from buffer pool and from pending IO. commitcb2c799bd0Author: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 30 16:04:24 2015 +0400 MDEV-8860 Wrong result for WHERE 2016 < SOME (SELECT CAST(time_column AS DATETIME) FROM t1) MDEV-8875 Wrong metadata for MAX(CAST(time_column AS DATETIME)) commitcc9cfecab7Author: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 30 12:37:34 2015 +0400 MDEV-8865 Wrong field type or metadata for COALESCE(signed_int_column, unsigned_int_column) Item_func_hybrid_field_type did not return correct field_type(), cmp_type() and result_type() in some cases, because cached_result_type and cached_field_type were set in independent pieces of the code and did not properly match to each other. Fix: - Removing Item_func_hybrid_result_type - Deriving Item_func_hybrid_field_type directly from Item_func - Introducing a new class Type_handler which guarantees that field_type(), cmp_type() and result_type() are always properly synchronized and using the new class in Item_func_hybrid_field_type. commit09b87d6293Author: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 30 10:05:16 2015 +0400 MDEV-8871 Wrong result for CREATE TABLE .. SELECT LEAST(unsigned_column,unsigned_column) commitc13f4091f5Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Sep 29 15:15:28 2015 +0300 MDEV-8815: InnoDB should refuse to start if crash recovery fails instead of asserting Added error handling to crash recovery so that we stop instead of asserting. commita4e5902039Author: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 28 19:12:05 2015 +0400 MDEV-8862 Wrong field type for MAX(COALESCE(datetime_column)) commitc5922c5701Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 28 13:59:44 2015 +0300 MDEV-8821: Failing assertion: !page || page_type != 0 in file log0recv. cc line 1404 Alloc creating crypt_data to empty page at crash recovery and redo. commit3cc6e5b7f2Author: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 28 12:51:02 2015 +0400 MDEV-8852 Implicit or explicit CAST from MAX(string) to INT,DOUBLE,DECIMAL does not produce warnings commit54db387410Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Sep 22 16:39:05 2015 +0400 MDEV-8682 - CSV engine does not properly process "", in quotes Added per-table boolean IETF_QUOTES variable to CSV storage engine. It allows to enable IETF-compatible parsing of embedded quote and comma characters. Disabled by default. This patch is based on Percona revision:b32fbf0276Note that original patch adds server variable, while this patch adds per-table variable. commitbca5894d51Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Sep 27 19:20:43 2015 -0400 Adjust warning suppression over a recent change in galera library. commit6927459e5bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Sep 25 13:56:02 2015 -0400 MDEV-8208: Sporadic SEGFAULT on startup Addendum: * Before calling THD::init_for_queries(), flip the current_thd to wsrep thread so that memory gets allocated for the right THD. * Use wsrep_creating_startup_threads instead of plugins_are_initialized as the condition for the execution of THD::init_for_queries() within start_wsrep_THD(), as use of latter could still leave some room for race. commit59037d9629Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Sep 16 23:20:57 2015 -0400 MDEV-8208: Sporadic SEGFAULT on startup Problem: When mysqld starts as a galera node, it creates 2 system threads (applier & rollbacker) using start_wsrep_THD(). These threads are created before plugin initialization (plugin_init()) for SST methods like rsync and xtrabackup. The threads' initialization itself can proceed in parallel to mysqld's main thread of execution. As a result, the thread initialization code (start_wsrep_THD()) can end up accessing some un/partially initialized structures (like maria_hton, in this particular case) resulting in segfault. Solution: Fixed by calling THD::init_for_queries() (which accesses maria_hton) only after the plugins have been initialized. commit4d33f9dca0Merge:eac8e4354113615c5e18Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Sep 25 14:57:56 2015 -0400 Merge branch '5.5-galera' into 10.0-galera commit13615c5e18Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Sep 25 13:56:02 2015 -0400 MDEV-8208: Sporadic SEGFAULT on startup Addendum: * Before calling THD::init_for_queries(), flip the current_thd to wsrep thread so that memory gets allocated for the right THD. * Use wsrep_creating_startup_threads instead of plugins_are_initialized as the condition for the execution of THD::init_for_queries() within start_wsrep_THD(), as use of latter could still leave some room for race. commit30711c6650Author: Alexander Barkov <bar@mariadb.org> Date: Fri Sep 25 21:33:50 2015 +0400 MDEV-8806 Numeric CAST produce different warnings for strings literals vs functions commit26e4403f64Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Sep 24 14:02:18 2015 +0300 MDEV-8819: Failing assertion: block->page.space == page_get_space_id(page_align(ptr)) in file buf0buf.cc line 2551 Add error handling on page reading and do not try to access empty pages. commit9554342d16Merge:5448df084b4070ce00dcAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 25 10:24:14 2015 +0200 Merge branch '10.1' into pull-request-97 Merge downstream Debian packaging (MDEV-6284) commit4070ce00dcAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Sep 25 07:18:04 2015 +0400 MDEV-8635 Redundant warnings on WHERE decimal_column='ax' The fix for MDEV-8466 earlier fixed MDEV-8635 as well. Adding a test only. commit125001881dAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Thu Sep 24 16:31:45 2015 +0300 Fix typos in JSON MRR output commit7016621596Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Sep 24 15:43:01 2015 +0300 MDEV-8829: Assertion `0' failed in Explain_table_access::tag_to_json - Add EXPLAIN/ANALYZE FORMAT=JSON handling for a few special cases. commit428f03c0b5Author: Alexander Barkov <bar@mariadb.org> Date: Thu Sep 24 15:48:02 2015 +0400 MDEV-8839 COLUMN_GET() produces warnings with no data commite541894260Author: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 23 20:59:54 2015 +0400 Fixing a failure in "mtr --ps xml", introduced by the patch for MDEV-8466 and MDEV-8468. Using --enable_prepare_warnings and --disable_prepare_warnings around the affected query, to have the same warning in regular and --ps mtr runs. commit3ad035f66bAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 23 20:42:28 2015 +0400 MDEV-8658 DATE(zerofill_column) and DATE(COALESCE(zerofill_column)) return different results MDEV-8660 TIME(int_zerofill_column) returns a wrong result commitb9da3ba45eAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Wed Sep 23 19:28:20 2015 +0300 Follow-up for MDEV-6756 - fix the ps-protocol version of the tests commit70effb6be8Author: Elena Stepanova <elenst@montyprogram.com> Date: Wed Sep 23 19:15:29 2015 +0300 Follow-up for MDEV-6756 - fix the embedded version of the test commit138e7bffafAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Wed Sep 23 19:06:21 2015 +0300 Follow up for disabling encrypt_tmp_files and encrypt_binlog by default commit5c62dd21e8Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Sep 23 12:32:47 2015 +0300 MDEV-8832: Encryption meta data should not be stored when ENCRYPTED=DEFAULT and innodb-encrypt-tables=OFF commit212698b152Author: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 23 13:04:28 2015 +0400 MDEV-8253 EXPLAIN SELECT prints unexpected characters Item_string::clone_item() creates a new Item_string that points exactly to the same buffer that the original one does. Later, Item_string::print() uses c_ptr() for the original Item_string, which reallocs the original buffer, and the clone remain with the old freed buffer. Refactoring the code not to use c_ptr() in Item_string::print(). commit180c44e0f6Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Sep 23 10:15:38 2015 +0300 MDEV-8817: Failing assertion: new_state->key_version != ENCRYPTION_KEY_VERSION_INVALID Folloup: Made encryption rules too strict (and incorrect). Allow creating table with ENCRYPTED=OFF with all values of ENCRYPTION_KEY_ID but create warning that nondefault values are ignored. Allow creating table with ENCRYPTED=DEFAULT if used key_id is found from key file (there was bug on this) and give error if key_id is not found. commit7cbecadf9bAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Sep 17 17:01:00 2015 +0400 MDEV-8664 - plugins.show_all_plugins --embedded fails in buildbot Failed attempt to load dynamic library with STB_GNU_UNIQUE symbol may corrupt internal dynamic linker data sructures. This looks like libdl bug: https://sourceware.org/bugzilla/show_bug.cgi?id=14577 In embedded mode "show plugins soname" fails to dlopen ha_mroonga.so (which has STB_GNU_UNIQUE) due to undefined reference to wsrep_forced_binlog_format. It crashes later in subsequent call to dlopen() from pthread_exit(). Disabled plugins.show_all_plugins until dlopen() bug is fixed. commit0cf39f401cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Sep 22 15:03:59 2015 +0300 MDEV-8817: Failing assertion: new_state->key_version != ENCRYPTION_KEY_VERSION_INVALID Analysis: Problem sees to be the fact that we allow creating or altering table to use encryption_key_id that does not exists in case where original table is not encrypted currently. Secondly we should not do key rotation to tables that are not encrypted or tablespaces that can't be found from tablespace cache. Fix: Do not allow creating unencrypted table with nondefault encryption key and do not rotate tablespaces that are not encrypted (FIL_SPACE_ENCRYPTION_OFF) or can't be found from tablespace cache. commit5c9c8ef1eaAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Sep 22 14:01:54 2015 +0400 MDEV-3929 Add system variable explicit_defaults_for_timestamp for compatibility with MySQL commit89af0f11a8Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 21 11:24:08 2015 +0300 MDEV-8770: Incorrect error message when importing page compressed tablespace Added decompression and after page update recompression support for import. commitd54bc3c0d1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Sep 21 20:49:31 2015 -0400 Cleanup: remove dead code which could also lead to race. commit9d5767cf43Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Sep 21 20:47:05 2015 -0400 Post-merge fix. commite96f3c79b9Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Sep 22 00:57:29 2015 +0300 MDEV-8779: mysqld got signal 11 in sql/opt_range_mrr.cc:100(step_down_to) Post fix: initialize a variable commita575d90fe1Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Sep 21 21:14:18 2015 +0200 Fold all json UDF names to lower case modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h modified: storage/connect/mysql-test/connect/r/json_udf.result modified: storage/connect/mysql-test/connect/t/json_udf.inc modified: storage/connect/value.cpp commit22cc8f990bAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 21 19:04:32 2015 +0400 Changing a number of functions to aggregate argument character sets and collations from the global name space into private and protected methods in Item_func_or_sum. commit9b9e36ed49Author: Sergei Petrunia <psergey@askmonty.org> Date: Sun Sep 20 21:31:02 2015 +0300 MDEV-8779: mysqld got signal 11 in sql/opt_range_mrr.cc:100(step_down_to) The crash was caused by range optimizer using RANGE_OPT_PARAM::min_key (and max_key) to store keys. Buffer size was a good upper bound for range analysis and partition pruning, but not for EITS selectivity calculations. Fixed by making these buffers variable-size. The sizes are calculated from [pseudo]indexes used for range analysis. commit139ce6cb18Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Mon Sep 21 15:15:23 2015 +0200 fix for 32bit system. Not meaninful for this test but volatile parameters replaced. commitc8db0df2daAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 21 16:18:20 2015 +0400 Removing "DTCollation Arg_comparator::cmp_collation". Using a CHARSET_INFO pointer instead. commit2dc32c02abAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 21 15:52:50 2015 +0400 Removing "DTCollation user_var_entry::collation", using a CHARSET_INFO pointer instread, as the "derivation" and "repertoire" parts of DTCollation were not really used by user_var_entry. commitafa1773439Author: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 21 12:40:07 2015 +0400 Moving Item_args::arg_count from "public" to "protected". commit1956340247Author: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 21 12:21:46 2015 +0400 Removing global function agg_item_charsets_for_string_result(). Moving agg_arg_charsets_for_string_result() and agg_arg_charsets_for_string_result_with_comparison() inside "protected" section in Item_func_or_sum. commitf727fb45d4Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Sun Sep 20 20:22:22 2015 +0200 Fix to make os_thread_id it compiled on windows. commitd39a2f7d11Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Sep 19 09:08:58 2015 -0400 Update mandatory wsrep configuration options commit161db7c18fAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sat Sep 19 11:30:18 2015 +0300 MDEV-8773: InnoDB innochecksum does not work with encrypted or page compressed tables commitb75c003372Author: Alexander Barkov <bar@mariadb.org> Date: Fri Sep 18 23:03:35 2015 +0400 MDEV-8816 Equal field propagation is not applied for WHERE varbinary_column>=_utf8'a' COLLATE utf8_general_ci AND varbinary_column='A'; 1. Removing the legacy code that disabled equal field propagation in cases when comparison is done as VARBINARY. This is now correctly handled by the new propagation code in Item_xxx::propagate_equal_fields() and Field_str::can_be_substituted_to_equal_item (the bug fix). 2. Also, removing legacy (pre-MySQL-4.1) Arg_comparator methods compare_binary_string() and compare_e_binary_string(), as VARBINARY comparison is correcty handled in compare_string() and compare_e_string() by the corresponding VARBINARY collation handler implemented in my_charset_bin. (not really a part of the bug fix) commit9c6405fefaMerge:f4fe13832179140b0383Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Sep 18 18:39:08 2015 +0200 Commit resolved conflicts commitda3ec3d421Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Sep 9 16:29:50 2015 +0200 MDEV-7970: EXPLAIN FORMAT=JSON does not print HAVING Printing non-trivial HAVING added. commit79140b0383Author: Alexander Barkov <bar@mariadb.org> Date: Fri Sep 18 13:30:44 2015 +0400 MDEV-8793 Wrong result set for SELECT ... WHERE COALESCE(time_column)=TIME('00:00:00') AND COALESCE(time_column)=DATE('2015-09-11') MDEV-8814 Wrong result for WHERE datetime_column > TIME('00:00:00') commitf789158ddfAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Sep 17 19:49:49 2015 +0400 The patch for MDEV-8466 revealed a bug in str2my_decimal, which did not return a correct "end_of_num" pointer in case of character sets with mbminlen>1 (ucs2, utf16, utf16le, utf32). The bug caused sporadic test failures on BuildBot, as well "uninitialized memory read" errors in valgrind builds. commitc83810f402Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Sep 17 12:38:06 2015 +0300 Fix test failures seen on buildbot where file_key_management plugin is linked statically and dynamic plugin is not available. commit7dd137c4acAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Aug 12 23:09:48 2015 +0200 MDEV-6756: map a linux pid (child pid) to a connection id shown in the output of SHOW PROCESSLIST Added tid (thread ID) for system where it is present. ps -eL -o tid,pid,command shows the thread on Linux commitd9b25ae3dbAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Sep 17 11:05:07 2015 +0400 MDEV-8466 CAST works differently for DECIMAL/INT vs DOUBLE for empty strings MDEV-8468 CAST and INSERT work differently for DECIMAL/INT vs DOUBLE for a string with trailing spaces commitdb2e21bf3eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Sep 16 23:20:57 2015 -0400 MDEV-8208: Sporadic SEGFAULT on startup Problem: When mysqld starts as a galera node, it creates 2 system threads (applier & rollbacker) using start_wsrep_THD(). These threads are created before plugin initialization (plugin_init()) for SST methods like rsync and xtrabackup. The threads' initialization itself can proceed in parallel to mysqld's main thread of execution. As a result, the thread initialization code (start_wsrep_THD()) can end up accessing some un/partially initialized structures (like maria_hton, in this particular case) resulting in segfault. Solution: Fixed by calling THD::init_for_queries() (which accesses maria_hton) only after the plugins have been initialized. commitc69cf93bfbAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Sep 16 17:24:34 2015 +0400 MDEV-8673 - [PATCH] Missing Sanity Check for strndup() in MariaDB 10.0.2x Contributed by Bill Parker. Added check for strndup() return value. commit173e486950Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Sep 16 13:01:04 2015 +0300 MDEV-8576: Bootstrap should ignore --enforce-storage-engine option Allow enforce-storage-engine="" option and use that on mysql_install_db when doing bootstrap. commitbb52905432Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Sep 15 18:58:08 2015 -0400 MDEV-8034 : wsrep_node_address can't be IPV6 Updated address parsing logic to include IPv6 format. commitfd1b2e486aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Sep 15 17:07:41 2015 -0400 MDEV-8803: Debian jessie 8.2 + MariaDB 10.1.7 + GaleraCluster * Merge fix for issue #127 from mysql-wsrep (commit : a0ba0d7) * Also, cherry-picked a similar fix for OpenSUSE (commit : 7790cb1) commit653aadcd59Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Sep 15 16:27:04 2015 -0400 MDEV-8804: bootstrap command missing in debian init script Add 'bootstrap' to debian init script. commitf4fe138321Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Sep 15 20:42:51 2015 +0200 Fix assert error for where clause with UDF's was fixed in HA_CONNECT::CondFilter moving res= pval->val_str(&tmp) but this was wrong. Now res is only used for strings. Change version number modified: storage/connect/ha_connect.cc Add some new UDF's modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h Fix change in tests json_udf modified: storage/connect/mysql-test/connect/r/json_udf.result modified: storage/connect/mysql-test/connect/t/json_udf.inc modified: storage/connect/mysql-test/connect/t/json_udf.test commit31cf362c21Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Sep 15 08:49:55 2015 -0400 MDEV-7873: rpl.rpl_domain_id_filter fails sporadically in buildbot #2 Fix the test case : switch to save_master_gtid.inc & sync_with_master_gtid.inc to sync slave with master. commit6cc1befcf2Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Sep 15 14:11:33 2015 +0300 Fix test to do proper cleanup. commit9e6f3df51aAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Sep 15 09:35:38 2015 +0300 MDEV-8799: Server crashes in btr_defragment_add_index, encryption.innodb-bad-key-change5 and alike fail in buildbot Problem was unsafe access to NULL pointer. Added additional checks to avoid access to NULL pointer. commit3a0df3cf3cAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Sep 15 10:11:52 2015 +0400 MDEV-8372 Use helper methods introduced in MDEV-7824 all around the code commiteac8e43541Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Sep 14 15:43:16 2015 -0400 Avoid caching wsrep threads (fixed the erroneous condition). commita401c11c4eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Sep 14 15:26:50 2015 -0400 Fix failing test cases * Also modified name regex to include '#' as a valid symbol for tests under disabled.def. commit3079bd43afAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 14 16:28:16 2015 +0300 Fix release build compile failure. commit4d3f680c95Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 14 14:11:23 2015 +0300 MDEV-8772: Assertion failure in file ha_innodb.cc line 20027 when importing page compressed and encrypted tablespace using incorrect keys Add error handling to decryp function when decrypt fails during import. commit5448df084bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Sep 14 12:02:20 2015 +0200 restore CRLF file ending in the test data commitddaddf1019Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 14 12:15:27 2015 +0300 MDEV-8769: Server crash at file btr0btr.ic line 122 when defragmenting encrypted table using incorrect keys Add error handling when getting block from encrypted table and decryption fails. commite3e2bbe5e0Merge:aaf6334b64f8754d652eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Sep 14 10:58:38 2015 +0200 MDEV-6284 Merge downstream Debian/Ubuntu packaging into upstream MariaDB Merge branch 'ottok-ok-debpkg-10.1' into 10.1 commit71b1444601Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 14 11:01:14 2015 +0300 MDEV-8768: Server crash at file btr0btr.ic line 122 when checking encrypted table using incorrect keys Add error handling to btr_validate_index when index root block can't be read because block decryption fails. commitd581ef5b2cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 14 08:27:14 2015 +0300 MDEV-8764: Wrong error when encrypted table can't be decrypted. Add a new error message when table is encrypted but decryption fails. Use this new error message on InnoDB/XtraDB. commit27ec0e159bAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Mon Sep 14 03:15:04 2015 +0300 Increase the version number commit80089a60e5Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Sep 14 03:12:54 2015 +0300 Follow-up for MDEV-8675 and MDEV-8676 type_spatial_indexes test is now be re-enabled, and the new result file can be used for creating engine-specific rdiffs commit6cc2e7ea5dAuthor: Alexander Barkov <bar@mariadb.org> Date: Sun Sep 13 23:32:10 2015 +0400 MDEV-8795 Equal expression propagation does not work for temporal literals commit9b577edd50Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sat Sep 12 13:16:05 2015 +0300 MDEV-8577: With enforce-storage-engine mysql_upgrade corrupts the schema: ALTER TABLE should either bypass enforce-storage-engine, or mysql_upgrade should refuse to run Allow user to alter contents of existing table without enforcing storage engine. However, enforce storage engine on ALTER TABLE x ENGINE=y; commit1e9ab68e4aMerge:96f4a906ce528729fc5dAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Sat Sep 12 00:44:20 2015 +0200 Merge. commit96f4a906ceAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Sep 11 23:26:02 2015 +0400 MDEV-8675 Different results of GIS functions on NULL vs NOT NULL columns commitaaf6334b64Author: Alexander Barkov <bar@mariadb.org> Date: Fri Sep 11 15:48:34 2015 +0400 MDEV-8709 Row equality elements do not get propagated The problem was fixed earlier by one of the MDEV-8728 subtasks. Adding a test case only. commit9158212a27Author: Alexander Barkov <bar@mariadb.org> Date: Fri Sep 11 15:41:53 2015 +0400 MDEV-8369 Unexpected impossible WHERE for a condition on a ZEROFILL field Disable IDENTITY_SUBST propagation for ZEROFILL columns, as discussed with Sergei. commitdf9b8aee58Merge:6f302d9f6c51eaa7fe53Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Sep 11 12:01:48 2015 +0200 Merge MDEV-8193 into 10.1 Conflicts: sql/rpl_rli.cc commit6f302d9f6cAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Sep 11 11:35:15 2015 +0400 MDEV-8755 Equal field propagation is not performed any longer for the IN list when multiple comparison types commit0302efca7fAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Sep 11 09:20:40 2015 +0400 MDEV-8705 Wrong result for SELECT..WHERE latin1_bin_column='a' AND latin1_bin_column='A' MDEV-8712 Wrong result for SELECT..WHERE latin1_bin_column=_latin1'a' AND latin1_bin_column='A' commitceac34404bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Sep 10 09:57:08 2015 -0400 lp:1372840 - test case commit4aebba3aebAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Sep 10 17:13:35 2015 +0400 MDEV-8740 Wrong result for SELECT..WHERE year_field=10 AND NULLIF(year_field,2011.1)='2011' MDEV-8754 Wrong result for SELECT..WHERE year_field=2020 AND NULLIF(year_field,2010)='2020' Problems: 1. Item_func_nullif stored a copy of args[0] in a private member m_args0_copy, which was invisible for the inherited Item_func menthods, like update_used_tables(). As a result, after equal field propagation things like Item_func_nullif::const_item() could return wrong result and a non-constant NULLIF() was erroneously treated as a constant at optimize_cond() time. Solution: removing m_args0_copy and storing the return value item in args[2] instead. 2. Equal field propagation did not work well for Item_fun_nullif. Solution: using ANY_SUBST for args[0] and args[1], as they are in comparison, and IDENTITY_SUBST for args[2], as it's not in comparison. commit8e553c455cAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Sep 10 15:01:44 2015 +0400 MDEV-8785 Wrong results for EXPLAIN EXTENDED...WHERE NULLIF(latin1_col, _utf8'a' COLLATE utf8_bin) IS NOT NULL commit4278d6d402Author: Alexander Barkov <bar@mariadb.org> Date: Thu Sep 10 14:04:52 2015 +0400 MDEV-8786 Wrong result for SELECT FORMAT=JSON * FROM t1 WHERE a=_latin1 0xDF commitf479b5a16eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Sep 10 00:29:06 2015 -0400 Update WSREP_PATCH_REVNO commitf9510717a4Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Sep 8 22:11:56 2015 -0700 Galera MTR Tests: fix typo in the galera_as_slave_nonprim test, in suite/galera/galera_3nodes_as_slave.cnf commitb3ec0a8589Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Sep 8 05:04:47 2015 -0700 Galera MTR Tests: a test for async slave + non-prim commitdb66d2f92dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Sep 10 00:20:49 2015 -0400 refs codership/mysql-wsrep#188 - setting error code for slave, if mysql slave node dropped from cluster commit2012a810abAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Sep 10 00:14:24 2015 -0400 refs codership/mysql-wsrep#181 - Galera related errors in mysql slave applying will now cause slave to abort commitc915d8caa6Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Sep 1 00:57:20 2015 -0700 Galera MTR Tests: attempt to work around codership/mysql-wsrep#179 commit25bbfe8839Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Aug 31 02:16:43 2015 -0700 Galera MTR Tests: Instruct xtrabackup SST's socat to use 1024-bit DH keys to avoid 'error:14082174:SSL routines:SSL3_CHECK_CERT_AND_ALGORITHM:dh key too small' commitb6f8033073Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Aug 31 02:15:37 2015 -0700 Galera MTR Tests: Tests around do-* and ignore-* binlog options commitf7885fb631Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Aug 27 00:54:26 2015 -0700 Correct WSREP_PATCH_VERSION for 5.6 is 11 commit52c9235e62Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Aug 25 06:15:20 2015 -0700 Galera MTR Tests: Add known Galera and mysql-wsrep Valgrind issues to valgrind.supp commit371dc336eaAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Aug 24 06:56:30 2015 -0700 refs codership/mysql-wsrep#90 MTR test case for mysql-wsrep#90 commite5b595e9d1Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Aug 14 05:14:53 2015 -0700 Galera MTR Tests: fix typo in suite/galera/galera_2nodes_as_slave.cnf commitee22ac3808Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Aug 14 01:16:25 2015 -0700 Galera MTR Tests: Various test stability fixes (take #5) commit7d73931cbcAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Aug 12 06:40:59 2015 -0700 Galera MTR Tests: Various test stability fixes (take #4) commitff76214a46Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Aug 12 05:32:18 2015 -0700 Galera MTR Tests: Various test stability fixes (take #3) commitfd0aaad547Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Aug 12 01:03:21 2015 -0700 Galera MTR Tests: Various test stability fixes (take #2) commit997119dafeAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Aug 11 04:22:38 2015 -0700 Galera MTR Tests: Various test stability fixes. commit182b237d40Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Aug 7 21:15:02 2015 -0700 Galera MTR Tests: remove variable output from galera_gra_log.test (take #2) commitc9d4581e8aAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Aug 6 20:55:30 2015 -0700 Galera MTR Tests: remove variable output from galera_gra_log.test commit2316a4e19fAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Aug 6 00:34:00 2015 -0700 Galera MTR Tests: Tests for GRA*.log files, replication bundle, preordered events, forced binlog format commita1a7414b1dAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Aug 3 03:20:52 2015 -0700 Galera MTR Tests: An end-to-end test with restoring a node from xtrabackup; a test for restoring the primary component via pc.bootstrap commit1e2906892aAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Jul 23 04:30:07 2015 -0700 Galera MTR Tests: Valgrind suppression for codership/galera#306 commit3893b5c6daAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Jul 23 04:29:40 2015 -0700 Galera MTR Tests: mark all tests operating on large data sets with --source include/big-test.inc to help with Valgrind commit83579c2ff3Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Jul 10 07:17:20 2015 -0700 Galera MTR Tests: fixes for mysqldump SST/IST tests commit10f5c08f4bAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Jul 8 01:52:45 2015 -0700 Refs codership/QA#47. Additional tests for FTWRL. commit6104a27c98Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Jul 7 06:01:00 2015 -0700 Galera MTR Tests: increase lock wait timeout in suite/galera/t/galera_many_rows.test commit4a630ce6adAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Jul 7 06:00:22 2015 -0700 Galera MTR Tests: A test for xtrabackup with key+cert encryption. commitedd9bd3ea7Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Jul 7 03:42:03 2015 -0700 Fixes codership/mysql-wsrep#153 use --defaults-extra-file with mysqldump SST commit5d531f07bfAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Jul 1 03:13:04 2015 -0700 Galera MTR Tests: Use SET GLOBAL when setting wsrep_replicate_myisam, as it is a GLOBAL variable in MySQL Galera Cluster and SESSION in Percona XTraDB Cluster commitfbe739cbb1Author: Raghavendra D Prabhu <rprabhu@wnohang.net> Date: Mon Jun 29 16:42:58 2015 +0530 Bug#1421360: Add 'FLUSH TABLES' to Total Order Isolation execution. Before this, FLUSH TABLES and FLUSH TABLES t1 (REFRESH_TABLES hereafter) were executed locally, which also had implications for GTID. MySQL async replication does replicate FLUSH TABLES. Hence, this commit a) Adds REFRESH_TABLES to TOI. b) Skips LOCK-based REFRESH_TABLES from TOI, ie. FLUSH TABLES WITH READ LOCK and FLUSH TABLES FOR EXPORT. c) Executes them after reload_acl_and_cache. This is done since reload_acl_and_cache checks for thd->locked_tables_mode and does upgrade of MDL locks accordingly. A failure here means REFRESH_TABLES cannot run. i) This is also important since LOCK TABLES is not replicated in galera. d) Test galera_flush has been modified for i) wsrep_replicate_myisam SESSION variable. ii) Testing REFRESH_TABLES. iii) Testing REFRESH_TABLES + LOCK TABLES. e) Use different WSREP_TO_ISOLATION_BEGIN for global FLUSH TABLES and FLUSH TABLES <table,>. commit5a002adb5fAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri Jun 26 01:30:01 2015 -0700 Galera MTR Tests: various tests and test fixes commitf1a00ed514Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Jun 17 05:14:36 2015 -0700 Galera MTR Tests: Use wsrep_sst_auth for tests that use xtrabackup + IST commit2ea16b995dAuthor: Alexey Yurchenko <ayurchen@gmail.com> Date: Mon Jun 8 21:06:22 2015 +0300 This commit fixes - errno handling in wsp::env::append() method, where error could be returned by mistake - return code of sst_prepare_other() when pthread_create() fails - it was returning positive error code which by convention is treated as success. commit0ccbbffb78Author: Alexey Yurchenko <ayurchen@gmail.com> Date: Mon Jun 8 12:23:53 2015 +0300 Slight cleanup improvement on a previous commit. commitbc796c29b3Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Jun 8 01:43:27 2015 -0700 Refs codership/mysql-wsrep#143 . Account for the case where the SST password is empty commit86ee30cea9Author: Alexey Yurchenko <ayurchen@gmail.com> Date: Sat Jun 6 01:08:41 2015 +0300 Refs codership/mysql-wsrep#141: this commit 1. Passes wsrep_sst_auth_value to SST scripts via WSREP_SST_OPT_AUTH envronmental variable, so it never appears on the command line 2. In mysqldump and xtrabackup* SST scripts which rely on MySQL authentication, instead of passing password on the command line, SST script sets MYSQL_PWD environment variable, so that password also never appears on the mysqldump/innobackupex command line. commit197e9d2559Author: sjaakola <seppo.jaakola@iki.fi> Date: Tue May 26 15:44:34 2015 +0300 Refs codership/mysql-wsrep#132 - fix for THD::m_digest initialization, according to Raghu commit483078b1b1Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri May 15 02:15:58 2015 -0700 Fixes codership/QA#87 . An MTR test for SERIALIZABLE commit4102d5258dAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon May 11 02:21:39 2015 -0700 Refs codership/mysql-wsrep#113 - tests around FLUSH TABLE, FLUSH TABLES, LOCK TABLE commit2106fed865Author: sjaakola <seppo.jaakola@iki.fi> Date: Sun May 10 21:49:36 2015 +0300 Refs codership/mysql-wsrep#113 - changed BF thread's MDL wait to never timeout - all explicit locks are now honored by BF threads commitf9805e4c98Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Fri May 8 03:21:50 2015 -0700 Galera MTR Tests: tests for WAN restart, xtrabackup options and others. commitef7b08978bAuthor: Alexey Yurchenko <ayurchen@gmail.com> Date: Wed May 6 10:35:02 2015 +0300 Fixes codership/mysql-wsrep#122 - causal/casual typos fixed in wsrep code commitbace2a9752Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue May 5 01:21:55 2015 -0700 Galera MTR Tests: add a test for socket.ssl_compression commitb5ef2bbc5eAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Apr 28 23:34:47 2015 -0700 Re-enable tests previously disabled due to mysql-wsrep#114 commit63c5bee535Author: sjaakola <seppo.jaakola@iki.fi> Date: Tue Apr 28 20:38:25 2015 +0300 Refs codership/mysql-wsrep#113 - Extended the protection of local FLUSH sessions to cover all exclusive MDL locks commit417f778e53Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Apr 28 00:55:50 2015 -0700 Galera MTR tests: disable innodb.innodb_stats_* due to mysql-wsrep#114 commit6bb890c9b6Author: sjaakola <seppo.jaakola@iki.fi> Date: Fri Apr 24 10:39:42 2015 +0300 refs codership/mysql-wsrep#114 - skipping TOI if not using wsrep provider commitc66609017bAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Tue Apr 21 16:22:53 2015 +0300 Refs codership/mysql-wsrep#113 Protecting non replicated FLUSH session from brute force aborts commit045b31c8f4Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Apr 20 05:58:24 2015 -0700 Test cases for codership/mysql-wsrep/110 commitdc9e325407Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Mon Apr 20 13:18:21 2015 +0300 refs codership/mysql-wsrep#110 - clear table map events on SAVEPOINT Clear binlog table maps before writing SAVEPOINT query event into binlog cache. This enforces recreation of table map events for the following row event. commitd0e24c6799Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Apr 1 02:52:24 2015 -0700 Galera MTR Tests: Attempt to remove rare sporadic failures in galera_transaction_replay.test by waiting for all transactions to get blocked before proceeding. commitf8b724db28Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Mar 31 06:43:38 2015 -0700 Galera MTR Tests: Enable the use of --parallel for port-intensive Galera tests by additionally specifying --port-group-size=50 commit9f716ae9d3Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Sun Mar 29 23:56:21 2015 -0700 Galera MTR: Disable rpl.rpl_rotate_logs binlog.binlog_index due to codership/mysql-wsrep#71 commitfa5f18d673Merge:f533b2b46237ae601a87Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Sep 9 20:51:39 2015 -0400 Merge branch '5.5-galera' into 10.0-galera commit37ae601a87Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Sep 9 18:54:14 2015 -0400 Update WSREP_PATCH_REVNO commit760b0c4758Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Aug 27 00:41:56 2015 -0700 Bump WSREP_PATCH_VERSION in cmake/wsrep.cmake to 12 commitbee94cc9f4Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Jul 7 22:34:25 2015 -0700 Fixes codership/mysql-wsrep#153 use --defaults-extra-file with mysqldump SST commit55dfddff1dAuthor: Alexey Yurchenko <ayurchen@gmail.com> Date: Tue Jun 9 17:02:26 2015 +0300 Fixing donate callback return code commit0465e3a117Author: Alexey Yurchenko <ayurchen@gmail.com> Date: Tue Jun 9 11:36:31 2015 +0300 Logging message cleanup commitd809fcc301Author: Alexey Yurchenko <ayurchen@gmail.com> Date: Mon Jun 8 21:06:22 2015 +0300 This commit fixes - errno handling in wsp::env::append() method, where error could be returned by mistake - return code of sst_prepare_other() when pthread_create() fails - it was returning positive error code which by convention is treated as success. commit1b1410c449Author: Alexey Yurchenko <ayurchen@gmail.com> Date: Mon Jun 8 12:23:53 2015 +0300 Slight cleanup improvement on a previous commit. commit62c2539376Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Jun 8 01:46:20 2015 -0700 Refs codership/mysql-wsrep#143 . Account for the case where the SST password is empty commita7ea3ec34dAuthor: Alexey Yurchenko <ayurchen@gmail.com> Date: Sat Jun 6 01:38:07 2015 +0300 Synced xtrabackup SST fixes from Percona tree (as of PXC 5.6.24-25.11 release). This fixes/adresses the following LP bugs: - LP1380697: wsrep_sst_xtrabackup-v2 doesn't stop when mysql is SIGKILLed. (full fix for this (as engineeered by Percona) requires Linux-specific patch that we don't carry, but keep xtrabackup scripts as close as possible) - LP1399134: Log the innobackupex/SST logs in SST to syslog if possible. (fixed) - LP1405668: Race condition between donor and joiner in PXB SST. (fixed) - LP1405985: Fail early if xtrabackup_checkkpoints is missing. (fixed) - LP1407599: wsrep_sst_xtrabackup-v2 script causes innobackupex to print a false positive stack trace into the log. (fixed) - LP1441762: IST Fails with SST script error. (fixed) - LP1451670: Fail when move-back fails in xtrabackup SST. (fixed) commitd78110e7faAuthor: Alexey Yurchenko <ayurchen@gmail.com> Date: Sat Jun 6 01:08:41 2015 +0300 Refs codership/mysql-wsrep#141: this commit 1. Passes wsrep_sst_auth_value to SST scripts via WSREP_SST_OPT_AUTH envronmental variable, so it never appears on the command line 2. In mysqldump and xtrabackup* SST scripts which rely on MySQL authentication, instead of passing password on the command line, SST script sets MYSQL_PWD environment variable, so that password also never appears on the mysqldump/innobackupex command line. commit4f4f3a5e32Author: Alexey Yurchenko <ayurchen@gmail.com> Date: Sat May 2 22:25:39 2015 +0300 Fixes codership/mysql-wsrep#118 commit416b811a4aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Sep 8 21:56:25 2015 +0200 MDEV-8775 enabling encryption is too error-prone create a "preset" file to enable all encryption options at once commit7bd2f20e88Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Sep 8 17:07:34 2015 +0200 make encrypt-binlog and encrypt-tmp-files to fail if no encryption --encrypt-binlog and --encrypt-tmp-files used to mean "encrypt XXX if encryption is available, otherwise don't encrypt", now they mean "encrypt or fail with an error". commit39b46ae934Author: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 9 15:39:09 2015 +0400 MDEV-8706 Wrong result for SELECT..WHERE time_column=TIMESTAMP'2015-08-30 00:00:00' AND time_column='00:00:00' commit3fcd84c289Author: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 9 08:11:43 2015 +0400 MDEV-8741 Equal field propagation leaves some remainders after simplifying WH ERE zerofill_column=2010 AND zerofill_column>=2010 commit4cb6edba78Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Sep 8 17:46:03 2015 -0400 Update failing galera tests commit28ad6a7f28Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Sep 8 17:43:48 2015 -0400 MDEV-8763: Galera tests failures with --ps-protocol (MDEV-8617: Post-fix for 10.1) * Reset THD's PS members before returning when node is not ready * Add CF_SKIP_WSREP_CHECK flag to COM_STMT_XXX commands * Skip TO replication of COM_STMT_PREPAREs for MyISAM * Updated tests commit067ed23c27Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Sep 8 21:01:58 2015 +0300 MDEV-8774: Test innodb.innodb_bug53290 failures on buildbot Problem was -O2 and __attribute__((nonnull)) when it should have been __attribute__((nonnull(1,2,3,4,5))) commitbbb238ce75Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Sep 8 15:43:48 2015 +0200 disable main.max_statement_time test commitedb37ae3c7Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Sep 8 15:38:11 2015 +0200 disable encrypt_tmp_files and encrypt_binlog by default commit2c1553e545Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Sep 8 16:08:08 2015 +0300 MDEV-8774: Test innodb.innodb_bug53290 failures on buildbot Fixed unsafe reference to null pointer. commitde269f2f1fAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Sep 8 16:02:29 2015 +0400 MDEV-8766 Wrong result for SELECT..WHERE LENGTH(time_column)=8 AND time_column=TIMESTAMP'2001-01-01 10:20:31' commitb119110a82Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Sep 5 16:24:11 2015 +0200 MDEV-8581 Unique prefix for default-tmp-storage-engine does not work remove old "to-be-implemented" definition of the default-tmp-storage-engine option. commit509b836623Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Sep 4 15:54:20 2015 +0300 MDEV-8708: InnoDB temp file encryption Added encryption support for online alter table where InnoDB temporary files are used. Added similar support also for tables containing full text-indexes. Made sure that table remains encrypted during discard and import tablespace. commitf8754d652eMerge:d6c5e7e2cc42574427e6Author: Otto Kekäläinen <otto@seravo.fi> Date: Mon Sep 7 22:21:35 2015 +0300 Merge branch '10.1' of https://github.com/MariaDB/server into ok-debpkg-10.1 commit8a154ecde0Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Sep 7 18:53:25 2015 +0200 Add Json_Get_Item (and Bson_File?) functions modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h commit42574427e6Author: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 7 17:43:53 2015 +0400 MDEV-8699 Wrong result for SELECT..WHERE HEX(date_column)!='323030312D30312D3031' AND date_column='2001-01-01x' commit2029163999Author: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 7 11:07:40 2015 +0400 MDEV-8742 Wrong result for SELECT..WHERE view_latin1_swedish_ci_field='a' COLLATE latin1_bin The fix for MDEV-8749 also fixed MDEV-8742. Just adding the test case from the bug report. commitbf7a2bb12cAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 7 10:50:27 2015 +0400 MDEV-8704 Wrong result for SELECT..WHERE LENGTH(double_column)!=6 AND double_column=100e0 commit5448e0a6dcAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Sep 7 08:34:04 2015 +0300 MDEV-8745: Bad InnoDB logging: "[Note] InnoDB: not started" commite7dcec5471Author: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 7 08:55:55 2015 +0400 MDEV-8703 Wrong result for SELECT..WHERE LENGTH(decimal_10_1_column)!=3 AND decimal_10_1_column=1.10 commit0736cddbd4Author: Alexander Barkov <bar@mariadb.org> Date: Mon Sep 7 06:45:51 2015 +0400 Field_num::get_equal_const_item() appeared to be in a wrong file (item.cc). Moving to field.cc. commit4be6eee8f1Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Sep 7 02:22:35 2015 +0300 MDEV-8760 main.mysqlbinlog_row_big fails due to new default for max_allowed_packet Follow-up for MDEV-6066: new default value, the result file needs to be updated commite6162888b8Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Sep 7 02:18:49 2015 +0300 MDEV-8761 encryption.innodb-bad-key-change2 fails with static file_key_management plugin Suppress errors about not being able to load plugins from file_key_management library. Errors about the non-existing library are already suppressed globally. commit675ca12ae4Author: Elena Stepanova <elenst@montyprogram.com> Date: Sun Sep 6 21:01:59 2015 +0300 Follow-up for MDEV-6066 (new defaults from 5.6 and 5.7) New defaults for query cache caused wrong test output commit1a36caf0e9Author: Alexander Barkov <bar@mariadb.org> Date: Sun Sep 6 18:49:17 2015 +0400 MDEV-8729 Wrong result for SELECT..WHERE HEX(enum_column)='61' AND enum_column='a ' commit7915abffbfAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Sep 6 15:51:48 2015 +0200 Add experimental Bson_Array function (not documented) Change names of functions not returning Json. modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h modified: storage/connect/mysql-test/connect/r/json_udf.result modified: storage/connect/plugutil.c modified: storage/connect/value.cpp modified: storage/connect/value.h commite0df116056Author: Alexander Barkov <bar@mariadb.org> Date: Sun Sep 6 13:25:47 2015 +0400 A clean-up after the patch for MDEV-8747 and MDEV-8749: removing IMPOSSIBLE_RESULT from Item_result, as it's not needed any more. The fact that an Item is not in a comparison context is now always designated by IDENTITY_SUBST in Subst_constraint. Previously IMPOSSIBLE_RESULT and IDENTITY_SUBST co-existed but actually meant the same thing. commitc108019a48Author: Alexander Barkov <bar@mariadb.org> Date: Sun Sep 6 01:30:46 2015 +0400 MDEV-8747 Wrong result for SELECT..WHERE derived_table_column='a' AND derived_table_column<>_latin1'A' COLLATE latin1_bin MDEV-8749 Wrong result for SELECT..WHERE derived_table_enum_column='number' AND derived_table_enum_column OP number commit3d9abaf052Author: Alexander Barkov <bar@mariadb.org> Date: Sat Sep 5 23:54:18 2015 +0400 MDEV-8752 Wrong result for SELECT..WHERE CASE enum_field WHEN 1 THEN 1 ELSE 0 END AND a='5' commitd6c5e7e2ccMerge:b9fee6087167dbfab3d7Author: Otto Kekäläinen <otto@seravo.fi> Date: Sat Sep 5 21:28:14 2015 +0300 Merge branch '10.1' of https://github.com/MariaDB/server into ok-debpkg-10.1 commit67dbfab3d7Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sat Sep 5 14:30:42 2015 +0300 Fix test not to be run on embedded, because of restart. commita0df8225ecAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sat Sep 5 07:18:57 2015 +0300 MDEV-8753: 10.1 build is broken: xtradb/handler/ha_innodb.cc:21430: error: redefinition of 'void ib_push_warning(trx_t*, ulint, const char*, ...)' Fixed bad merge. commite04723d754Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Sep 4 20:09:20 2015 +0300 MDEV-8750: Server crashes in page_cur_is_after_last on altering table using a wrong encryption key Analysis: Server tried to continue reading tablespace using a cursor after we had resolved that pages in the tablespace can't be decrypted. Fixed by addind check is tablespace still encrypted. commit7e916bb86fAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Aug 31 19:47:14 2015 +0300 MDEV-8588: Assertion failure in file ha_innodb.cc line 21140 if at least one encrypted table exists and encryption service is not available Analysis: Problem was that in fil_read_first_page we do find that table has encryption information and that encryption service or used key_id is not available. But, then we just printed fatal error message that causes above assertion. Fix: When we open single table tablespace if it has encryption information (crypt_data) store this crypt data to the table structure. When we open a table and we find out that tablespace is not available, check has table a encryption information and from there is encryption service or used key_id is not available. If it is, add additional warning for SQL-layer. commite1978234ebAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sun Aug 16 09:53:27 2015 +0300 MDEV-8588: Assertion failure in file ha_innodb.cc line 21140 if at least one encrypted table exists and encryption service is not available Analysis: Problem was that in fil_read_first_page we do find that table has encryption information and that encryption service or used key_id is not available. But, then we just printed fatal error message that causes above assertion. Fix: When we open single table tablespace if it has encryption information (crypt_data) store this crypt data to the table structure. When we open a table and we find out that tablespace is not available, check has table a encryption information and from there is encryption service or used key_id is not available. If it is, add additional warning for SQL-layer. commite9b6f95013Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 4 16:30:11 2015 +0200 test failure commit6246b4c9f1Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 4 12:33:14 2015 +0200 update encryption plugin and service versions commit096510d02cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 4 12:28:47 2015 +0200 fix dbug tags commit7cd3c427daAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 4 11:39:24 2015 +0200 document new encryption plugin api commitbc12d5fd43Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 3 18:06:55 2015 +0200 MDEV-6066: Merge new defaults from 5.6 and 5.7 cosmetic fixes. test fixes. commite3982cead2Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Tue Aug 11 18:45:38 2015 +0200 MDEV-6066: Merge new defaults from 5.6 and 5.7 (defaults changed, QC can be stopped with no-zero size) commit21daa7b929Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Mon Aug 10 21:45:11 2015 +0200 MDEV-6066: Merge new defaults from 5.6 and 5.7 (autoset) --autoset- command line prefix added commitb85a00161eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Sep 2 09:58:08 2015 +0200 MDEV-8264 encryption for binlog * Start_encryption_log_event * --encrypt-binlog command line option based on google patches. commit41d68cabeeAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 31 16:35:37 2015 +0200 cleanup: Log_event::write() and MYSQL_BIN_LOG::write_cache() Introduce Log_event_writer() that encapsulates writing data to an IO_CACHE with automatic checksum calculation. Now all events properly checksum themselves as needed. Use Log_event_writer in MYSQL_BIN_LOG::write_cache() instead of copy-pasting its logic all over. Later Log_event_writer will also do encryption. commit704ba5c514Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Aug 27 13:48:32 2015 +0200 cleanup: correct usage of semicolons in sql_yacc.yy commitc862c15bbaAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Aug 25 17:29:58 2015 +0200 cleanup: [partial] removal of llstr() now when my_vsnprintf() supports %llu for a few years already. commitfff6f4278bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Aug 28 02:34:03 2015 +0200 Revertf1abd015, make a smaller fix commitf1abd015dcAuthor: Andrei Elkin <aelkin@mysql.com> Date: Thu Nov 12 17:10:19 2009 +0200 Bug #47210 first execution of "start slave until" stops too early commit1720fcdcbcAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 24 13:09:03 2015 +0200 cleanup DBUG, DBUG_DUMP_EVENT_BUF introduce DBUG_DUMP_EVENT_BUF, remove few unused DBUG_EXECUTE_IF's simplify few DBUG_PRINT's remove few redundant #ifndef DBUG_OFF's commit781e18ec4dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 30 11:18:48 2015 +0200 test cleanup: use --replace_result correctly * replace binlog positions where they are calculated (instead of --disable_query_log) * don't replace binlog positions when they're hard-coded anyway commit55d7871f98Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Aug 21 23:20:35 2015 +0200 test cleanup: remove Format_description_log_event size dependency 1. use include/show_binlog_events.inc instead of SHOW BINLOG EVENTS 2. use include/show_relaylog_eventc.inc too 3. in all other places where a number might appear in the result file, include binlog_start_pos.inc, calculate the position like pos=`select $binlog_start_pos + 100`; and use replace_result $pos <pos> commit8aa473c4b9Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Aug 21 23:16:54 2015 +0200 fix show_relaylog_events.inc to work for multisource and fix SHOW RELAYLOG 'src_name' EVENTS to respect src_name commit274a47a50bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 31 17:38:31 2015 +0200 cleanup: remove Slave_log_event (unused since 2002) commit2d2286faf3Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 30 15:03:55 2015 +0200 cleanup: use enum_binlog_checksum_alg, not uint8 * fix unireg.h includes * use enum_binlog_checksum_alg for binlog checksum variables, not uint8 commit86b06a0e52Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 4 00:44:34 2015 +0200 cleanup: simplify nested multiline ?(?:(?:)): commit7b54dec1c6Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 31 16:23:01 2015 +0200 cleanup: comments commit89e08bf300Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 30 14:59:12 2015 +0200 cleanup: reformat * reformat long lines * remove useless 'const' * remove unneeded do { ... } while(false} wrapper * remove unneeded method commit5018a6606fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 17 18:38:30 2015 +0200 cleanup: Log_event::read_log_event() There are three Log_event::read_log_event() methods: 1. read the event image from IO_CACHE into String 2. create Log_event from the in-memory event image 3. read the event image from IO_CACHE and create Log_event The 3rd was reading event image into memory and invoking the 2nd to create Log_event. Now the 3rd also uses the 1st to read the event image from IO_CACHE into memory, instead of duplicating its functionality. commit08687f7ef3Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Sep 2 17:03:19 2015 +0200 cleanup: my_checksum remove my_crc_dbug_check (gdb can do it itself). use 0 instead of my_checkum(0, 0, 0) - just as 10.0 does now. commit66b9a9409cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 4 10:32:52 2015 +0200 New encryption API. Piece-wise encryption. Instead of encrypt(src, dst, key, iv) that encrypts all data in one go, now we have encrypt_init(key,iv), encrypt_update(src,dst), and encrypt_finish(dst). This also causes collateral changes in the internal my_crypt.cc encryption functions and in the encryption service. There are wrappers to provide the old all-at-once encryption functionality. But binlog events are often written piecewise, they'll need the new api. commitd94a982adbAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Sep 1 14:36:41 2015 +0200 my_crypt unittest commite238d6c513Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 16 22:22:52 2015 +0200 String::release and String::reset methods Rename reassociate to reset and create an inverse method release. Method names are chosen to match std::unique_ptr methods. commit4569a895f9Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Aug 11 13:03:25 2015 +0200 simplify and unify my_safe_alloca usage commitb6776b3ca5Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Sep 1 18:54:23 2015 +0200 package new SELinux/AppArmor policies instead of old ones commita0114b8627Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Sep 1 22:00:26 2015 +0200 cmake: don't repeat yourself make repeated cmake runs less verbose: * remove few not very useful MESSAGE's * only run pkg_check_modules() if there's no cached result * only print QQGraph messages on the first run commite74f91dfd7Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Sep 1 21:58:10 2015 +0200 cmake: always use the same function to test for compiler flags Fix all cmake tests (including plugin) to use MY_CHECK_AND_SET_COMPILER_FLAG. And fix that function to be compatible with cmake 3.0. This way flag checks are correctly cached (even in cmake 3.0) and properly reused. commitefbd4bb039Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Aug 13 09:22:01 2015 +0200 cmake: fix warnings when PLUGIN_MROONGA=NO commitd33c8831e8Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 4 08:47:29 2015 +0200 more 32-bit fixes commit1a599c79ffAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 3 21:51:45 2015 +0200 test fixes for 32bit commitb9fee60871Author: Otto Kekäläinen <otto@seravo.fi> Date: Thu Sep 3 19:09:08 2015 +0300 Revert "Make galera-3 a Recommends instead of Depends in Debian packaging" This reverts commit6bd94cf542. Without galera as a compulsory dependency, test suite will not pass due to failing: wsrep.pool_of_threads wsrep.binlog_format wsrep.mdev_6832 wsrep.mdev_7798 commit8f6aac81d7Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 3 17:11:18 2015 +0200 fix innodb.innodb_uninstall test to cleanup after itself It caused the following main.innodb_load_xa to fail. commitce8d4d39acAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 3 16:32:17 2015 +0200 cleanup: comment commita5b0a32ac3Merge:09307c443cf533b2b462Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 3 16:32:00 2015 +0200 Merge branch '10.0-galera' into 10.1 commit09307c443cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 3 12:58:53 2015 +0200 clang warning commit530a6e7481Merge:5088cbf4ed4b41e3c7f3Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 3 12:58:41 2015 +0200 Merge branch '10.0' into 10.1 referenced_by_foreign_key2(), needed for InnoDB to compile, was taken from 10.0-galera commit5088cbf4edAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 2 15:56:24 2015 +0400 MDEV-8671 Wrong result for SELECT..WHERE varchar_column=' 1' AND (varchar_column XOR '1') commit9624b08cf3Merge:c104e90eaa0671430252Author: Otto Kekäläinen <otto@seravo.fi> Date: Wed Sep 2 14:47:44 2015 +0300 Merge branch '10.1' of https://github.com/MariaDB/server into ok-debpkg-10.1 commit0671430252Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Sep 2 11:11:24 2015 +0200 After-merge fix. commitef82cb7c2cMerge:4f37a861c909bfaf3a13Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Sep 2 10:53:37 2015 +0200 Merge MDEV-8725 into 10.1 commit4f37a861c9Author: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 2 11:51:07 2015 +0400 The fix for MDEV-8723 unintentionally broke vcol_supported_sql_funcs_myisam and vcol_supported_sql_funcs_innodb. Moving the test for using CHARSET(), COLLATION(), COERCIBILITY() in virtual column from vcol_supported_sql_funcs_xxx to vcol_blocked_sql_funcs_xxx, as these functions are not supported in virtual columns any longer. Discussed with Sanja on IRC. commitaa1002a35cAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed Sep 2 08:20:49 2015 +0400 MDEV-8723 Wrong result for SELECT..WHERE COLLATION(a)='binary' AND a='a' commitc104e90eaaAuthor: Otto Kekäläinen <otto@seravo.fi> Date: Wed Sep 2 04:26:50 2015 +0300 Unify virtual-* package definitions with official Debian packaging Plus minor other fixes to debian/control file, wrap-and-sort, versioned mariadb-common dependency etc. All changes based on comparison with mariadb-10.0 packaging in official Debian repositories. commit7b344bf940Author: Otto Kekäläinen <otto@seravo.fi> Date: Tue Sep 1 23:06:12 2015 +0300 Add MariaDB 10.0 stanzas next to MariaDB 5.5 in debian/control file This should make the provides/breaks/replaces/conflicts lines work properly when upgrading from mariadb-10.0 to mariadb-10.1 commitcc08c134f7Author: Otto Kekäläinen <otto@seravo.fi> Date: Tue Sep 1 23:01:43 2015 +0300 Add MySQL 5.6 stanzas next to MySQL 5.5 in debian/control file This should make the provides/breaks/replaces/conflicts lines work properly when upgrading from mysql-5.6 to mariadb-packages. commit68810129a0Author: Alexander Barkov <bar@mariadb.org> Date: Tue Sep 1 22:48:17 2015 +0400 MDEV-8695 Wrong result for SELECT..WHERE varchar_column='a' AND CRC32(varchar_column)=3904355907 commit4f0255cbf9Author: Monty <monty@mariadb.org> Date: Tue Sep 1 18:40:54 2015 +0300 Fixed errors and bugs found by valgrind: - If run with valgrind, mysqltest will now wait longer when syncronizing slave with master - Ensure that we wait with cleanup() until slave thread has stopped. - Added signal_thd_deleted() to signal close_connections() that all THD's has been freed. - Check in handle_fatal_signal() that we don't use variables that has been freed. - Increased some timeouts when run with --valgrind Other things: - Fixed wrong test in one_thread_per_connection_end() if galera is used. - Removed not needed calls to THD_CHECK_SENTRY() when we are calling 'delete thd'. commit56aa19989fAuthor: Monty <monty@mariadb.org> Date: Mon Aug 31 12:57:46 2015 +0300 MDEV-6152: Remove calls to current_thd while creating Item Part 5: Removing calls to current_thd in net_read calls, creating fields, query_cache, acl and some other places where thd was available commit8ea9b8c0b1Author: Alexander Barkov <bar@mariadb.org> Date: Tue Sep 1 19:24:58 2015 +0400 MDEV-8722 The patch for MDEV-8688 disabled equal field propagation for temporal column and BETWEEN and IN Item::cmp_context was inconsistently used in combination with cmp_type() and result_type() in different places of the code. Fixed to use cmp_type() in all places where cmp_context is involved, to avoid unexpected results for temporal data types (which have result_type()==STRING_RESULT and cmp_type==TIME_RESULT). commitbd3864efe4Merge:b007dfb101a3c24ee739Author: Otto Kekäläinen <otto@seravo.fi> Date: Tue Sep 1 13:50:04 2015 +0300 Merge branch '10.1' of https://github.com/MariaDB/server into ok-debpkg-10.1 commita3c24ee739Author: Alexander Barkov <bar@mariadb.org> Date: Mon Aug 31 18:18:10 2015 +0400 MDEV-8707 Wrong result for SELECT..WHERE varchar_column=DATE'2001-01-01' AND varchar_column='2001-01-01' commitb007dfb101Author: Otto Kekäläinen <otto@seravo.fi> Date: Mon Aug 31 09:18:30 2015 +0300 Typofix: preceeding -> preceding commite87e26af7dMerge:6bd94cf54244a99777bfAuthor: Otto Kekäläinen <otto@seravo.fi> Date: Mon Aug 31 09:07:09 2015 +0300 Merge branch '10.1' of https://github.com/MariaDB/server into ok-debpkg commit6bd94cf542Author: Otto Kekäläinen <otto@seravo.fi> Date: Sun Aug 30 22:59:27 2015 +0300 Make galera-3 a Recommends instead of Depends in Debian packaging Having galera-3 as a Depends stops installation of proceeding on systems where package galera-3 is not available. The server can run fine withouth galera enabled, therefore a more slack relationship is more appropriate. commit44a99777bfAuthor: Alexander Barkov <bar@mariadb.org> Date: Sat Aug 29 23:08:15 2015 +0400 MDEV-8698 Wrong result for SELECT..WHERE a BETWEEN 'a' AND 'c' COLLATE latin1_bin; commit787adc6166Author: Alexander Barkov <bar@mariadb.org> Date: Sat Aug 29 21:41:37 2015 +0400 MDEV-8680 Wrong result for SELECT..WHERE a IN ('a' COLLATE latin1_bin,'b') AND a='a' The fix for MDEV-8688 fixed MDEV-8680 as well. Just adding a test case. commitf071a12498Author: Alexander Barkov <bar@mariadb.org> Date: Sat Aug 29 19:26:30 2015 +0400 MDEV-8688 Wrong result for SELECT..WHERE varchar_column IN (1,2,3) AND varchar_column=' 1'; commit09fb51255aAuthor: Alexander Barkov <bar@mariadb.org> Date: Sat Aug 29 18:45:04 2015 +0400 Clean-up: removing duplicate code: removing Item_func_in::compare_collation() and Item_func_between::compare_collation(), and adding Item_func_opt_neg::compare_collation() instead. commitb4e56a5658Author: Alexander Barkov <bar@mariadb.org> Date: Sat Aug 29 16:31:11 2015 +0400 Moving common members of Item_func_in and Item_func_between to their parent Item_func_opt_neg. A pre-requisite patch for a number of upcoming equal field propagation related bug fixes. commit3ba2a958beAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Aug 28 17:03:09 2015 +0400 MDEV-8694 Wrong result for SELECT..WHERE a NOT LIKE 'a ' AND a='a' Note, the patch for MDEV-8661 unintentionally fixed MDEV-8694 as well, as a side effect. Adding a real clear fix: implementing Item_func_like::propagate_equal_fields() with comments. commit3bca8db4f9Author: Monty <monty@mariadb.org> Date: Thu Aug 27 10:07:32 2015 +0300 MDEV-6152: Remove calls to current_thd while creating Item - Part 4: Removing calls to sql_alloc() and sql_calloc() Other things: - Added current_thd in some places to make it clear that it's called (easier to remove later) - Move memory allocation from Item_func_case::fix_length_and_dec() to Item_func_case::fix_fields() - Added mem_root to some new calls - Fixed some wrong UNINIT_VAR() calls - Fixed a bug in generate_partition_syntax() in case of errors - Added mem_root to argument to new thread_info - Simplified my_parse_error() call in sql_yacc.yy commit3cb578c001Author: Monty <monty@mariadb.org> Date: Mon Aug 24 14:42:07 2015 +0300 MDEV-6152: Remove calls to current_thd while creating Item - Part 3: Adding mem_root to push_back() and push_front() Other things: - Added THD as an argument to some partition functions. - Added memory overflow checking for XML tag's in read_xml() commita273f016a1Author: Otto Kekäläinen <otto@seravo.fi> Date: Wed Aug 12 23:03:45 2015 +0200 Fix spelling errors commitba340d8c47Author: Alexander Barkov <bar@mariadb.org> Date: Wed Aug 26 23:17:34 2015 +0400 Making Item_field::can_be_substituted_to_equal_item() private. commit1b6b44b6b5Author: Alexander Barkov <bar@mariadb.org> Date: Wed Aug 26 22:32:01 2015 +0400 MDEV-8661 Wrong result for SELECT..WHERE a='a' AND a='a' COLLATE latin1_bin MDEV-8679 Equal field propagation is not used for VARCHAR when it safely could commitc0b7bf2625Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Aug 26 18:07:34 2015 +0300 MDEV-8683: Bunch of tests fail in buildbot on new InnoDB variables commit3ed384baf0Merge:cf154cc9d2f66ef6a05dAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Aug 26 14:59:33 2015 +0300 Merge pull request #94 from ericherman/evict_table_metric Evict table metric commitf66ef6a05dAuthor: Eric Herman <eric@freesa.org> Date: Wed Aug 26 11:50:47 2015 +0200 Add lru evict count for the idle loop (xtradb) commitb7abdcf5c7Author: Eric Herman <eric@freesa.org> Date: Wed Aug 26 11:48:19 2015 +0200 Add lru evict count for the idle loop (innobase) port of work by dveeden:555ca34958commitdf32920ba0Author: Eric Herman <eric@freesa.org> Date: Wed Aug 26 10:26:19 2015 +0200 Add eviction count for table cache lru cleanup (xtradb) commit4f4373fe31Author: Eric Herman <eric@freesa.org> Date: Wed Aug 26 10:02:06 2015 +0200 Add eviction count for table cache lru cleanup (innobase) This is a port of dveeden's work:e9d00e859e(Mostly changes in linenumbers, a bit of whitespace fix-up.) commitcf154cc9d2Author: Elena Stepanova <elenst@montyprogram.com> Date: Wed Aug 26 02:09:57 2015 +0300 MDEV-8676 Some storage_engine tests fail on 10.1 - foreign_keys: adjusted according to code changes; - type_spatial: adjusted according to code changes; - type_spatial_indexes (for MyISAM): disabled till MDEV-8675 is fixed commitf533b2b462Merge:c6a0cbdac6472d66320dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Aug 25 11:15:45 2015 -0400 Merge branch '5.5-galera' into 10.0-galera commit871259f171Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Aug 25 16:15:22 2015 +0300 MDEV-8665: innodb.innodb_bug14147491 fails in buildbot on some debug builds Added MTR suppressions for database corruption that is intentionally caused in test. commit27444871a8Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Aug 25 11:46:31 2015 +0400 UNINIT_VAR() fixes Restored self-initialization version of UNINIT_VAR() for all gcc versions. Fixed UNINIT_VAR() usage: it is supposed to be used along with declaration. commitc18110bd52Author: Elena Stepanova <elenst@montyprogram.com> Date: Sun Aug 23 00:57:57 2015 +0300 Increase the version number commit175ef097e2Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Aug 22 18:11:42 2015 +0200 Handle is_null and error arguments Fix wrong calling sequence for RESULT_INT and RESULT_REAL functions. modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h commitf741fcc9e5Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Aug 22 12:13:37 2015 +0200 Handle constant function and argument modified: storage/connect/jsonudf.cpp Record result of json test modified: storage/connect/mysql-test/connect/r/json.result commit472d66320dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Aug 22 01:18:02 2015 -0400 MDEV-8149: Random mtr test failures during warning check Do not replicate commands from check-warnings.test to other nodes in the cluster. commit98ba2bf424Author: Alexander Barkov <bar@mariadb.org> Date: Fri Aug 21 17:08:55 2015 +0400 Clean-up: moving compare_collation() from Item to Item_bool_func. commit1bae0d9e56Author: Monty <monty@mariadb.org> Date: Thu Aug 20 15:24:13 2015 +0300 Stage 2 of MDEV-6152: - Added mem_root to all calls to new Item - Added private method operator new(size_t size) to Item to ensure that we always use a mem_root when creating an item. This saves use once call to current_thd per Item creation commit31e365efaeAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Aug 11 11:18:38 2015 +0400 MDEV-8010 - Avoid sql_alloc() in Items (Patch #1) Added mandatory thd parameter to Item (and all derivative classes) constructor. Added thd parameter to all routines that may create items. Also removed "current_thd" from Item::Item. This reduced number of pthread_getspecific() calls from 290 to 177 per OLTP RO transaction. commit4ee28865f6Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Aug 20 20:55:52 2015 -0400 MDEV-5146 : Bulk loads into partitioned table not working When wsrep is enabled, for any update on innodb tables, the corresponding keys are appended to galera's transaction writeset (wsrep_append_keys()). However, for LOAD DATA, this got skipped if binary logging was disabled or it was non-ROW based. As a result, while the updates from LOAD DATA on non-partitioned tables replicated fine as wsrep implicitly enables binary logging (if not enabled, explicitly), the same did not work on partitioned tables as for partitioned tables the binary logging gets disabled temporarily (ha_partition::write_row()). Fixed by removing the unwanted conditions from the check. Also backported some changes from 10.0-galera to make sure wsrep_load_data_splitting affects LOAD DATA commands only. commitccd39b2dd3Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Aug 20 09:55:54 2015 -0400 Backport partition tests from 10.0-galera. commitffc0f5b3deAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Aug 19 17:52:33 2015 +0200 Add new UDF noconst. modified: storage/connect/noconst.c Fix a few bugs in json udf's. modified: storage/connect/jsonudf.cpp commit98bebad672Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Aug 18 17:03:28 2015 -0400 Fix for a typo. commit69ce20c4bdAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Aug 18 12:03:29 2015 +0200 Add new json UDF Json_Object_List. modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h commit4374da63f0Merge:5fe8b747e9dfac82e44dAuthor: Monty <monty@mariadb.org> Date: Tue Aug 18 11:27:00 2015 +0300 Merge /my/maria-10.1-default into 10.1 commitdfac82e44dAuthor: Monty <monty@mariadb.org> Date: Tue Aug 18 11:17:54 2015 +0300 Fixed failing tests and compiler warnings - UNINIT_VAR() was required for 4.8.3 on openSUSE 13.2 commit6b20342651Author: Monty <monty@mariadb.org> Date: Tue Aug 18 00:42:08 2015 +0300 Ensure that fields declared with NOT NULL doesn't have DEFAULT values if not specified and if not timestamp or auto_increment In original code, sometimes one got an automatic DEFAULT value in some cases, in other cases not. For example: create table t1 (a int primary key) - No default create table t2 (a int, primary key(a)) - DEFAULT 0 create table t1 SELECT .... - Default for all fields, even if they where defined as NOT NULL ALTER TABLE ... MODIFY could sometimes add an unexpected DEFAULT value. The patch is quite big because we had some many test cases that used CREATE ... SELECT or CREATE ... (...PRIMARY KEY(xxx)) which doesn't have an automatic DEFAULT anymore. Other things: - Removed warnings from InnoDB when waiting from semaphore (got this when testing things with --big) commit92fd658327Author: Monty <monty@mariadb.org> Date: Fri Jul 17 16:27:41 2015 +0300 MDEV-8475 stale .TMM file causes MyiSAM and Aria engine to stop serving the table Issue was two fold (both in MyISAM and Aria) - optimize and repair failed if there was an old .TMM file around. As optimized and repair are protected against multiple execution, I decided to change so that we just truncate the file if it exists. - I had missed to check for error condition if creation of the temporary index file failed. This caused the strange behaviour that it looked as if optimized would have worked once. commit5fe8b747e9Author: Alexander Barkov <bar@mariadb.org> Date: Mon Aug 17 15:53:43 2015 +0400 Adding EXPLAIN SELECT tests for: MDEV-7649 wrong result when comparing utf8 column with an invalid literal This is a preparatory patch for: MDEV-8433 Make field<'broken-string' use indexes commitc6a0cbdac6Merge:5cf737c07afe757e006cAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 14 14:59:43 2015 -0400 Merge branch '5.5-galera' into 10.0-galera commitfe757e006cAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 14 13:45:52 2015 -0400 Fix for some failing tests. commit55cb3d8b44Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Aug 14 17:07:50 2015 +0200 Add new json UDFs and make possible to use a json file name as json item. modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/mysql-test/connect/r/json_udf.result modified: storage/connect/mysql-test/connect/t/json.test modified: storage/connect/tabjson.cpp Fix wrong calculation of Estimated Length when the table has virtual or special columns modified: storage/connect/reldef.h modified: storage/connect/tabdos.cpp Fix wrong handling of null values in ODBCCOL::ReadColumn modified: storage/connect/tabodbc.cpp Fix crash when SetValue_char is called with a negative length value. This can happen in odbconn.cpp when SQLFetch returns SQL_NO_TOTAL (-4) as length. modified: storage/connect/odbconn.cpp modified: storage/connect/value.cpp commit78b80cb6baAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Aug 14 18:34:41 2015 +0400 Adding MY_CHARSET_HANDLER::native_to_mb(). This is a pre-requisite patch for: - MDEV-8433 Make field<'broken-string' use indexes - MDEV-8625 Bad result set with ignorable characters when using a prefix key - MDEV-8626 Bad result set with contractions when using a prefix key commitbfb6ea0232Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Aug 14 11:09:06 2015 +0300 MDEV-8589: Non-default ENCRYPTION_KEY_ID is ignored upon reading a table Analysis: Problem was that when a new tablespace is created a default encryption info is also created and stored to the tablespace. Later a new encryption information was created with correct key_id but that does not affect on IV. Fix: Push encryption mode and key_id to lower levels and create correct encryption info when a new tablespace is created. This fix does not contain test case because, currently incorrect encryption key causes page corruption and a lot of error messages to error log causing mtr to fail. commita80753594aAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Aug 14 15:49:56 2015 +0300 MDEV-8591: Database page corruption on disk or a failed space, Assertion failure in file buf0buf.cc line 2856 on querying a table using wrong default encryption key Improved error messaging to show based on original page before encryption is page maybe encrypted or just corrupted. commit7145ca477cAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Aug 14 11:11:39 2015 +0400 Recording range_mrr_icp.result (forgotten in the patch for MDEV-8613) commit5cf737c07aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 14 02:46:32 2015 -0400 MDEV-8464 : ALTER VIEW not replicated in some cases (Additional fix in 10.0-galera branch) THD's lex->definer initially holds "*current_user" for CURRENT_USER(). Use get_current_user() to get the real current user. commit52f1543ef1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 14 01:37:21 2015 -0400 Fix for a memory leak. commite996304189Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 14 01:31:38 2015 -0400 MDEV-8617: Multiple galera tests failures with --ps-protocol (Additional fixes in 10.0-galera branch) * Reset THD's PS members before returning when node is not ready. * Update galera_suspend_slave.test commite99bc0d1e2Author: Alexander Barkov <bar@mariadb.org> Date: Fri Aug 14 09:23:03 2015 +0400 Removing unused String_copier::copy_fix. Fixing misleading comments in String_copiers::well_formed_copy(). commit8a18bb9694Merge:91acc8b16fc18e0dab8aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 14 01:17:57 2015 -0400 Merge branch '5.5-galera' into 10.0-galera commitc18e0dab8aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 14 00:01:18 2015 -0400 MDEV-8617: Multiple galera tests failures with --ps-protocol In galera cluster, when myisam replication is enabled (wsrep_replicate_myisam=ON), DML statements are replicated in open_tables(). However, in case of prepared statements, for an INSERT, open_tables() gets invoked twice. Once for COM_STMT_PREPARE (to validate and prepare INSERT) and later for COM_STMT_EXECUTE. As a result, the command gets replicated twice. Same happens for REPLACE, UPDATE and DELETE commands. Fixed by adding a check to not replicate during 'prepare' phase. Also changed the order of conditions to make it more efficient. Lastly, in order to support wsrep_dirty_reads, made changes to allow COM_STMT_XXX commands to continue past initial check even when wsrep is not ready. commit0750b2df37Author: Alexander Barkov <bar@mariadb.org> Date: Thu Aug 13 16:41:02 2015 +0400 MDEV-8613 Full table scan for WHERE indexed_varchar_column <=> 'bad-character' commit60985e5375Author: Alexander Barkov <bar@mariadb.org> Date: Thu Aug 13 14:25:51 2015 +0400 MDEV-8610 "WHERE CONTAINS(indexed_geometry_column,1)" causes full table scan commite998dffde7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Aug 12 17:47:25 2015 -0400 MDEV-8598 : Failed MySQL DDL commands and Galera replication RENAME TABLE, unlike other DDLs, was getting replicated before the access check was performed. As a result, the command could get get replicated and thus executed on other nodes, even if it fails on the originating node due to permission issues. Fixed by moving the logic to check user privileges before replicating the command. commit9d884fd3d3Author: Alexander Barkov <bar@mariadb.org> Date: Wed Aug 12 17:28:45 2015 +0400 MDEV-8599 "WHERE varchar_field LIKE temporal_const" does not use range optimizer commit6e091dc7ffAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed Aug 12 14:43:17 2015 +0400 Splitting a static function get_func_mm_tree() into virtual methods in Item_bool_func descendants, which gives some advantages: - Removing the "bool inv" parameter, as its now available through "this" for Item_func_between and Item_func_in, and is not needed for the other Item_func_xxx. - Removing casts - Making a step to data types plugings commit9a64262db2Author: Alexander Barkov <bar@mariadb.org> Date: Wed Aug 12 10:52:12 2015 +0400 Removing RANGE_OPT_PARA::cond Its initialization in Item_func_xxx::get_mm_tree() is redundant: the pointer to the current function is passed to get_mm_tree() anyway. commit86a3613d4eAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Aug 10 11:46:41 2015 +0400 MDEV-8441 Bad SHOW CREATE TABLE output for a table with a virtual column commit840aefc6a3Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Aug 9 14:16:50 2015 -0400 MDEV-8590: Fix embedded build failure commitcd1a11ace3Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Aug 8 15:04:15 2015 -0400 MDEV-7205 : Galera cluster & sql_log_bin = off don't work While sql_bin_log=1(0) is meant to control binary logging for the current session so that the updates to do(not) get logged into the binary log to be replicated to the async MariaDB slave. The same should not affect galera replication. That is, the updates should always get replicated to other galera nodes regardless of sql_bin_log's value. Fixed by making sure that the updates are written to binlog cache irrespective of sql_bin_log. Added test cases. commit91acc8b16fMerge:4c69dc81160403790722Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Aug 8 14:21:22 2015 -0400 Merge tag 'mariadb-10.0.21' into 10.0-galera commit46ad86f6a3Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sat Aug 8 12:49:20 2015 +0300 MDEV-8582: innodb_force_primary_key option does not force PK or unique key Analysis: Handler used table flag HA_REQUIRE_PRIMARY_KEY but a bug on sql_table.cc function mysql_prepare_create_table internally marked secondary key with NOT NULL colums as unique key and did not then fail on requirement that table should have primary key or unique key. commit3307eaab68Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sat Aug 8 10:39:01 2015 +0300 MDEV-8582: innodb_force_primary_key option does not force PK or unique key Analysis: Handler table flag HA_REQUIRE_PRIMARY_KEY alone is not enough to force primary or unique key, if table has at least one NOT NULL column and secondary key for that column. Fix: Add additional check that table really has primary key or unique key for InnoDB terms. commit05bcb088bfAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sat Aug 8 10:09:45 2015 +0300 MDEV-8583: Empty lines in encryption logging Removed extra line break. commit18b0176a05Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Aug 7 15:21:20 2015 +0300 MDEV-8410: Changing file-key-management to example-key-management causes crash and no real error MDEV-8409: Changing file-key-management-encryption-algorithm causes crash and no real info why Analysis: Both bugs has two different error cases. Firstly, at startup when server reads latest checkpoint but requested key_version, key management plugin or encryption algorithm or method is not found leading corrupted log entry. Secondly, similarly when reading system tablespace if requested key_version, key management plugin or encryption algorithm or method is not found leading buffer pool page corruption. Fix: Firsly, when reading checkpoint at startup check if the log record may be encrypted and if we find that it could be encrypted, print error message and do not start server. Secondly, if page is buffer pool seems corrupted but we find out that there is crypt_info, print additional error message before asserting. commit5b9dd459fbMerge:af2f7ce3f9fa51f70dc6Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Aug 7 17:02:51 2015 -0400 Merge tag 'mariadb-5.5.45' into 5.5-galera commit3025c42605Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Aug 7 17:41:35 2015 +0300 Make ANALYZE FORMAT=JSON show execution time for filesort element. commit4c69dc8116Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Aug 6 00:36:40 2015 -0400 MDEV#7501 : alter table exchange partition is not replicated in galera cluster Added logic to replicate ALTER TABLE EXCHANGE PARTITION to other nodes in the cluster. commitafd59b575aMerge:dbd205797b5ca061e65fAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Aug 4 15:47:30 2015 +0200 Merge branch 'mdev8302-3' into 10.1 commitdbd205797bMerge:35a019837e9b9c5e890cAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Aug 4 12:39:22 2015 +0200 Merge MDEV-8302 into 10.1 commit82cecb1c98Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jul 31 11:21:57 2015 -0400 MDEV-8240 : Unknown option 'table_type' when using Connect Engine on MGC Fix for 'reorder' compiler warning. commit0abde01f5eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jul 29 18:04:40 2015 -0400 MDEV-8240 : Unknown option 'table_type' when using Connect Engine on MGC MariaDB Galera server's (MGC) handlerton & THD structures have some extra wsrep members as compared to MariaDB server. As a result, when plugins from packages, built along with MariaDB server like Connect & OQGraph are loaded and accessed by MGC, the objects may get initialized improperly. Fixed by moving the wsrep-additions to the end of the structure. commit35a019837eAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Mon Feb 9 13:41:24 2015 +0400 MDEV-5096 - Wrong error message on attempt to kill somebody else's query ID Attempting to kill query owned by different user now returns better error: "You are not owner of query N" instead of "You are not owner of thread N". commitd517886482Merge:53623d932a26f249f6dbAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Jul 23 15:48:26 2015 +0200 Merge branch 'bb-10.1-serg' into 10.1 commit26f249f6dbAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Jul 23 10:55:24 2015 +0200 compilation failures on Windows commit0ae8bae98fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Jul 22 18:46:36 2015 +0200 fix for 32-bit tests commit3b040a06edAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Jul 22 15:49:38 2015 +0200 Fix (?) retrieving integer arguments in JSON UDF's modified: storage/connect/jsonudf.cpp commitf425c71abaAuthor: Otto Kekäläinen <otto@seravo.fi> Date: Wed Jul 22 13:53:28 2015 +0300 Merge documentation parts in debian/control from downstream commit5a3d752209Author: Otto Kekäläinen <otto@seravo.fi> Date: Wed Jul 22 13:45:43 2015 +0300 Make autobake-deb.sh to omit .git directory from source tar.gz This is useful for developers who run autobake-deb.sh directly from the source tree as the resulting source tar package will be 90% smaller and all operations regarding it consequently 10x faster. commit220b4f2fc2Author: Otto Kekäläinen <otto@seravo.fi> Date: Wed Jul 22 13:15:36 2015 +0300 Merge (most) build dependencies in debian/control with downstream * dpatch cannot be removed yet, as packaging standard isn't updated * we don't want to remove libssl at all, as in upstream we rather use system provided OpenSSL than bundled, non-system updated and less commonly trusted YaSSL * keep versioned dependencies, they might prove helpful when building for multiple distros and releases commit16be184123Author: Otto Kekäläinen <otto@seravo.fi> Date: Wed Jul 22 10:43:55 2015 +0300 Extend debian/control build dependencies to max For tracking purposes this step is committed first before the unnecessary dependencies are trimmed away. libpcre3-dev (>= 2:8.35-3.2~) is however omitted (compared to downstream Debian packaging) as it is not available in precise and we don't want to break builds on precise yet. commit61e31aa5d4Author: Otto Kekäläinen <otto@seravo.fi> Date: Wed Jul 22 00:24:29 2015 +0300 Remove files from debian/* that are unrelevant for this upstream repo * README and NEWS are very old and mostly plain wrong and not needed * Lintian-overrides are relevant only in actual Debian QA systems * watch file was plain wrong and anyway relevant only in downstream distros commit6809fdb741Author: Otto Kekäläinen <otto@seravo.fi> Date: Tue Jul 21 23:37:05 2015 +0300 Update autobake.sh to match control file location. Drop lucid and squeeze support. commit53623d932aAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Jul 22 08:42:52 2015 +0300 MDEV-8522: InnoDB: Assertion failure in file fil0fil.cc line 475 Analysis: In fil_crypt_space_needs_rotation we first make sure that tablespace is found and then separately that it is normal tablespace. Thus, tablespace could be dropped between these two functions calls. Fix: If space is not found from fil_system return tablespace type ULINT_UNDEFINED and naturally do not continue rotating space. commitaf9509d0d8Author: Otto Kekäläinen <otto@seravo.fi> Date: Tue Jul 21 23:24:05 2015 +0300 debian/*: wrap and sort for cleaner diffs commit82e64fde07Author: Otto Kekäläinen <otto@seravo.fi> Date: Tue Jul 21 23:13:05 2015 +0300 Remove debian/dist/* and have just one version Use the slightly better Ubuntu version in both Ubuntu and Debian and latest versions of Debian don't have problems with AppArmor files included in packaging. commit62b5a56191Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Jul 21 12:51:14 2015 +0300 MDEV-8501: encryption.create_or_replace fails in buildbot on P8 builders Analysis: There is race between drop table and encryption threads that could cause encryption thread to enter mutex that has been already released. Fix: When destroying crypt_data first enter the mutex and set crypt data unavailable, then release the memory and clean up the data. This should make the race more unprobable. Additionally, added big_test for create_or_replace as it could fail testcase timeout if you have slow I/O (tested that testcase passes with --mem). commit3ff9634b43Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jul 20 20:28:32 2015 +0200 MDEV-8508 mroonga fails embedded tests in 10.1 as a workaround until the bug is fixed don't run mroonga tests in --embedded mode by default commit3d4c69d224Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jul 20 19:47:46 2015 +0200 compiler warning WARN_DEPRECATED_NO_REPLACEMENT(NULL, ...) was causing a warning, because it expanded into NULL->variables.errmsgs[...] commit82c6b259a5Merge:e35fd2091006913d0162Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jul 20 19:07:59 2015 +0200 Merge https://github.com/Kentoku/MariaDB/tree/10.1 into 10.1 commite35fd20910Merge:6d3bd6588e6771b818a3Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jul 20 18:14:31 2015 +0200 Null-merge branch 'github/10.0-galera' into 10.1 because the actual merge was already done indced5146bdas a patch commitaf2f7ce3f9Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Jul 19 22:51:19 2015 -0400 MDEV-8464 : ALTER VIEW not replicated in some cases In galera, like other DDLs, CREATE/ALTER VIEW commands are recreated and replicated during parsing. The ALGORITHM clause is internally set to VIEW_ALGORITHM_INHERIT if its not explicitly specified by the user. But since its not a valid type to be used in a command, it leads to an assertion failure. The solution is to not include the ALGORITHM clause in the command if its not explicitly specified (or INHERIT). commit6d3bd6588eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Jul 19 21:33:12 2015 -0400 MDEV-8492: Windows builds fail on current 10.1 In non-wsrep builds, wsrep_running_threads should be defined to (0). commitc57edf3b9aAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Mon Jul 20 00:28:22 2015 +0300 MDEV-8500 sys_vars.sysvars_innodb '32bit,xtradb' fails The version in sysvars_innodb,32bit,xtradb.rdiff was not updated commit7046788448Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Sun Jul 19 10:31:24 2015 +0200 Fix build failures. commit13dbb6fa9eMerge:d258f5ff0444c4b2304bAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Sun Jul 19 09:30:36 2015 +0200 Merge MDEV-8496 into 10.1 commitd258f5ff04Author: Elena Stepanova <elenst@montyprogram.com> Date: Fri Jul 17 19:20:50 2015 +0300 MDEV-8495 encryption.innodb_first_page fails sporadically in buildbot The test did not wait until the server shuts down commita392c79552Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Jul 16 11:05:20 2015 +0200 Fix and Enhance remote indexing: - Apply to ODBC tables as well as MYSQL tables - Fix and enhance the CheckCond routine Make ReadKey and MakeKeyWhere handle all conditions modified: storage/connect/.gitattributes modified: storage/connect/.gitignore modified: storage/connect/connect.cc modified: storage/connect/connect.h modified: storage/connect/ha_connect.cc modified: storage/connect/ha_connect.h modified: storage/connect/mycat.cc modified: storage/connect/tabmysql.cpp modified: storage/connect/tabmysql.h modified: storage/connect/tabodbc.cpp modified: storage/connect/tabodbc.h modified: storage/connect/xobject.cpp modified: storage/connect/xobject.h modified: storage/connect/xtable.h Add some new tests: storage/connect/mysql-test/connect/r/endian.result storage/connect/mysql-test/connect/r/mysql_index.result storage/connect/mysql-test/connect/t/endian.test storage/connect/mysql-test/connect/t/mysql_index.test commit0ad00c66d2Author: Monty <monty@mariadb.org> Date: Thu Jul 16 10:26:01 2015 +0300 Fix for MySQL bug #77448 Inconsistent handling of RAND() in WHERE and HAVING Problem was that for queries of type: select rand() r, rand() p, rand() = rand() from a having r = p The optimizer thought that r = p was same as rand() = rand() and this would always be true. The problem was that when testing if two expressions are equal, we didn't take into account no determinstic functions. The fix is to not compare non deterministic functions as equal. commit872a953b22Author: Monty <monty@mariadb.org> Date: Wed Jul 15 16:27:14 2015 +0300 MDEV-8469 Add RESET MASTER TO x to allow specification of binlog file nr Other things: - Avoid calling init_and_set_log_file_name() when opening binary log. - Remove newlines early when reading from index file. - Ensure that reset_logs() will work even if thd is 0 (Can happen on startup) - Added thd to sart_slave_threads() for better error handling. commitdf0498fd76Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jul 14 21:38:17 2015 -0400 Update sys_vars.sys_vars_wsrep result. commitee9bdcf79aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jul 14 17:33:22 2015 -0400 Binlog SE doesn't implement abort_transaction(), so skip warning. commite204116734Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jul 14 17:21:35 2015 -0400 Check supress_my_ok before sending Ok packet (logic lost during merge). commit0e2ce3b745Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jul 14 17:16:28 2015 -0400 Allow binlog row image column marking even for wsrep binlog emulation. commitdd4d81ddfdAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jul 14 16:58:38 2015 -0400 Update read_pos after reading from the cache. commitdced5146bdAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jul 14 16:05:29 2015 -0400 Merge branch '10.0-galera' into 10.1 commit75931feabeAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Jul 14 12:00:05 2015 +0400 MDEV-8362 dash '-' is not recognized in charset armscii8 on select where query commit657f8a8d60Author: Alexander Barkov <bar@mariadb.org> Date: Mon Jul 13 13:16:14 2015 +0400 MDEV-8456 Dead code in Item_cond::fix_fields() and Item_func_between::fix_fields() commit6771b818a3Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jul 10 19:06:42 2015 -0400 MDEV-8383 : "GRANT role TO user" does not replicate Enable replication of GRANT/REVOKE ROLE commands across galera nodes. commitf195f93903Author: Monty <monty@mariadb.org> Date: Fri Jul 10 12:49:05 2015 +0300 Cleanups, fixed warnings from valgrind, fixed failing tests (because on changes in WSREP initialization) commit24881437b7Author: Monty <monty@mariadb.org> Date: Fri Jul 10 09:18:17 2015 +0300 Fixed bug found by bar where we didn't properely check length of last argument for BETWEEN This should not have caused any notable errors in most cases. After fix, we are not using keys to solve MIN/MAX if the string used for comparision is longer thant the column- commit9bb8b74e99Merge:a6c80143877780370343Author: Monty <monty@mariadb.org> Date: Thu Jul 9 14:47:32 2015 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 Conflicts: sql/item_subselect.cc Fixed also typo in comment commita6c8014387Author: Monty <monty@mariadb.org> Date: Thu Jul 9 13:09:36 2015 +0300 Speed and code space optimziation: - Cache variables.lc_messages->errmsgs->errmsgs in variables.errmsgs This gives us 15 byte less code space and 2 memory references for any access to language dependent message, of which there are 500 in the server.. commit7780370343Author: Alexander Barkov <bar@mariadb.org> Date: Wed Jul 8 19:20:07 2015 +0400 MDEV-8336 The meaning of NO_ZERO_DATE is not clear for DATETIME. In some cases NO_ZERO_DATE did not allow datetime values with zero date part and non-zero time part (e.g. '0000-00-00 10:20:30.123456'). Allowing values of this kind in all known pieces of the code. commit8154ef4b16Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jul 7 22:26:44 2015 -0400 MDEV-7067: Server outputs Galera (WSREP) information, even if Galera is disabled Additional changes : * On startup, do not initialize wsrep if wsrep_on=0. * On shutdown, stop wsrep replication only if > 0 wsrep threads are running. commitb08c4201faAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Jul 7 15:59:21 2015 +0400 Removing unused String declaration in Create_field::Create_field commite4f8cea356Author: Alexander Barkov <bar@mariadb.org> Date: Tue Jul 7 09:15:58 2015 +0400 MDEV-8419 utf32: compare broken bytes as "greater than any non-broken character" commit7332af49e4Author: Monty <monty@mariadb.org> Date: Mon Jul 6 20:24:14 2015 +0300 - Renaming variables so that they don't shadow others (After this patch one can compile with -Wshadow and get much fewer warnings) - Changed ER(ER_...) to ER_THD(thd, ER_...) when thd was known or if there was many calls to current_thd in the same function. - Changed ER(ER_..) to ER_THD_OR_DEFAULT(current_thd, ER...) in some places where current_thd is not necessary defined. - Removing calls to current_thd when we have access to thd Part of this is optimization (not calling current_thd when not needed), but part is bug fixing for error condition when current_thd is not defined (For example on startup and end of mysqld) Notable renames done as otherwise a lot of functions would have to be changed: - In JOIN structure renamed: examined_rows -> join_examined_rows record_count -> join_record_count - In Field, renamed new_field() to make_new_field() Other things: - Added DBUG_ASSERT(thd == tmp_thd) in Item_singlerow_subselect() just to be safe. - Removed old 'tab' prefix in JOIN_TAB::save_explain_data() and use members directly - Added 'thd' as argument to a few functions to avoid calling current_thd. commita5f4412bd4Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jul 6 11:40:56 2015 -0400 Fix embedded result to reflect increased system variable's max value length. commit3a606ba210Author: Alexander Barkov <bar@mariadb.org> Date: Mon Jul 6 18:59:33 2015 +0400 Fixing a bug in MDEV-8418 (utf16, utf16le) and MDEV-8417 (utf8mb4). Fixing non-BMP characters to have the same weight, as it was before MDEV-8418 and MDEV-8417. commitb2e324a21fAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Jul 6 15:50:56 2015 +0400 MDEV-8416 ucs2: compare broken bytes as "greater than any non-broken character" MDEV-8418 utf16: compare broken bytes as "greater than any non-broken character" commit35d8ac350dAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Jul 6 10:47:39 2015 +0400 MDEV-8417 utf8mb4: compare broken bytes as "greater than any non-broken character" commit8d4d185a08Author: Monty <monty@mariadb.org> Date: Sun Jul 5 12:40:16 2015 +0300 Simple optimization and removal of compiler warnings commit86377d078eAuthor: Monty <monty@mariadb.org> Date: Sun Jul 5 12:39:46 2015 +0300 Fixes done while working on MDEV-4119: Fixed several optimizer issues relatied to GROUP BY: a) Refering to a SELECT column in HAVING sometimes calculated it twice, which caused problems with non determinstic functions b) Removing duplicate fields and constants from GROUP BY was done too late for "using index for group by" optimization to work c) EXPLAIN SELECT ... GROUP BY did wrongly show 'Using filesort' in some cases involving "Using index for group-by" a) was fixed by: - Changed last argument to Item::split_sum_func2() from bool to int to allow more flags - Added flag argument to Item::split_sum_func() to allow on to specify if the item was in the SELECT part - Mark all split_sum_func() calls from SELECT with SPLIT_SUM_SELECT - Changed split_sum_func2() to do nothing if called with an argument that is not a sum function and doesn't include sum functions, if we are not an argument to SELECT. This ensures that in a case like select a*sum(b) as f1 from t1 where a=1 group by c having f1 <= 10; That 'a' in the SELECT part is stored as a reference in the temporary table togeher with sum(b) while the 'a' in having isn't (not needed as 'a' is already a reference to a column in the result) b) was fixed by: - Added an extra remove_const() pass for GROUP BY arguments before make_join_statistics() in case of one table SELECT. This allowes get_best_group_min_max() to optimize things better. c) was fixed by: - Added test for group by optimization in JOIN::exec_inner for select->quick->get_type() == QUICK_SELECT_I::QS_TYPE_GROUP_MIN_MAX item.cc: - Simplifed Item::split_sum_func2() - Split test to make them faster and easier to read - Changed last argument to Item::split_sum_func2() from bool to int to allow more flags - Added flag argument to Item::split_sum_func() to allow on to specify if the item was in the SELECT part - Changed split_sum_func2() to do nothing if called with an argument that is not a sum function and doesn't include sum functions, if we are not an argument to SELECT. opt_range.cc: - Simplified get_best_group_min_max() by calcuating first how many group_by elements. - Use join->group instead of join->group_list to test if group by, as join->group_list may be NULL if everything was optimized away. sql_select.cc: - Added an extra remove_const() pass for GROUP BY arguments before make_join_statistics() in case of one table SELECT. - Use group instead of group_list to test if group by, as group_list may be NULL if everything was optimized away. - Moved printing of "Error in remove_const" to remove_const() instead of having it in caller. - Simplified some if tests by re-ordering code. - update_depend_map_for_order() and remove_const() fixed to handle the case where make_join_statistics() has not yet been called (join->join_tab is 0 in this case) commit7ab7f5327aAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Jul 3 19:08:18 2015 +0400 Fixing a typo in the previous commit. commitfff30e26c3Author: Alexander Barkov <bar@mariadb.org> Date: Fri Jul 3 18:40:04 2015 +0400 Adding UTF8 related macros to reduce duplicate code. commitaeb8d713f4Author: Alexander Barkov <bar@mariadb.org> Date: Fri Jul 3 17:30:15 2015 +0400 Removing unused code in ctype-utf8.c commit9ad8ff666cAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Jul 3 17:24:16 2015 +0400 MDEV-8415 utf8: compare broken bytes as "greater than any non-broken character" commit95d07ee408Author: Alexander Barkov <bar@mariadb.org> Date: Fri Jul 3 10:33:17 2015 +0400 MDEV-8215 Asian MB3 charsets: compare broken bytes as "greater than any non-broken character" commit302bf7c466Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jul 2 13:33:08 2015 +0300 Tabular ANALYZE must get its data from execution tracker commit28a8ba089fAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Jul 2 12:00:25 2015 +0300 Fix test failure seen on P7/P8 innodb-encrypt-tables update/validate function used incorrect type. commit64424f9886Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jul 2 10:24:02 2015 +0300 Update test results commitf0ce8482c1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jul 1 22:52:59 2015 -0400 Adjust result files to reflect increased system variable's max value length. commit06913d0162Author: Kentoku SHIBA <kentokushiba@gmail.com> Date: Thu Jul 2 04:12:21 2015 +0900 Update Mroonga to the latest version on 2015-07-02T04:12:21+0900 commit0319304893Merge:9d2aa2b309447416d1f3Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jul 1 20:11:43 2015 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit9d2aa2b309Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jul 1 20:03:29 2015 +0300 MDEV-7811: EXPLAIN/ANALYZE FORMAT=JSON should show subquery cache Fixes over the original patch: - Fix variable/class/other names - Fix the JSON output to be in line with the output of other JSON constructs we produce commit447416d1f3Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Jul 1 16:23:22 2015 +0300 MDEV-8406: Test failure on encryption.innodb-page_encryption_log_encryption in P7/P8 Used wrong type for encryption_key_id and page_compression_level in table options. Make explicit casts for calls also. commit93198fefe0Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Wed Jul 1 16:22:41 2015 +0300 [MDEV-6877] Update test results to accound for binlog_row_image variable. mysqld--help was not updated for binlog row image. commitf35386d6f3Author: Alexander Barkov <bar@mariadb.org> Date: Wed Jul 1 15:37:52 2015 +0400 Checking in range_mrr_icp.result forgotten in the previous patch. commit92627e74caAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Jul 1 10:20:16 2015 +0300 Add show warnings to test to find out the reason for create failure. commitc6aee27b73Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Mar 25 18:27:10 2015 +0100 MDEV-7811: EXPLAIN/ANALYZE FORMAT=JSON should show subquery cache commit498a264d19Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Jun 30 19:51:09 2015 +0300 [MDEV-6877] Update test results to accound for binlog_row_image variable. commit84cefe2455Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Jun 30 09:16:09 2015 +0300 MDEV-8396: InnoDB: Assertion failure in file fil0crypt.cc line 2052 Logic error, NULL pointer was referenced. commitd1307bde65Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Jun 30 08:34:31 2015 +0300 MDEV-8395: InnoDB: Assertion failure in file fil0pagecompress.cc line 539 (SIGFPE) File block size might be 0 and used on modulo operator. Make sure that file block size is initialized to 512. commit1a3321b649Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Jun 30 14:42:46 2015 +0300 [MDEV-6877] Added basic tests for binlog_row_image using minimal and noblob values commit4d856e362eAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Jun 30 14:30:38 2015 +0300 [MDEV-6877] Added tests for binlog_row_image using noblobs switch commitd817267ae6Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Fri May 29 17:19:53 2015 +0300 [MDEV-6877] Change replication event loop to account for empty events When writing rows with a minimal row image, it is possible to receive empty events. In that case m_curr_row and m_rows_end are the same, however the event implies an insert into the table with the default values associated for that table. commit50955075bbAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Tue Apr 14 15:05:14 2015 +0300 [MDEV-6877] Fixed Assertion Error, when receiving an empty event Due to how events are created with a minimal binlog_row_image, it is possible to receive empty write events because all the columns in the table have a default value. (For example an auto-increment) Make sure we account for that. commitca276729bcAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Mon Apr 6 17:25:52 2015 +0300 [MDEV-6877] Fixed Update_rows_log_event to correctly apply update log events Update_rows_log_event must make use of the after image bitmap when detecting which columns to update. commit8a1b7c9c65Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Thu Apr 2 23:14:49 2015 +0300 [MDEV-6877] Removed unnecesary bitmap in binlog_write_row The bitmap is now deduced from the table's read and write set. commit8bd5301a1eAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Thu Apr 2 23:03:30 2015 +0300 [MDEV-6877] Add binlog writing according to columns The logging function now writes to the binlog according to the bitmap columns implied by the binlog_row_image variable. commitedff3f3fa9Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Thu Apr 2 20:46:21 2015 +0300 [MDEV-6877] Update Update, Delete and Write row log event The row events no longer require columns arguments. commit724d5ae5f1Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Thu Apr 2 20:25:22 2015 +0300 [MDEV-6877] Update binlog_prepare_pending_rows_events to use comparison function When deciding which binlog events are pending, make use of the bitmap compare function instead. commita7d181a023Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Thu Apr 2 19:31:51 2015 +0300 [MDEV-6877] Added a bitmap compare function for binlog_row_image The function compares bitmaps according to the binlog_row_image variable setting. commitc096caee71Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Thu Apr 2 19:22:41 2015 +0300 [MDEV-6877] Removed unneded code from rpl_injector The rpl_injector code is now considered dead code. This patch only removes the minimum number of function calls to allow implementing binlog_row_image. The other functions are to be removed in a subsequent patch. commite53ad95b73Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Thu Apr 2 19:09:40 2015 +0300 [MDEV-6877] Added mark_columns_per_bitmap_row_image Depending on which binlog_row_image we are using, we must mark columns which to update differently both in the before image as well as the after image. commitb9d1d348ddAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Sat Mar 21 20:44:53 2015 +0200 [MDEV-6877] Added test suite for binlog_row_image sys var commit3ed519ff05Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Sat Mar 21 20:43:24 2015 +0200 [MDEV-6877] Added binlog_row_image system variable The system variable is present but it does not do anything yet. commit768620ee5cAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Jun 30 12:56:31 2015 +0400 MDEV-8189 field<>const and const<>field are not symmetric commit1b2f9126b8Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jun 29 17:28:50 2015 -0400 Increase field value max length to 2048 to avoid truncation of wsrep_provider_options' value. Also increase the max value length for SYSTEM_VARIABLES schema table. commit7923c0cff2Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Jun 29 20:03:57 2015 +0300 Fix test failure where the environment was not fully restored. commit79af0b3823Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Jun 29 14:10:37 2015 +0300 MDEV-8393: InnoDB: Assertion failure in file fil0crypt.cc line 2109 Crypt data was used when it was already freed. Delete crypt data more thorougly when freed. commit4fac626917Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Jun 29 12:48:42 2015 +0300 MDEV-8390: innodb.innodb-flush-changed-page-bitmaps crashes Analysis: Flush changed page bitmaps calls log_online_follow_redo_log that later calls log_group_read_log_seg with release_mutex = true and that causes the log_sys mutex being released before log_decrypt_after_read function that later required log_sys mutex. Fix: Enter log_sys mutex before log_decrypt_after_read if mutex is released and release the mutex after the function if we acquired it before function call. commit08fa60e5f3Author: Sergey Vojtovich <svoj@mariadb.org> Date: Mon Jun 29 12:06:00 2015 +0400 MDEV-8382 - Processlist returns random numbers in Time column Time column of SHOW PROCESSLIST was returned in microseconds after rev.8f603bc. Revert original timescale (seconds). commita0f5f407ebAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Jun 25 14:21:16 2015 +0400 MDEV-8339 - Server crash during table cache eviction TDC_element::free_tables_back() had pre-lfhash leftover code, which referenced TDC_element::free_tables via TDC_element::share. This is not correct as share may be NULL (newly inserted or to be removed), instead access free_tables directly. commit0865e3deabAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Jun 24 14:58:17 2015 +0400 MDEV-7792 - SQL Parsing Error - UNION AND ORDER BY WITH JOIN ORDER BY against union may confuse name resolution context, causing valid SQL statements to fail. The purpose of context change was presumably intended for the duration of gathering field list for ORDER BY. However it isn't actually required (name resolution context is never accessed by the latter). See also alternative solution (in MySQL 5.7): 92145b95. commitad9b3263d3Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Jun 29 08:49:58 2015 +0300 MDEV-8391: encryption.innodb-page_encryption_compression fails Test create_or_replace should make sure that background decrypt operation is finished and flush all dirty pages using restart to clean up the database before ending. commit7567b9fa10Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jun 28 18:51:40 2015 +0200 update tests to pass commit4d4f2ed2e1Author: Alexander Barkov <bar@mariadb.org> Date: Sun Jun 28 18:23:15 2015 +0400 Moving Item_bool_func::add_key_fields_optimize_op() to Item_bool_func2. It's now needed outside of Item_bool_func2 any more. commite04f6e7e3aMerge:ee0237fe8926162c71c5Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jun 28 15:23:33 2015 +0200 Merge branch 'bb-10.1-serg' into 10.1 commitee0237fe89Author: Alexander Barkov <bar@mariadb.org> Date: Sun Jun 28 14:29:51 2015 +0400 MDEV-8330 Get rid of Item_func::select_optimize() and Item_func::optimize_type commit26162c71c5Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jun 28 09:03:13 2015 +0200 rename {sys_vars,sql_plugin_services}.h -> *.ic commit55b96d2708Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jun 28 08:51:53 2015 +0200 bump the VERSION to 10.1.6 and related changes fix two #if MYSQL_VERSION_ID > 100105 commitd1a11568c7Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Jun 27 20:38:05 2015 +0200 cleanup: safer versions of PSI no-op macros commit658992699bMerge:fe7e334f3ea6087e7dc1Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Jun 27 20:35:26 2015 +0200 Merge tag 'mariadb-10.0.20' into 10.1 commitfe7e334f3eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Jun 26 23:11:26 2015 +0200 cleanup: remove unused function argument commitc583360359Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Jun 26 23:06:06 2015 +0200 unittest: encrypted temporary IO_CACHE commit31eed4759bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Jun 25 13:05:46 2015 +0200 cleanup: use WRITE_CACHE for view frm files SEQ_READ_APPEND is for two threads (reader and writer) simultaneously accessing the IO_CACHE commit1ce71c8478Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Jun 19 20:58:26 2015 +0200 MDEV-7832 Add status variables to track CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE Pretend that CREATE TABLE and CREATE TEMPORARY TABLE are two different commands internally. The user doesn't need to know that they both are SQLCOM_CREATE_TABLE. Same for DROP [TEMPORARY] TABLE commite24caa7588Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Jun 19 20:57:39 2015 +0200 small cleanup * keep all com_xxx constants together in struct system_status_var * fix an outdated comment in sql_cmd.h * fix an off-by-one bug in mysqld.cc commitc47acc21aaAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Jun 19 20:47:09 2015 +0200 remove unused function and array commit794a895c4cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Jun 19 19:46:12 2015 +0200 simplify CREATE TEMPORARY TABLE parser rule as a bonus that makes CREATE TEMPORARY TEMPORARY TABLE illegal commitbfabaf6486Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 22 17:17:03 2015 +0200 Deinitialize plugins in the reverse plugin_type_initialization_order Old code worked because plugin locking guaranteed that encryption plugin is deinitialized last. But compiled-in plugins are never locked. This fixes encryption failures on fulltest builder commitff7a1ff6d7Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jun 21 06:34:58 2015 +0200 fix printf format string commit8036ad0a08Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jun 21 06:33:45 2015 +0200 misc encryption tests fixes * support statically compiled file_key_management when possible * rename encryption.encryption_create_or_replace -> encryption.create_or_replace * delete unnecessary *.opt file (including have_key_management_plugin.inc is enough) * remove unnecessary LOWER() for strings that are compared case insensitively anyway commit627c6e812bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Jun 19 18:10:47 2015 +0200 MDEV-8298 sys_vars.all_vars fails in -DWITH_WSREP=OFF build Disable sys_vars.all_vars test. There's no need to write boilerplate tests for every new system variable, our INFORMATION_SCHEMA.SYSTEM_VARIABLES and sysvar_* tests are now used to show all basic properties of all variables. commite7620ce4ceAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Jun 19 18:05:10 2015 +0200 MDEV-8281 aes_decrypt crashes in block_crypt() fix aes_decrypt of yassl to support zero-length input commite20be69eccAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Jun 27 09:40:42 2015 +0200 update test results and 32-bit rdiffs commit55d8ee5f70Author: Alexander Barkov <bar@mariadb.org> Date: Fri Jun 26 22:49:49 2015 +0400 MDEV-8239 Reverse spatial operations OP(const, field) do not get optimized Moving Item_func_spatial_rel from Item_bool_func to Item_bool_func2. to make OP(const,field) use indexes. - MBR functions supported OP(const,field) optimization in 10.0, but were inintentionally broken in an earlier 10.1 change that introduced a common parent for Item_func_spatial_mbr_rel and Item_func_spatial_precise_rel. - Precise functions never supported optimization for OP(const,field). Now both MBR and precise functions support OP(const,field) optimization. commitcb5f32ebe3Author: Alexander Barkov <bar@mariadb.org> Date: Fri Jun 26 20:00:24 2015 +0400 Moving Item_func_xor out of Item_bool_func2, as it does not need any of the optimizer related functionality. commit40e5aceaffAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Jun 26 17:46:34 2015 +0400 Removing Item_int_func::sargable. Adding virtual implementations of count_sargable_conds() instead for Item_func_in, Item_func_null_predicate, Item_bool_func2. There other Item_int_func descendants that used to set "sargable" to true (Item_func_between, Item_equal) already have their own implementation of count_sargable_conds(). There is no sense to have two parallel coding models for the same thing. commit436411860eAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Jun 26 15:42:49 2015 +0400 Moving ST_RELATE() implementation out of Item_func_precise_spatial_rel, adding a separte class Item_func_spatial_relate for ST_RELATE(). This is a preparatory patch for: MDEV-8239 Reverse spatial operations OP(const, field) do not get optimized commit4f828a1cacAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Jun 26 13:40:28 2015 +0400 MDEV-8214 Asian MB2 charsets: compare broken bytes as "greater than any non-broken character" commitd535728165Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Jun 26 11:42:09 2015 +0300 MDEV-8219: enforce_storage_engine cannot be set globally Change session only variable enforce_storage_engine to be session variable and make sure that also global value is used if session variable is not set. commita4b0063d7bAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Jun 26 10:58:51 2015 +0400 MDEV-8256 A part of a ROW comparison is erroneously optimized away Item_func_eq's created during conversion of a ROW equality to a conjunction of scalar equalities did not set cmp_context for its arguments properly, so some of these created Item_func_eq could be later erroneously eliminated. commit4a7afdde86Author: Alexander Barkov <bar@mariadb.org> Date: Fri Jun 26 10:18:34 2015 +0400 MDEV-8373 Zero date can be inserted in strict no-zero mode through CREATE TABLE AS SELECT timestamp_field commit115904c2c8Author: Alexander Barkov <bar@mariadb.org> Date: Fri Jun 26 10:16:51 2015 +0400 MDEV-7824 [Bug #68041] Zero date can be inserted in strict no-zero mode through a default value commit874df5092bAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Jun 26 08:33:14 2015 +0300 Fix failing test case. commit9111ab7127Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Thu Jun 25 13:16:27 2015 +0500 GIS-related tests started to fail as some related functions don't return NULL-s anymore, and actually they're not BOOLEAN. Fixed. commit42bc08b347Author: Alexander Barkov <bar@mariadb.org> Date: Thu Jun 25 12:51:32 2015 +0400 MDEV-8229 GROUP_MIN_MAX is erroneously applied for BETWEEN in some cases commit1f4a89b10cAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jun 24 23:38:04 2015 -0400 Do print SST log messages. commit5467b12dc3Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jun 24 23:28:42 2015 -0400 MDEV-7903 : xtrabackup SST failing with maria-10.0-galera Remove master-bin.state file on joiner node during SST. commit9f00950d2aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jun 24 23:25:22 2015 -0400 MDEV-7631 : Invalid WSREP_SST rows appear in mysqld-bin.index file Try not to release 0 (STDIN_FILENO) file descriptor as it can incorrectly get reused by streams opened later. commit0f4478105fAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jun 24 17:02:33 2015 -0400 Add close-on-exec flag to open(), socket(), accept() & fopen(). commit565960816eMerge:d43df4a33ab89de2b2ceAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Jun 24 17:18:12 2015 +0200 Merge MDEV-8354 into 10.1 commit70714d3597Merge:46024098be71d1f35847Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jun 23 16:46:12 2015 -0400 Merge branch '5.5-galera' into 10.0-galera commit71d1f35847Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jun 23 13:48:39 2015 -0400 Update SELinux policy to allow UDP for multicast repl in galera. commitd43df4a33aAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Jun 23 15:06:23 2015 +0500 These functions can never return NULL. commitb7ff2f1b59Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Jun 23 14:36:24 2015 +0300 MDEV-7472: Implementation of user statements for handling the xtradb changed page bitmaps Introduce a new dummy INFORMATION_SCHEMA.CHANGED_PAGE_BITMAPS table to XtraDB with reset_table callback to allow FLUSH NO_WRITE_TO_BINLOG CHANGED_PAGE_BITMAPS to be called from innobackupex. commitd3b7eb7b99Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Jun 23 11:57:05 2015 +0500 MDEV-7528 GIS: Functions return NULL instead of specified -1 for NULL arguments. The behaviour required by the standard seems too weird to expect. commit3e4126e9d6Merge:fb3e31203f9b57b214c4Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Jun 23 11:30:39 2015 +0500 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit9b57b214c4Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu May 21 13:08:46 2015 +0400 MDEV-8199 - first_breadth_first_tab() takes 0.07% in OLTP RO This is an addition to original patch: cleanups for next_breadth_first_tab(). Overhead change: next_breadth_first_tab() 0.04% -> out of radar commit45f41b52e8Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu May 21 12:30:41 2015 +0400 MDEV-8199 - first_breadth_first_tab() takes 0.07% in OLTP RO Split first_breadth_first_tab() into JOIN::first_breadth_first_optimization_tab() and JOIN::first_breadth_first_execution_tab(). This allows to eliminate function call and one condition. Adjusted callers accordingly. Overhead change: first_breadth_first_tab() 0.07% -> out of radar next_breadth_first_tab() 0.04% -> 0.04% JOIN::cleanup() 0.15% -> 0.11% JOIN::save_explain_data_intern() 0.28% -> 0.24% commit84568c2965Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed May 20 12:04:32 2015 +0400 MDEV-8030 - Apc_target::disable() locks mutex twice Moved Apc_target::destroy(), Apc_target::enable() and Apc_targe::disable() definitions to my_apc.h so that they can be inlined. Apc_targe::disable() now calls Apc_target::process_apc_requests() only if there're APC requests. This saves one pthread_mutex_lock() call. Overhead change: Apc_target::disable 0.04% -> out of radar Apc_target::enable 0.03% -> out of radar Apc_target::process_apc_requests 0.02% -> out of radar pthread_mutex_lock 0.43% -> 0.42% pthread_mutex_unlock 0.26% -> 0.25% commitfb3e31203fAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon Jun 22 23:33:35 2015 +0500 MDEV-7925 Inconsistent behavior of ST_Touches with a POINT as one of arguments. Some cases of the feature's borders were treated incorrectly. commit0357791e3cAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Mon Jun 22 08:44:46 2015 +0300 MDEV-8280: crash in 'show global status' with --skip-grant-tables The crash was caused by attempting to use a hashtable without it getting initialized, due to the --skip-grant-tables switch. commit46024098beMerge:41d4002987a6087e7dc1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Jun 21 23:54:55 2015 -0400 Merge tag 'mariadb-10.0.20' into 10.0-galera commit41d4002987Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Jun 21 23:09:10 2015 -0400 Remove duplicate script added due to bad merge. commit327409443fMerge:fc716dc5a55a44e1a402Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Jun 21 21:50:43 2015 -0400 Merge tag 'mariadb-5.5.44' into 5.5-galera commitcbb8b2d033Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Jun 20 05:01:16 2015 +0300 More testcases. commitebe2bd74feAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sat Jun 20 04:20:18 2015 +0300 MDEV-7836: ANALYZE FORMAT=JSON should provide info about GROUP BY ANALYZE should also record remove_duplicates() operation. commitfc716dc5a5Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jun 19 19:25:15 2015 -0400 MDEV-8260 : Issues related to concurrent CTAS * Wait for aborted thd (victim) to release MDL locks * Skip aborting an already aborted thd * Defer setting OK status in case of CTAS * Minor cosmetic changes * Added a test case commitf33173d19eAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Fri Jun 19 21:31:16 2015 +0300 MDEV-8282: crash in filesort() with simple ordered delete Handle the case where the optimizer decides to use handler->delete_all_rows(), but then this call returns HA_ERR_UNSUPPORTED and execution switches to regular row-by-row deletion. commit12d9fe14beAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Jun 17 13:09:22 2015 +0400 MDEV-7956 - handler::rebind_psi() takes 0.07% in OLTP RO Do not call handler::rebind_psi() and handler::unbind_psi() when performance schema is compiled out. Overhead change: handler::rebind_psi 0.04% -> out of radar handler::unbind_psi 0.03% -> out of radar open_table 0.21% -> 0.18% close_thread_table 0.05% -> 0.05% commit8f603bcbcaAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Jun 17 18:55:38 2015 +0400 MDEV-7952 - clock_gettime() takes 0.24% in OLTP RO Initialize abs_timeout when it is about to be used. This saves one my_hrtime() call on hot path (when we acquire MDL lock without waiting). When filling I_S.PROCESSLIST use THD::start_utime/THD::utime_after_query instead of THD::start_time. This allows us to save 2 clock_gettime() calls. Overhead change: __clock_gettime 0.13% -> 0.11% (122 -> 76 calls per OLTP RO transaction) my_interval_timer 0.07% -> 0.06% my_hrtime 0.04% -> 0.01% commit2bc6e29afeAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Jun 19 15:04:58 2015 +0400 MDEV-7943 - pthread_getspecific() takes 0.76% in OLTP RO Pass THD to Sort_and_group_tracker::report_sorting(). This reduces number of pthread_getspecific() calls from 292 to 290. commit360176f397Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Jun 18 18:01:56 2015 +0400 MDEV-7943 - pthread_getspecific() takes 0.76% in OLTP RO Pass THD to Item_field (and all derivatives) constructors. This reduces number of pthread_getspecific() calls from 322 to 292. commitb85e5efca3Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Apr 28 15:20:48 2015 +0400 MDEV-7943 - pthread_getspecific() takes 0.76% in OLTP RO Pass THD to find_all_keys() and Item_equal::Item_equal(). In MRR use table->in_use instead of current_thd. This reduces number of pthread_getspecific() calls from 354 to 320. commit2b253ed41fAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Jun 17 12:37:19 2015 +0400 MDEV-8324 - MariaDB fails to build with performance schema disabled Various fixes to let MariaDB compile with performance schema disabled. commit8c44fd63acAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jun 19 00:17:25 2015 -0400 MDEV-8239 : Idle threads post-execution end up in closing tables state Set thd's state to 'committed' only after it has done closing tables (called indirectly by relay_group_info::cleanup_context()). commit366cda4937Author: Alexander Barkov <bar@mariadb.org> Date: Thu Jun 18 23:27:44 2015 +0400 Adding "const" qualifier into a few methods in Field. commit091f67738eAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Jun 18 22:16:44 2015 +0400 Removing duplicate code: Adding a protected method Field_temporal_with_date::validate_for_get_date() and reusing it in a few places. commitf5ddffd83eAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Jun 18 19:58:57 2015 +0300 MDEV-8156: Assertion failure in file log0crypt.cc line 220 on server restart Instead of asserting print informative error message to error log and return failure from innodb_init causing the server to shutdown. commit6050ab6586Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jun 18 09:59:09 2015 -0400 MDEV-6829 : SELinux/AppArmor policies for Galera server Add SELinux policy and AppArmor profile under policy/. commite2a59eba5dAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 18 14:52:17 2015 +0300 Make dbug_print_item() print conditions in siccint form commitcaf4291d29Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 18 14:51:50 2015 +0300 Remove garbage comment commiteb2c170bb0Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Jun 18 08:38:33 2015 +0300 MDEV-8303; Dumping buffer pool noisy in the logs. Added new dynamic configuration variable innodb_buf_dump_status_frequency to configure how often buffer pool dump status is printed in the logs. A number between [0, 100] that tells how oftern buffer pool dump status in percentages should be printed. E.g. 10 means that buffer pool dump status is printed when every 10% of number of buffer pool pages are dumped. Default is 0 (only start and end status is printed). commitb94eaff8d9Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Jun 17 09:12:26 2015 +0300 MDEV-8310: Encryption bogus message still in 10.1.5 Moved warning print to debug builds only because on production these messages are unnecessary. commit6a92fa4be5Merge:b1b0db294f93c039dd3cAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Jun 15 08:28:04 2015 +0200 Merge branch 'mdev8294' into 10.1 commitb1b0db294fMerge:f965cae5fb682ed005c5Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Jun 10 12:42:18 2015 +0200 Merge MDEV-8294 into 10.1 commitf965cae5fbAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jun 5 11:43:05 2015 -0400 MDEV-7110 : Add missing MySQL variable log_bin_basename and log_bin_index Add log_bin_index, log_bin_basename and relay_log_basename system variables. Also, convert relay_log_index system variable to NO_CMD_LINE and implement --relay-log-index as a command line option. commitc94789c3d3Author: Alexander Barkov <bar@mariadb.org> Date: Tue Jun 9 15:35:25 2015 +0400 Adding a test for: MDEV-8167 XOR returns bad results for an indexed column The bug itself was earlier fixed by one of the earlier changes. commitb0928711e0Author: Alexander Barkov <bar@mariadb.org> Date: Tue Jun 9 15:02:53 2015 +0400 Adding a test for "MDEV-6973 XOR aggregates argument collations". The bug itself was earlier fixed by this patch: commit3709c7fc6dMDEV-8222 "string_field LIKE int_const" returns a wrong result in case of UCS2 MDEV-8257 Erroneous "Impossible where" when mixing decimal comparison and LIKE commit70b82efd20Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Jun 8 19:36:35 2015 +0300 MDEV-8273: InnoDB: Assertion failure in file fil0pagecompress.cc line 532 Analysis: Problem was that actual payload size (page size) after compression was handled incorrectly on encryption. Additionally, some of the variables were not initialized. Fixed by encrypting/decrypting only the actual compressed page size. commit4a6a61cb81Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Jun 8 08:09:33 2015 +0300 MDEV-8268: InnoDB: Assertion failure in file buf0buf.cc line 5842 failing assertion ut_a(free_slot != NULL); Analysis: Problem is that there is not enough temporary buffer slots for pending IO requests. Fixed by allocating same amount of temporary buffer slots as there are max pending IO requests. commitd7f3d889deAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Jun 5 08:41:10 2015 +0300 MDEV-8272: Encryption performance: Reduce the number of unused memcpy's Removed memcpy's on cases when page is not encrypted and make sure we use the correct buffer for reading/writing. commitf744b2a15fAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Jun 9 12:08:46 2015 +0400 MDEV-8283 crash in get_mm_leaf with xor on binary col commit3a9a3b98b7Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Jun 8 00:03:52 2015 +0200 Fix test txt files line endings commit7482f073aeAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sat Jun 6 19:23:06 2015 +0200 Commit od last modifications made for version 10.0 commit1c756512b0Merge:5d038d3734f8fa5fe1bcAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Jun 5 23:54:19 2015 +0200 Commit win and CONNECT resolved files commit5d038d3734Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Jun 5 23:33:23 2015 +0200 commit win/ changes commit93fc04ff1dAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sat Jun 6 00:32:27 2015 +0300 MDEV-6995: EXPLAIN JSON and ORDER BY, GROUP BY, etc - Make ANALYZE correctly remember and report filesort() calls - Temp.table use is collected but only basic info is reported. commitf8fa5fe1bcMerge:9dee994d99f7002c05aeAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Jun 5 23:24:39 2015 +0200 Commit merge resolve commit2b2c61cc79Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Jun 5 17:21:04 2015 +0200 Commit changes to json_udf.inc commitf7002c05aeAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Jun 3 13:10:18 2015 +0300 MDEV-8250: InnoDB: Page compressed tables are not compressed and compressed+encrypted tables cause crash Analysis: Problem is that both encrypted tables and compressed tables use FIL header offset FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION to store required metadata. Furhermore, for only compressed tables currently code skips compression. Fixes: - Only encrypted pages store key_version to FIL header offset FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION, no need to fix - Only compressed pages store compression algorithm to FIL header offset FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION, no need to fix as they have different page type FIL_PAGE_PAGE_COMPRESSED - Compressed and encrypted pages now use a new page type FIL_PAGE_PAGE_COMPRESSED_ENCRYPTED and key_version is stored on FIL header offset FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION and compression method is stored after FIL header similar way as compressed size, so that first FIL_PAGE_COMPRESSED_SIZE is stored followed by FIL_PAGE_COMPRESSION_METHOD - Fix buf_page_encrypt_before_write function to really compress pages if compression is enabled - Fix buf_page_decrypt_after_read function to really decompress pages if compression is used - Small style fixes commit2a3166feffAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Jun 3 17:54:11 2015 +0200 Fix swapping key numeric values on Big Endian machines. Fix typo error in CntIndexRange (kp instead of p) Change version date modified: storage/connect/connect.cc modified: storage/connect/ha_connect.cc commit5a9e2e62bfMerge:36d2bd6a1530fd69e605Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Jun 3 16:59:45 2015 +0200 Merge branch '10.1' of https://github.com/Buggynours/MariaDB into 10.1 commit36d2bd6a15Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Jun 3 16:58:42 2015 +0200 Handle ODBC table null values modified: tabodbc.cpp commitcd70bed05eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Jun 3 11:12:50 2015 +0200 fix for 32-bit tests commit6d5b723bdcMerge:3eb8bc01b69eff9ed5c5Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jun 2 13:27:39 2015 -0400 Merge branch '5.5-galera' into 10.0-galera commit51d67633efAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed May 27 20:53:41 2015 +0200 AES-GCM support in file_key_management plugin commit0f0092720fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed May 27 20:53:16 2015 +0200 my_aes_encrypt_gcm() and my_aes_decrypt_gcm() commitebc5e00641Author: Sergei Golubchik <serg@mariadb.org> Date: Wed May 27 19:41:29 2015 +0200 my_aes_get_size() return unsigned, not signed. return a value large enough for GCM commit487e5f4590Author: Sergei Golubchik <serg@mariadb.org> Date: Wed May 27 12:18:29 2015 +0200 file_key_management plugin: complain if key id 1 is not found and don't recommend aes_ctr if it's unavailable commit432b78c903Author: Sergei Golubchik <serg@mariadb.org> Date: Wed May 27 12:08:13 2015 +0200 just like tempfiles: use key id 2 for temp Aria tables introduce ENCRYPTION_KEY_SYSTEM_DATA and ENCRYPTION_KEY_TEMPORARY_DATA constants; use them everywhere. commitd9340d6c8eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed May 27 00:18:20 2015 +0200 MDEV-8126 encryption for temp files IO_CACHE tempfiles encryption commit318c826e93Author: Sergei Golubchik <serg@mariadb.org> Date: Tue May 26 22:09:40 2015 +0200 always use my_b_pread() instead of mysql_file_pread() when working with IO_CACHE's, don't access IO_CACHE::file directly commit6309a30dc9Author: Sergei Golubchik <serg@mariadb.org> Date: Fri May 22 14:07:35 2015 +0200 my_b_fill, inline my_b_* functions instead of hairy macros commit196e852983Author: Sergei Golubchik <serg@mariadb.org> Date: Mon May 18 11:54:55 2015 +0200 misc IO_CACHE cleanups * remove unused (and not implemented) WRITE_NET type * remove cast in my_b_write() macro. my_b_* macros are function-like, casts are responsibility of the caller * replace hackish _my_b_write(info,0,0) with the explicit my_b_flush_io_cache() in my_b_write_byte() * remove unused my_b_fill_cache() * replace pbool -> my_bool * make internal IO_CACHE functions static * reformat comments, correct typos, remove obsolete comments (ISAM) * assert valid cache type in init_functions() * use IO_ROUND_DN() macro where appropriate * remove unused DBUG_EXECUTE_IF in _my_b_cache_write() * remove unnecessary __attribute__((unused)) * fix goto error in parse_file.cc * remove redundant reinit_io_cache() in uniques.cc * don't do reinit_io_cache() if the cache was not initialized in ma_check.c * extract duplicate functionality from various _my_b_*_read functions into a common wrapper. Same for _my_b_*_write * create _my_b_cache_write_r instead of having if's in _my_b_cache_write (similar to existing _my_b_cache_read and _my_b_cache_read_r) * don't call mysql_file_write() from my_b_flush_io_cache(), call info->write_function() instead commit1841557e40Author: Sergei Golubchik <serg@mariadb.org> Date: Wed May 27 21:43:25 2015 +0200 myisam/aria: don't mess with IO_CACHE::file that is, don't create a "temporary" IO_CACHE with file==-1 and manually swap it later to the valid file descriptor. commit80e61ae21eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat May 16 08:48:52 2015 +0200 cleanup: LOAD DATA replication support in IO_CACHE remove some 14-year old code that added support for LOAD DATA replication to IO_CACHE: * three callbacks, of which only two were actually used and that were only needed for LOAD DATA replication but were tested in every IO_CACHE instance * an additional opaque void * argument in IO_CACHE, also only used for LOAD DATA replication, but present everywhere * the code to close IO_CACHE prematurely in LOAD DATA to have these callbacks called in the correct order and a long comment explaining what will happen if IO_CACHE is not closed prematurely * a variable to track whether IO_CACHE was closed prematurely (to avoid double-closing it) commit91dab5ddb6Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 2 18:09:53 2015 +0200 fix cmake dependencies perfschema after 5.6 merge depends on sql_yacc.h commit72d01f2426Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 2 12:55:00 2015 +0200 remove few #ifdefs in innodb/xtradb commit5fc53b7cfeAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Jun 2 15:39:14 2015 +0400 MDEV-8202 - st_select_lex::master_unit() takes 0.17% in OLTP RO To make st_select_lex::master_unit() inlinable: - moved it's definition to sql_lex.h - removed base class virtual master_unit() declaration since this method is specific to st_select_lex Overhead change: st_select_lex::master_unit() 0.17% -> out of radar execute_sqlcom_select() 0.13% -> 0.12% JOIN::save_explain_data_intern() 0.27% -> 0.23% JOIN::optimize_inner() 0.76% -> 0.72% JOIN::exec_inner() 0.30% -> 0.24% JOIN::prepare() 0.30% -> 0.29% JOIN::optimize() 0.05% -> 0.05% commitadb952f548Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Jun 2 15:37:04 2015 +0400 MDEV-8192 - THD::set_command() takes 0.05% in OLTP RO Moved THD::set_command() definition to sql_class.h so that it can be inlined. Overhead change: THD::set_command 0.05% -> out of radar commitd298b02233Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Jun 2 15:35:02 2015 +0400 MDEV-8191 - THD::set_query() takes 0.07% in OLTP RO Moved THD::set_query() definition to sql_class.h so that it can be inlined. Overhead change: THD::set_query 0.07% -> out of radar commit3709c7fc6dAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Jun 2 15:42:01 2015 +0400 MDEV-8222 "string_field LIKE int_const" returns a wrong result in case of UCS2 MDEV-8257 Erroneous "Impossible where" when mixing decimal comparison and LIKE commit30fd69e605Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Jun 2 11:53:22 2015 +0200 Handle ODBC table null values modified: tabodbc.cpp commite8ea671c25Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Jun 2 10:34:51 2015 +0200 Commit changes pulled from ob-10.0 commit8f92a70e21Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 2 09:26:16 2015 +0200 update for 32-bit, again commit0d54cb12ebAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 1 21:35:02 2015 +0200 compilation failure on windows commit2133230305Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 1 21:31:31 2015 +0200 avoid ulong sysvars, prefer uint or ulonglong ulong is not portable - different width on different architectures commit78c10ccad8Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 1 17:31:39 2015 +0200 MDEV-7913 main.openssl_6975 'tlsv10' fails in buildbot on Wheezy and Precise version_ssl_library should show the version of openssl library that is being used, not the one that server was compiled with. commit9c41b35b6aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 1 16:33:41 2015 +0200 MDEV-8220 Server crashes if started with --enforce-storage-engine option commitd602574542Merge:fce4ab0ab4528378920bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 1 16:01:42 2015 +0200 Merge remote-tracking branch 'github/10.1' into 10.1 commitfce4ab0ab4Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 1 16:01:23 2015 +0200 generalize ER_TABLE_NEEDS_UPGRADE to work for views too commit5091a4ba75Merge:84eaf0911f0880284bf7Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 1 15:51:25 2015 +0200 Merge tag 'mariadb-10.0.19' into 10.1 commit528378920bAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sun May 31 08:10:07 2015 +0300 Fix test warnings by adding global supression to InnoDB warnings. commit13235a549dAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sun May 31 07:53:20 2015 +0300 Fix compiler warning. commit59815a268bAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri May 22 08:24:59 2015 +0300 MDEV-7484: Log Time not consistent with InnoDB errors nor with MySQL error log time format commit84eaf0911fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat May 30 14:06:17 2015 +0200 MDEV-7913 main.openssl_6975 'tlsv10' fails in buildbot on Wheezy and Precise don't run this test on 1.0.1c commit3839e91223Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Sat May 30 12:13:45 2015 +0300 MDEV-8248: mysqldump incorrect identifier quoting during equality comparison Use quote_for_equal to correctly escape characters. commitae4b24340dAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Thu Mar 19 15:16:22 2015 +0200 MDEV-6714 mysqldump slow with tables in big databases mysqldump now attempts to make use of the INFORMATION_SCHEMA tables. If the table name is not found with a case sensitive search, it fallbacks to a case insensitive search. commitc6b4212821Author: Sergei Golubchik <serg@mariadb.org> Date: Sat May 30 09:13:49 2015 +0200 temporarily disable failing test commit0f01bf2676Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu May 28 07:59:57 2015 +0200 MDEV-8241: Debug build on Windows is broken: error LNK2019: unresolved external symbol pthread_detach referenced in function ma_checkpoint_init pthread_detach() replaced with pthread_detach_this_thread() pthread_detach_this_thread() definition fixed commitc1c22c043bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri May 29 21:23:52 2015 +0200 update test results (yes, we no longer add all variables to sys_vars suite!) commit903cfde149Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri May 29 11:26:46 2015 -0400 MDEV-7067: Server outputs Galera (WSREP) information, even if Galera is disabled * mysqld_safe: Since wsrep_on variable is mandatory in 10.1, skip wsrep position recovery if its OFF. * mysqld: Remove "-wsrep" from server version * mysqld: Remove wsrep patch version from @@version_comment * mysqld: Introduce @@wsrep_patch_version commit1b00edc49aAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu May 21 16:31:24 2015 +0200 MDEV-7011: MAX_STATEMENT_TIME has no effect in a procedure after a previous successful statement Do not reset timer inside stored procedures and functions. commit34e01f80e4Author: Sergei Golubchik <serg@mariadb.org> Date: Thu May 28 10:03:12 2015 +0200 restore innodb_encrypt_tables validation function that was apparently lost in20c23048: commit20c23048c1Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sun May 17 14:14:16 2015 +0300 MDEV-8164: Server crashes in pfs_mutex_enter_func after fil_crypt_is_closing This also reverts8635c4b4: commit8635c4b4e6Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu May 21 11:02:03 2015 +0300 Fix test failure. commit5443b9db21Author: Alexander Barkov <bar@mariadb.org> Date: Thu May 28 16:00:05 2015 +0400 Moving "bool abort_on_null" from Item_bool_func2 to Item_func_eq, as it's not used by the other Item_bool_func2 descendands. commit979c5049efAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu May 28 07:52:27 2015 +0300 MDEV-8242: encryption.innodb_page_encryption_key_change fails in buildbot Forgot that echo will also expand variables and path might be different. commitab5094beabAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed May 27 21:41:02 2015 +0400 Fixing typos in DBUG_ENTER() comments. commit5991efc382Author: Alexander Barkov <bar@mariadb.org> Date: Wed May 27 21:32:35 2015 +0400 MDEV-7950 Item_func::type() takes 0.26% in OLTP RO Step #8: Adding get_mm_tree() in Item_func, Item_func_between, Item_func_in, Item_equal. This removes one virtual call item->type() in queries like: SELECT * FROM t1 WHERE c BETWEEN const1 AND const2; SELECT * FROM t1 WHERE c>const; SELECT * FROM t1 WHERE c IN (const_list); commita25ccd4f83Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed May 27 15:37:13 2015 +0300 MDEV-8238: Tables with encryption=yes using file_key_management plugin are not encrypted Analysis: Problem was that encryption was skipped. Fixed by making sure that tables with ENCRYPTED=YES are encrypted. commit2bea4bd9edAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue May 26 14:59:39 2015 +0300 MDEV-8233: InnoDB: Assertion failure in fil_page_decompress with encrypted tables Analysis: Problem was that used compression method needs to be stored to the page. Fixed by storing compression method after key_version to the page. commit0dc14257cbAuthor: Alexander Barkov <bar@localhost.localdomain> Date: Wed May 27 12:03:20 2015 +0400 MDEV-7950 Item_func::type() takes 0.26% in OLTP RO Step #7 (mostly preparatory for the next step #8): Splitting the function get_mm_parts() into a virtual method in Item. This changes a virtual call for item->type() into a virtual call for item->get_mm_tree(), but also *removes* one virtual call Item_cond::functype(), which used to distinguish between COND_AND_FUNC vs COND_OR_FUNC. commit58d7e35f59Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed May 27 11:00:46 2015 +0300 Fixed innodb_scrub_background test. commit1734bea8b3Merge:8c0ea281bf903f8dc72dAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue May 26 15:56:32 2015 +0200 Merge with latest 10.1 commit8c0ea281bfAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue May 26 16:09:36 2015 +0300 MDEV-8213: encryption.encryption_force, encryption.encrypt_and_grep fail with valgrind warnings (Invalid read) Analysis: Problem was that code used old pointer. Fixed by using correct pointer. commit903f8dc72dMerge:5bd25a9c53e5f1e841dcAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue May 26 15:03:22 2015 +0200 Merge MDEV-8147 into 10.1 commit5bd25a9c53Author: Alexander Barkov <bar@localhost.localdomain> Date: Tue May 26 11:59:17 2015 +0400 A helper patch for "MDEV-8228 Move Item_func_like out of Item_bool_func2" - Changing Comp_creator::create() and create_swap() to return Item_bool_rowready_func2 instead of Item_bool_func2, as they can never return neither Item_func_like nor Item_func_xor - Changing the first argument of Comp_create::create() and create_swap() from THD to MEM_ROOT, so the method implementations can now reside in item_cmpfunc.h instead of item_cmpfunc.cc and thus make the code slightly easier to read. commitb3aece9b99Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon May 25 09:38:47 2015 +0300 MDEV-8209: encryption.encrypt_and_grep fails in buildbot and outside Problem is that when encryption/decryption is marked done on memory cache, dirty pages might not be physically written. Fixed by adding sleep on test. commit9eff9ed5c5Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun May 24 13:30:49 2015 -0400 MDEV-8208 : Sporadic SEGFAULT on startup During server start, as wsrep initialization happens before plugin_init(), segfault may occur if wsrep THDs try to access the uninitialized maria_hton. commit536112dd30Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu May 21 15:07:19 2015 +0300 MDEV-8195: InnoDB: Error: trying to access tablespace 11262 page no. 7, InnoDB: but the tablespace does not exist or is just being dropped. Analysis: Problem was that we did try to read from tablespace that was being dropped. Fixed by introducing a new function to find a tablespace only if it is not being dropped currently and adding this check before trying to read pages from tablespace. commit8635c4b4e6Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu May 21 11:02:03 2015 +0300 Fix test failure. commit137ba7d6f9Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu May 21 08:14:35 2015 +0300 Fix compiler error. commit925b64124aAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed May 20 20:32:10 2015 +0300 MDEV-8182: Failing assertion: 1 == UT_LIST_GET_LEN(space->chain) Analysis: At fil_spage_get_space there is small change that space is found from tablespace list but we have not yet created node for it (and added it to space->chain) and as we hold fil_system mutex here fil_node_create can't continue. Fixed by allowing UT_LIST_GET_LEN(space->chain) == 0|| 1 and introducint two new functions that access filespace list and before returning space check that node is also created. commit3e55ef26d4Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed May 20 13:35:51 2015 +0300 MDEV-8173: InnoDB; Failing assertion: crypt_data->type == 1 Make sure that when we publish the crypt_data we access the memory cache of the tablespace crypt_data. Make sure that crypt_data is stored whenever it is really needed. All this is not yet enough in my opinion because: sql/encryption.cc has DBUG_ASSERT(scheme->type == 1) i.e. crypt_data->type == CRYPT_SCHEME_1 However, for InnoDB point of view we have global crypt_data for every tablespace. When we change variables on crypt_data we take mutex. However, when we use crypt_data for encryption/decryption we use pointer to this global structure and no mutex to protect against changes on crypt_data. Tablespace encryption starts in fil_crypt_start_encrypting_space from crypt_data that has crypt_data->type = CRYPT_SCHEME_UNENCRYPTED and later we write page 0 CRYPT_SCHEME_1 and finally whe publish that to memory cache. commit893631a8c1Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed May 20 12:39:17 2015 +0200 All the last changes made in the ob-10.0 branch including also changes of line endings of some test files commit44cd6f22d4Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed May 20 11:36:26 2015 +0200 MDEV-7921: main.sp_sync fails in buildbot with valgrind Part 2: detauch service thread. commitc1fb91ef73Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Mon May 18 17:34:50 2015 +0200 MDEV-7921: main.sp_sync fails in buildbot with valgrind Part 1: first 2 cases of valgrind complain. context_analysis_only can be used on non-started LEX (opening tables) obviouse fixes in DBUG and is_lex_started assignment. commit80333ad847Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed May 20 07:57:55 2015 +0300 Add missing requirement to test case and remove unnecessary output. commitbb15b9e29bAuthor: Alexander Barkov <bar@localhost.localdomain> Date: Tue May 19 17:03:18 2015 +0400 MDEV-7950 Item_func::type() takes 0.26% in OLTP RO commitbac6bbab80Author: Vicentiu Ciorbaru <vicentiu@mariadb.org> Date: Tue May 19 12:04:09 2015 +0000 [MDEV-8063]: Fix incorrect commit. The previous commit did not contain the reviewed changes and introduced a behaviour problem for the explain statement. This fixes the issue. commit29c7aff767Author: Vicențiu Ciorbaru <cvicentiu@gmail.com> Date: Mon May 18 01:35:47 2015 +0000 MDEV-8063: Unconditional ANALYZE DELETE does not delete rows When detecting a statement that can make use of ha_delete_all_rows(), we refrained from running the statement when being presented with the analyze or explain prefix. commit20c23048c1Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Sun May 17 14:14:16 2015 +0300 MDEV-8164: Server crashes in pfs_mutex_enter_func after fil_crypt_is_closing or alike Analysis: Problem was that tablespaces not encrypted might not have crypt_data stored on disk. Fixed by always creating crypt_data to memory cache of the tablespace. MDEV-8138: strange results from encrypt-and-grep test Analysis: crypt_data->type is not updated correctly on memory cache. This caused problem with state tranfer on encrypted => unencrypted => encrypted. Fixed by updating memory cache of crypt_data->type correctly based on current srv_encrypt_tables value to either CRYPT_SCHEME_1 or CRYPT_SCHEME_UNENCRYPTED. commit0bfae356d4Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat May 16 11:11:26 2015 -0400 MDEV-8166 : Adding index on new table from select crashes Galera cluster In wsrep, CTAS should be handled like a regular transaction. Added a test case. commit476dfb1603Author: Sergei Golubchik <serg@mariadb.org> Date: Sat May 16 08:55:21 2015 +0200 update big tokudb test results afterdd8f93195that is, after commitdd8f931957Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Apr 10 02:36:54 2015 +0200 be less annoying about sysvar-based table attributes do not *always* add them to the create table definition, but only when a sysvar value is different from a default. also, when adding them - don't quote numbers commit9cc7eb3226Author: Sergei Golubchik <serg@mariadb.org> Date: Sat May 16 16:27:36 2015 +0200 upate test results after2300fe2ethat is, after commit2300fe2e0eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed May 13 21:57:24 2015 +0200 Identical key derivation code in XtraDB/InnoDB/Aria commit54672a4f1eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri May 15 09:54:41 2015 +0200 MDEV-8043 innodb tablespace encryption "use after free" bug, when a thread replaces space->crypt_data and frees the old crypt_data object while it's being used by another thread. commite5989d52a7Author: Sergei Golubchik <serg@mariadb.org> Date: Thu May 14 12:27:49 2015 +0200 InnoDB: simplify innobase_compression_algorithm_validate() commit8815fb3d45Author: Sergei Golubchik <serg@mariadb.org> Date: Thu May 14 12:25:47 2015 +0200 MDEV-8158 InnoDB: Failing assertion: new_state->key_version != ENCRYPTION_KEY_VERSION_INVALID on dynamic change of encryption variables don't allow to enable srv_encrypt_tables if no encryption plugin is loaded commit8827eb8325Author: Sergei Golubchik <serg@mariadb.org> Date: Thu May 14 10:35:30 2015 +0200 MDEV-8162 func_str crashes on SELECT AES_DECRYPT(AES_ENCRYPT(...)) on line 107 encrypting 0 byte string *is* possible commit8258a34800Author: Sergei Golubchik <serg@mariadb.org> Date: Thu May 14 10:13:03 2015 +0200 InnoDB: check if scrubbing is enabled before scanning the tablespace commita94cabd503Author: Sergei Golubchik <serg@mariadb.org> Date: Thu May 14 08:37:34 2015 +0200 MDEV-8159 InnoDB: Failing assertion: key_state->key_id to simplify various checks, set crypt_data->key_id even for not encrypted tablespaces commit2300fe2e0eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed May 13 21:57:24 2015 +0200 Identical key derivation code in XtraDB/InnoDB/Aria * Extract it into the "encryption_scheme" service. * Make these engines to use the service, remove duplicate code. * Change MY_AES_xxx error codes, to return them safely from encryption_scheme_encrypt/decrypt without conflicting with ENCRYPTION_SCHEME_KEY_INVALID error commit3eb8bc01b6Merge:14b816a5c88fdf8f00c7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu May 14 21:53:48 2015 -0400 Merge branch '5.5-galera' into 10.0-galera commit14b816a5c8Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu May 14 21:48:54 2015 -0400 Disabling some more sporadically failing galera tests. commit8fdf8f00c7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu May 14 14:25:02 2015 -0400 mysql-wsrep#38 : wsrep_sst_xtrabackup-v2 script causes innobackupex to ..print a false positive stack trace into the log Suppress the stacktrace that innobackupex dumps on receiving SIGPIPE. commit632f2307f7Author: Alexander Barkov <bar@mariadb.org> Date: Thu May 14 17:42:40 2015 +0400 MDEV-7950 Item_func::type() takes 0.26% in OLTP RO Step#5: changing the function remove_eq_conds() into a virtual method in Item. It removes 6 virtual calls for Item_func::type(), and adds only 2 virtual calls for Item***::remove_eq_conds(). commitfb3e9352a4Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu May 14 12:44:07 2015 +0400 MDEV-7999 - PROFILING routines take 0.2% when profiling disabled This is an addition to original patch. Embedded server does extra calls of PROFILING::start_new_query() and PROFILING::finish_current_query(), which cause DBUG_ASSERT(!current) failure. Removed these extra calls: dispatch_command() does all needed job. commit18f88d6d94Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Apr 22 14:18:51 2015 +0400 MDEV-7943 - pthread_getspecific() takes 0.76% in OLTP RO Avoid calling current_thd from thd_kill_level(). This reduces number of pthread_getspecific() calls from 776 to 354. Also thd_kill_level(NULL) is not permitted anymore: this saves one condition. commitf8cacd03a7Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed May 13 11:41:22 2015 +0300 MDEV-8143: InnoDB: Database page corruption on disk or a failed file read Analysis: Problem was that we did create crypt data for encrypted table but this new crypt data was not written to page 0. Instead a default crypt data was written to page 0 at table creation. Fixed by explicitly writing new crypt data to page 0 after successfull table creation. commitbe2038e3cbAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed May 13 17:08:24 2015 +0400 MDEV-7950 Item_func::type() takes 0.26% in OLTP RO Step 4 (there will be more) commit16b6ec2e37Author: Sergei Golubchik <serg@mariadb.org> Date: Tue May 12 09:43:26 2015 +0200 MDEV-8130 Wrong error code/message while encrypting a partitioned InnoDB table when checking for a flag, use & not == commitdef48e623aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon May 11 21:05:02 2015 +0200 MDEV-8141 InnoDB: background encryption thread uses FIL_DEFAULT_ENCRYPTION_KEY * check key version per key id (that is, per tablespace). * wake encryption thread when a tablespace needs re-encryption commit6e4c22af7cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon May 11 14:21:44 2015 +0200 example encryption plugin supports key ids show that two keys can be different if they have different ids or different versions. commitacd992d4b7Author: Sergei Golubchik <serg@mariadb.org> Date: Sun May 10 20:57:16 2015 +0200 MDEV-8022 Assertion `rc == 0' failed in ma_encrypt on dropping an encrypted Aria table fix encryption of the last partial block * now really encrypt it, using key and iv * support the case of very short plaintext (less than one block) * recommend aes_ctr over aes_cbc, because the former doesn't have problems with partial blocks commitbea3f30d46Author: Sergei Golubchik <serg@mariadb.org> Date: Sun May 10 19:57:43 2015 +0200 move AES_CTR to its own greatly simplified function * don't use do_crypt() for stream cipher AES_CTR * rename do_crypt to block_crypt to emphasize its specialization commita583976e78Author: Sergei Golubchik <serg@mariadb.org> Date: Sun May 10 11:44:08 2015 +0200 MDEV-8015 InnoDB: Failing assertion: new_state->key_version != ENCRYPTION_KEY_VERSION_INVALID InnoDB: refuse to start if encryption is requested but no encryption plugin is available commitb4777bfc11Author: Sergei Golubchik <serg@mariadb.org> Date: Mon May 11 19:03:19 2015 +0200 cleanup, use encryption_key_id_exists() where appropriate commit66380916eeAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun May 10 11:03:33 2015 +0200 MDEV-7993 file_key_management_filekey doesn't work as expected with FILE: chomp the secret, as read from the file. remove trailing CR and LF bytes. commita35b538bdeAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat May 9 19:13:18 2015 +0200 MDEV-8040 make aria encryption use real keys applied upstream patch commitab8415d983Author: Sergei Golubchik <serg@mariadb.org> Date: Sat May 9 12:31:53 2015 +0200 move encryption tests to a dedicate suite remove few tests for variables that never existed (merge error) commitb22959903bAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Apr 22 13:29:56 2015 +0400 MDEV-7943 - pthread_getspecific() takes 0.76% in OLTP RO Added THD argument to select_result and all derivative classes. This reduces number of pthread_getspecific calls from 796 to 776 per OLTP RO transaction. commit8345bc6921Author: Alexander Barkov <bar@mariadb.org> Date: Wed May 13 15:34:20 2015 +0400 MDEV-8152 is_columns_is_embedded test fails Recording --ps and --embedded tests (a postfix for MDEV-7807) commit9851a8193fAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed May 13 15:28:34 2015 +0400 MDEV-8001 - mysql_reset_thd_for_next_command() takes 0.04% in OLTP RO Removed yet more mysql_reset_thd_for_next_command(). Call THD::reset_for_next_command() directly instead. commit4d1ccc4289Author: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Apr 17 14:30:15 2015 +0400 MDEV-7951 - sql_alloc() takes 0.25% in OLTP RO sql_alloc() has additional costs compared to direct mem_root allocation: - function call: it is defined in a separate translation unit and can't be inlined - it needs to call pthread_getspecific() to get THD::mem_root It is called dozens of times implicitely at least by: - List<>::push_back() - List<>::push_front() - new (for Sql_alloc derived classes) - sql_memdup() Replaced lots of implicit sql_alloc() calls with direct mem_root allocation, passing through THD pointer whenever it is needed. Number of sql_alloc() calls reduced 345 -> 41 per OLTP RO transaction. pthread_getspecific() overhead dropped 0.76 -> 0.59 sql_alloc() overhed dropped 0.25 -> 0.06 commitc4d2c4e844Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Apr 16 18:38:26 2015 +0400 MDEV-7964 - delete_dynamic() takes 0.12% in OLTP RO delete_dynamic() was called 9-11x per OLTP RO query + 3x per BEGIN/COMMIT. 3 calls were performed by LEX_MASTER_INFO. Added condition to call those only for CHANGE MASTER. 1 call was performed by lock_table_names()/Hash_set/my_hash_free(). Hash_set was supposed to be used for DDL and LOCK TABLES to gather database names, while it was initialized/freed for DML too. In fact Hash_set didn't do any useful job here. Hash_set was removed and MDL requests are now added directly to the list. The rest 5-7 calls are done by optimizer, mostly by Explain_query and friends. Since dynamic arrays are used in most cases, they can hardly be optimized. my_hash_free() overhead dropped 0.02 -> out of radar. delete_dynamic() overhead dropped 0.12 -> 0.04. commit7cfa803d8eAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Apr 15 18:32:34 2015 +0400 MDEV-8001 - mysql_reset_thd_for_next_command() takes 0.04% in OLTP RO Removed mysql_reset_thd_for_next_command(). Call THD::reset_for_next_command() directly instead. mysql_reset_thd_for_next_command() overhead dropped 0.04% -> out of radar. THD::reset_for_next_command() overhead didn't increase. commit5cfb6b479eAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Apr 15 18:12:23 2015 +0400 MDEV-7999 - PROFILING routines take 0.2% when profiling disabled PROFILING::start_new_query() optimizations: - no need to check "current": added assertion instead - "enabled" now means "is enabled currently" instead of "was enabled at query start". Old meaning was useless, new meaning echoes OPTION_PROFILING so that start_new_query() can be defined in sql_profile.h. - remnants of start_new_query() moved to sql_profile.h so it can be inlined PROFILING::start_new_query() overhead dropped 0.08% -> out of radar. PROFILING::set_query_source() optimizations: - no need to check "enabled": !enabled && current is impossible - remnants of set_query_source() moved to sql_profile.h so it can be inlined PROFILING::set_query_source() overhead dropped 0.02% -> out of radar. PROFILING::finish_current_query() optimizations: - moved "current" check out to sql_profile.h so it can be inlined PROFILING::finish_current_query() overhead dropped 0.10% -> out of radar. commit55d5af733dAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Apr 15 11:29:01 2015 +0400 MDEV-7945 - THD::enter_stage() takes 0.48% in OLTP RO THD::enter_stage() optimizations: - stage backup code moved to THD::backup_stage(), saves one condition - moved check for "new_stage" out to callers that actually need it - remnants of enter_stage() moved to sql_class.h so it can be inlined THD::enter_stage() overhead dropped 0.48% -> 0.07%. PROFILING::status_change() optimizations: - "status_arg" is now checked by QUERY_PROFILE::new_status() - no need to check "enabled": !enabled && current is impossible - remnants of status_change() moved to sql_profile.h so it can be inlined PROFILING::status_change() overhead dropped 0.1% -> out of radar. commitc9c8e0554fAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue May 12 23:43:06 2015 -0400 Update galera/disabled.def & some more test fixes. commit7003776e73Author: Elena Stepanova <elenst@montyprogram.com> Date: Tue May 12 03:44:10 2015 +0300 MDEV-8144 percona.innodb_sys_index test fails Restoring the line affected by 5.5=>10.0 merge commit6ae27e4098Merge:c6c9a69cce014fe12c03Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue May 12 18:50:59 2015 -0400 Merge branch '5.5-galera' into 10.0-galera commitc8ad5b2f12Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue May 12 17:15:16 2015 -0400 MDEV-8151 : wsrep.foreign_key, wsrep.pool_of_threads, .. wsrep.binlog_format, wsrep.mdev_6832 fail in buildbot Galera-3.9 logs an additional warning in the error log if it fails to find gvwstate.dat file. Update wsrep/suite.pm. commit014fe12c03Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue May 12 14:19:30 2015 -0400 Fix for debug build failure Do not use format function attribute for sql_print_xxx() family of functions as they use a MariaDB-specific extension of printf instead of one provided by the system. commit18fee8b8f8Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue May 12 17:05:41 2015 -0400 Revert last commit. commitc6c9a69cceAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue May 12 16:56:06 2015 -0400 Fix for some more test failures. commit8c54182ec4Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue May 12 15:09:28 2015 +0500 MDEV-7926 Server crashes in get_geometry_column_record on concurrent SELECT FROM I_S.GEOMETRY_COLUMNS with join and DDL. The bug was that open_tables() returned error in case of thd->killed() without properly calling thd->send_kill_message() to set the correct error. This was fixed already in get_schema_column_record, so the code was just copied to get_geometry_column_record. commit048039e0b2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon May 11 15:42:20 2015 -0400 Fix for build failure. commit58e8db2eb3Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon May 11 14:29:14 2015 +0300 MDEV-7942: InnoDB: abuse of UNIV_LIKELY()/UNIV_UNLIKELY() UNIV_LIKELY()/UNIV_UNLIKELY() hints are supposed to improve branch prediction. Currently, they're expected to work only if cond evaluates to TRUE or FALSE. However there're a few conditions that may evaluate to different values, e.g.: page/page0zip.cc: if (UNIV_LIKELY(c_stream->avail_in)) { page/page0zip.cc: if (UNIV_LIKELY(c_stream->avail_in)) { dict/dict0mem.cc: if (UNIV_LIKELY(i) && UNIV_UNLIKELY(!table->col_names)) { Fixed these conditions so that they evaluate TRUE/FALSE. commit6e49201644Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon May 11 12:47:43 2015 +0200 Fix compilation warnings in -DWITH_WSREP=OFF build. commit8bedb638d7Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon May 11 11:55:58 2015 +0200 MDEV-8113: Parallel slave: slave hangs on ALTER TABLE (or other DDL) as the first event after slave start In optimistic parallel replication, it is not safe to try to run a following transaction in parallel with a DDL statement, and there is code to prevent this. However, the code was missing the case where the DDL is the very first event after slave start. In this case, following transactions could run in parallel with the DDL, which can cause the slave to hang or even corrupt slave in unlucky cases. commitecfc3de57eAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon May 11 09:21:04 2015 +0300 MDEV-8129: Compilation warnings in log0crypt.cc Fix incorrect types and compiler warnings. commit83ca074c75Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun May 10 12:52:28 2015 +0200 Last commit was done with wrong files commit9dee994d99Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun May 10 11:58:23 2015 +0200 Get rid of GCC warnings about unused parameters modified: storage/connect/array.cpp modified: storage/connect/blkfil.cpp modified: storage/connect/block.h modified: storage/connect/catalog.h modified: storage/connect/colblk.cpp modified: storage/connect/colblk.h modified: storage/connect/connect.cc modified: storage/connect/filamap.cpp modified: storage/connect/filamdbf.cpp modified: storage/connect/filamfix.cpp modified: storage/connect/filamtxt.cpp modified: storage/connect/filamtxt.h modified: storage/connect/filamvct.cpp modified: storage/connect/filamzip.cpp modified: storage/connect/filter.h modified: storage/connect/ha_connect.c modified: storage/connect/jsonudf.cpp modified: storage/connect/mycat.h modified: storage/connect/myconn.cpp modified: storage/connect/plgdbutl.cpp modified: storage/connect/reldef.cpp modified: storage/connect/reldef.h modified: storage/connect/tabcol.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabdos.h modified: storage/connect/tabfix.cpp modified: storage/connect/tabfmt.cpp modified: storage/connect/tabfmt.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h modified: storage/connect/table.cpp modified: storage/connect/tabmul.cpp modified: storage/connect/tabmysql.cpp modified: storage/connect/tabmysql.h modified: storage/connect/taboccur.cpp modified: storage/connect/tabpivot.cpp modified: storage/connect/tabsys.cpp modified: storage/connect/tabtbl.cpp modified: storage/connect/tabtbl.h modified: storage/connect/tabutil.cpp modified: storage/connect/tabutil.h modified: storage/connect/tabvct.cpp modified: storage/connect/tabvir.cpp modified: storage/connect/tabvir.h modified: storage/connect/tabxcl.cpp modified: storage/connect/tabxcl.h modified: storage/connect/tabxml.cpp modified: storage/connect/tabxml.h modified: storage/connect/valblk.cpp modified: storage/connect/valblk.h modified: storage/connect/value.cpp modified: storage/connect/value.h modified: storage/connect/xindex.cpp modified: storage/connect/xindex.h modified: storage/connect/xobject.h modified: storage/connect/xtable.h commite11cad9e9dMerge:99f496ae650880284bf7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat May 9 17:09:21 2015 -0400 Merge tag 'mariadb-10.0.19' into 10.0-galera commite1868fd613Author: Sergei Golubchik <serg@mariadb.org> Date: Thu May 7 22:18:34 2015 +0200 MDEV-8115 mysql_upgrade crashes the server with REPAIR VIEW on REPAIR don't do table-specific stuff for views (because even if the view has a temp table opened for it, it's not opened all the way down the engine. In particular, Aria crashes in maria_status() because MARIA_HA* info - that is table->table->file->file - is NULL) commit5fdb14542aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat May 9 11:19:36 2015 +0200 MDEV-8021 "InnoDB: Tablespace id 4 encrypted but encryption service not available. Can't continue opening tablespace" on server restart when there are encrypted tables key id was written in the wrong place on the tablespace first page (thus its value could not be read back later) commitd259376fd8Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu May 7 19:13:22 2015 +0300 MDEV-8041: InnoDB redo log encryption Merged new version of InnoDB/XtraDB redo log encryption from Google provided by Jonas Oreland. commit99f496ae65Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Apr 28 11:53:57 2015 -0400 Fix for some failing tests commite69fbd4e38Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Apr 21 13:22:08 2015 -0400 Post-merge fix commit3331d4e07eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Apr 21 13:17:17 2015 -0400 Merge galera tests from github.com/codership/mysql-wsrep commit608a1ce5b1Author: Alexey Yurchenko <ayurchen@gmail.com> Date: Sat Mar 28 13:57:38 2015 +0200 Refs codership/mysql-wsrep#33 - change const initialization to assignment to follow the genral style of the file. commit58bbe9b004Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Mar 12 05:06:33 2015 -0700 Fix suite/galera/t/galera_var_OSU_method.test commit504ff56eceAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Thu Mar 12 02:52:56 2015 -0700 Adjust tests now that wsrep_OSU_method is a session variable. commit00afd63984Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Thu Mar 12 10:25:34 2015 +0200 refs codership/mysql-wsrep#90 made wsrep_OSU_method session variable commit03a8f83e2cAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Wed Mar 11 04:33:12 2015 -0700 Add tests for galera/mysql-wsrep#90 commit2df5ff2691Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Wed Mar 11 13:04:00 2015 +0200 refs codership/mysql-wsrep#90 - fixed race in OSU Make sure that thd uses the same method to begin and end OSU operation. commitc16ec07419Author: Alexey Yurchenko <ayurchen@gmail.com> Date: Thu Mar 26 23:19:52 2015 +0200 Refs codership/mysql-features#33 - this fixes a bug where wsrep_start_position_update() would pass local_uuid and local_seqno to wsrep_sst_received() instead of real, submitted position. commit0115ca2ae1Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Thu Mar 26 10:25:58 2015 +0200 refs codership/mysql-wsrep#98 fixed sidno initialization Sidno initialization was skipped in wsrep_sst_received() if the received position matched to current position. However, sidno initialization must be done every time server is started to add inverted group uuid into sidno map. commit4ed9ddd30eAuthor: Alexey Yurchenko <ayurchen@gmail.com> Date: Mon Mar 23 23:27:28 2015 +0200 Refs codership/mysql-wsrep#33 1. factored XID-related functions to a separate wsrep_xid.cc unit. 2. refactored them to take refrences instead of pointers where appropriate 3. implemented wsrep_get/set_SE_position to take wsrep_uuid_t and wsrep_seqno_t instead of XID 4. call wsrep_set_SE_position() in wsrep_sst_received() to reinitialize SE checkpoint after SST was received, avoid assert() in setting code by first checking current position. commitf5bce5a600Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Wed Mar 18 14:56:46 2015 +0200 codership/mysql-wsrep#67 - total order isolation for FLUSH The following FLUSH commands are now executed under total order isolation: * FLUSH DES_KEY_FILE * FLUSH HOSTS * FLUSH PRIVILEGES * FLUSH QUERY CACHE * FLUSH STATUS * FLUSH USER_RESOURCES commit0fdfca6937Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Tue Feb 10 18:27:21 2015 +0200 refs codership/mysql-wsrep#60 explicit braces around empty body commit226c249ab3Author: sjaakola <seppo.jaakola@iki.fi> Date: Thu Jan 29 11:06:44 2015 +0200 refs codership/mysql-wsrep#53 - fencing LOAD DATA splitting related commit to not happen with ALTER processing commitf725b0c49dAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Dec 16 00:30:26 2014 -0800 LP1378355 - Reduce memory consumption slightly. commitda29834840Author: Philip Stoev <philip.stoev@galeracluster.com> Date: Tue Dec 16 00:22:55 2014 -0800 LP1378355 - Address review feedback, do not pass --defaults-group-suffix for mysqldump SST commit7d550c76beAuthor: Philip Stoev <philip.stoev@galeracluster.com> Date: Mon Dec 15 04:45:58 2014 -0800 LP1378355 - Pass the value of --defaults-group-suffix to xtrabackup during SST commit9d15689d1fAuthor: Alexey Yurchenko <ayurchen@gmail.com> Date: Wed Dec 10 23:29:28 2014 +0200 Refs #25 - made sure signals that may be set to ignored in mysqld were set to default in the child process. commit14b6172075Author: Alexey Yurchenko <ayurchen@gmail.com> Date: Tue Dec 9 22:13:14 2014 +0200 Going more MTR-friendly - for SST prefer to use mysql client, mysqldump and my_print_defaults from the local build tree. commit91417b4047Author: sjaakola <seppo.jaakola@iki.fi> Date: Mon Nov 17 23:47:14 2014 +0200 refs #7 - merged fix from 5.5 branch. However, 5.6 branch has not (yet) surfaced similar applier hang as 5.5 commit13a9bcc6beAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Thu Nov 13 14:04:23 2014 +0200 refs #11 #13 - skipping TOI, if all affected tables are temporary commit21bc3e3fdaAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Wed Nov 12 14:59:04 2014 +0200 refs #2 - added binlog stmt cache reset after commit. This is needed for non-InnoDB statements commit9fdae3eb60Author: dirtysalt <dirtysalt1987@gmail.com> Date: Fri Oct 31 15:55:18 2014 +0800 Refs #8: preserve gvwstate.dat for pc recovery feature commit0f405f216eAuthor: Teemu Ollakka <teemu.ollakka@codership.com> Date: Wed Oct 29 17:08:51 2014 +0200 refs #6 fixed compilation errors with -DWITH_DEBUG=1, removed unwanted files commitab54f5a8b9Author: Vicentiu Ciorbaru <vicentiu@mariadb.org> Date: Fri May 8 17:31:54 2015 +0300 Fix win/ files to be stored with LF in repository On Windows, the files get checked out with CRLF thanks to .gitattributes. commit5ae8d06df4Author: Vicentiu Ciorbaru <vicentiu@mariadb.org> Date: Fri May 8 17:27:41 2015 +0300 Update .gitattributes commit91ee98a8c8Author: Alexander Barkov <bar@mariadb.org> Date: Fri May 8 00:34:06 2015 +0400 MDEV-7807 information_schema.processlist truncates queries with binary strings Adding a new column INFORMATION_SCHEMA.PROCESSLIST.INFO_BINARY. commit0fcc350f73Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Apr 8 10:55:51 2015 +0400 MDEV-7922 - ERROR 1939 (HY000): Engine PERFORMANCE_SCHEMA failed to discover table Performance schema discovery fails if connection has no active database set. This happened due to restriction in SQL parser: table name with no database name is ambiguous in such case. Fixed by temporary substitution of default database with being discovered table database. commit3832bda1baAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu May 7 14:00:14 2015 +0300 Fix compiler error if compiler does not support c99 style initializers. commit7ed673f35cAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Mar 17 19:49:04 2015 +0400 MDEV-7793 - Race condition between XA COMMIT/ROLLBACK and disconnect XA COMMIT/ROLLBACK of XA transaction owned by different thread may access freed memory if that thread disconnects at the same time. Also concurrent XA COMMIT/ROLLBACK of recovered XA transaction were not serialized properly. commitb975685036Merge:bad81f23f63d801e606bAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed May 6 16:48:17 2015 +0300 Merge pull request #54 from openquery/MDEV-8053-c99-style-for-structure-members-10.1 c99 style for assigning structure members commitbad81f23f6Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed May 6 15:16:28 2015 +0300 MDEV-8046: Server crashes in pfs_mutex_enter_func on select from I_S.INNODB_TABLESPACES_ENCRYPTION if InnoDB is disabled Problem was that information schema tables innodb_tablespaces_encryption and innodb_tablespaces_scrubbing where missing required check is InnoDB enabled or not. commit2f25c653adAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed May 6 14:09:10 2015 +0300 MDEV-8074: Failing assertion: mutex->magic_n == MUTEX_MAGIC_N in file sync0sync.cc line 508 Problem was that e.g. on crash recovery fil_space_crypt_close_tablespace and fil_space_crypt_mark_space_closing access mutex that is not yet initialized. Mutex is naturally initialized only if encryption is configured. commit31c069eb4dMerge:539b3ca87def99edf1a8Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed May 6 12:46:33 2015 +0200 Merge MDEV-8103 into 10.1 commit1db5b849abAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Tue May 5 18:38:54 2015 +0200 - Fix a regression bug on (XML) HTML tables. modified: tabxml.cpp added: xml_html.test xml_html.result beers.xml coffee.htm - Fix MDEV-7935 by suppressing error resetting code in delete_or_rename_table. However, the issue is that this code was added because without it an assertion was raised in some cases. Unfortunately I can't remember what were these cases. Therefore fixing it in this case will perhaps make a new crash happening on another cases. modified: ha_connect.cc - Add the UDF Json_Array_Delete. modified: jsonudf.cpp commit539b3ca87dAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue May 5 09:30:17 2015 +0400 - Moving Item_func_spatial_mbr_rel from Item_bool_func2 to Item_bool_func, as Item_func_spatial_mbr_rel needs nothing from Item_bool_func2. - Renaming Item_func_spacial_rel (the class that implements precise spacial relations) to Item_func_spatial_precise_rel - Adding a new abstract class Item_func_spatial_rel as a common parent for Item_func_spatial_precise_rel and Item_func_spatial_mbr_rel. commit2fe4d0e6cdAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue May 5 01:09:47 2015 +0400 MDEV-7950 Item_func::type() takes 0.26% in OLTP RO Step #3: Splitting the function check_equality() into a method in Item. Implementing Item::check_equality() and Item_func_eq::check_equality(). Implement Item_func_eq::build_equal_items() in addition to Item_func::build_equal_items() and moving the call for check_equality() from Item_func::build_equal_items() to Item_func_eq::build_equal_items(). commitd2562004c5Merge:42f99d00ee4c87f72773Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon May 4 13:50:52 2015 -0400 Merge tag 'mariadb-5.5.43' into 5.5-galera commit42f99d00eeAuthor: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Wed Mar 18 21:17:31 2015 +0200 codership/mysql-wsrep#67 - total order isolation for FLUSH The following FLUSH commands are now executed under total order isolation: * FLUSH DES_KEY_FILE * FLUSH HOSTS * FLUSH PRIVILEGES * FLUSH QUERY CACHE * FLUSH STATUS * FLUSH USER_RESOURCES This patch was backported from mysql-wsrep/5.6 commit cdea608d9a27701d76d0deec49976aa0a08b1a56 commitf3efc63283Author: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Tue Feb 10 18:27:21 2015 +0200 refs codership/mysql-wsrep#60 explicit braces around empty body commit70d6236afdAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Tue Feb 10 00:47:02 2015 +0200 refs codership/mysql-wsrep#55 - To avoid compiler warming: sql/sql_parse.cc: In function 'bool do_command(THD*)': sql/sql_parse.cc:758:20: error: 'packet_length' may be used uninitialized in this function [-Werror=maybe-uninitialized] if ((WSREP(thd) && packet_length == packet_error) || [ commitf6b1e0fe0aAuthor: Teemu Ollakka <teemu.ollakka@galeracluster.com> Date: Thu Feb 5 14:38:03 2015 +0200 refs #55 fixed debug build compilation errors commitb02d736560Author: Alexey Yurchenko <ayurchen@gmail.com> Date: Wed Dec 10 23:29:28 2014 +0200 Refs #25 - made sure signals that may be set to ignored in mysqld were set to default in the child process. commitc72ed05cdcAuthor: Alexey Yurchenko <ayurchen@gmail.com> Date: Wed Dec 10 01:45:50 2014 +0200 This commit * improves MySQL client version check making it no less than required as opposed to exactly as required. * adds event table copying to ensure same results as with rsync SST. commit822c00536dAuthor: Alexey Yurchenko <ayurchen@gmail.com> Date: Tue Dec 9 22:13:14 2014 +0200 Going more MTR-friendly - for SST prefer to use mysql client, mysqldump and my_print_defaults from the local build tree. commit2a6e1230e3Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Mar 30 17:58:41 2015 -0400 refs #7 - handling lock queue granting in BF-BF conflict situation Merge fix to xtradb. commit68fe3a39acAuthor: sjaakola <seppo.jaakola@iki.fi> Date: Sun Nov 16 16:26:36 2014 +0200 refs #7 - handling lock queue granting in BF-BF conflict situation commit51744b3f80Author: dirtysalt <dirtysalt1987@gmail.com> Date: Fri Oct 31 15:55:18 2014 +0800 Refs #8: [5.5] preserve gvwstate.dat for pc recovery feature commit9090c3efcaAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon May 4 18:31:24 2015 +0400 Adding a test for Item_default_value in WHERE condition: WHERE DEFAULT(col) It seems this was not covered yet. commit462bca365aAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon May 4 18:12:31 2015 +0400 MDEV-7950 Item_func::type() takes 0.26% in OLTP RO Step 2c: After discussion with Igor, it appeared that Item_field and Item_ref could not appear in this context in the old function build_equal_item_for_cond: else if (cond->type() == Item::FUNC_ITEM || cond->real_item()->type() == Item::FIELD_ITEM) The part of the condition checking for Item_field::FIELD_ITEM was a dead code. - Moving implementation of Item_ident_or_func_or_sum::build_equal_items() to Item_func::build_equal_items() - Restoring deriving of Item_ident and Item_sum_or_func from Item_result_field. Removing Item_ident_or_func_or_sum. commit13c0a60677Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sat May 2 15:49:02 2015 +0200 Fix MDEV-8090 in tabmysql.cpp commit6dda9e04faAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Fri May 1 18:53:50 2015 +0200 Same as last 10.0 commit commit53382ac128Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri May 1 14:23:08 2015 +0300 MDEV-8079: Crash when running MariaDB Debug with InnoDB on Windows Problem was that std::vector was allocated using calloc instead of new, this caused vector constructor not being called and vector metadata not initialized. commitff1e0821d1Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Apr 30 12:36:39 2015 +0400 MDEV-8073 - Build error in sql/mdl.cc on OS X 10.10 C++03 seem to require default constructor for const objects even though they're fully initialized. There is defect report for this: http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_active.html#253 Apparently some compilers (e.g. gcc) addressed this defect report, while some (e.g. clang) did not. Added empty default constructor to MDL_scoped_lock and MDL_object_lock classes. Also replaced lf_hash_search_using_hash_value() with lf_hash_search(). The latter will call mdl_key->hash_value() anyway. commit499deca7fcAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed Apr 29 17:53:27 2015 +0400 A clean-up forc8141f5314MDEV-7950 Item_func::type() takes 0.26% in OLTP RO (Step#2) - Item_ref was doing unnecessary extra job after the "MDEV-7950 Step#2" patch. Fallback to Item::build_equal_items() if real_type() is not FIELD_ITEM. Note, Item_ref::build_equal_items() will most likely be further simplified. Waiting for Sanja and Igor to check a possibly dead code. - Safety: Adding Item_sum::build_equal_items() with ASSERT, as Item_sum should never appear in build_equal_items() context. commit9cdf5c2bfdMerge:c8141f53149088f26f20Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Apr 29 11:30:26 2015 +0200 Merge branch '10.0' into 10.1 commit8aa84821b4Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Apr 28 18:59:11 2015 -0400 MDEV-8057: Galera conflicts with InnoDB buffer pool dump Avoid creating innodb buffer pool dump/load thread if mysqld is started with wsrep recovery mode (--wsrep-recover). (Merged fix for lp:1305955 from lp:percona-xtradb-cluster) commitc8141f5314Author: Alexander Barkov <bar@mariadb.org> Date: Tue Apr 28 14:06:07 2015 +0400 MDEV-7950 Item_func::type() takes 0.26% in OLTP RO Step#2: 1. Removes the function build_equal_items_for_cond() and introduces a new method Item::build_equal_items() instead, with specific implementations in the following Items: Item (the default implementation) Item_ident_or_func_or_sum Item_cond Item_cond_and 2. Adds a new abstract class Item_ident_or_func_or_sum, a common parent for Item_ident and Item_func_or_sum, as they have exactly the same build_equal_items(). 3. Renames Item_cond_and::cond_equal to Item_cond_and::m_cond_equal, to avoid confusion between the member and local variables named "cond_equal". commit3d801e606bAuthor: Daniel Black <grooverdan@users.sourceforge.net> Date: Mon Apr 27 21:08:52 2015 +1000 c99 style for assigning structure members commit46816996c8Author: Alexander Barkov <bar@mariadb.org> Date: Sun Apr 26 01:46:55 2015 +0400 Moving members' initialization from LEX::init_last_field to constructor Create_field::Create_field(). commitecb009b2cbAuthor: Alexander Barkov <bar@mariadb.org> Date: Sat Apr 25 00:54:00 2015 +0400 Adding Type_std_attributes to reduce some duplicate code. TODO: move some methods from Item to Type_std_attributes. commit04fb09d781Author: Alexander Barkov <bar@mariadb.org> Date: Fri Apr 24 12:59:21 2015 +0400 Deriving Item_row from Item_args and sharing more code between Item_func, Item_sum, Item_row. commitc2dd88ac85Merge:fc1f301e91b616991a68Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Thu Apr 23 14:40:10 2015 +0200 Merge MDEV-8031 into 10.1 commit44b44dd1d7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Apr 22 18:30:27 2015 -0400 Comments for wsrep_exec_mode's. commit581b49dd3dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Apr 22 18:13:30 2015 -0400 MDEV-7995 : DMLs not getting replicated with log-bin=OFF & binlog-format != ROW This bug is a side-effect of fix for MDEV-6924, where we completely stopped a statement-based event from getting into the binlog cache when binary logging is not enabled (and thus, wsrep_emulate_binlog mode = 1). As a result, the SBR events were not replicated. Fixed by allowing the SBR events to be written into the binlog cache. Note: Only DMLs were affected as DDLs are replicated via TOI. Merged galera_create_trigger.test from github.com/codership/mysql-wsrep. commitfc1f301e91Author: Alexander Barkov <bar@mariadb.org> Date: Wed Apr 22 12:40:23 2015 +0400 MDEV-8024 Remove excessive update_used_tables() calls commite7a7ea7ec1Merge:6876a7dc4e4760528754Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Apr 21 10:31:39 2015 +0200 Merge branch '10.0' into 10.1 commit6876a7dc4eAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Apr 20 15:37:45 2015 +0200 Bump VERSION following 10.1.4 release commitd4e3aa4c6fAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Apr 20 14:23:55 2015 +0200 After-merge fixes: .result file update commita15a4d674dMerge:791b0ab5db14d15785d1Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Apr 20 13:22:51 2015 +0200 Merge MDEV-7802 into 10.1 commit791b0ab5dbMerge:c6d08ecce3519ad0f7e3Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Apr 20 13:21:58 2015 +0200 Merge 10.0 -> 10.1 commitc6d08ecce3Merge:18715befd2bc902a2bfcAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Apr 20 11:45:22 2015 +0400 Merge commit 'bc902a2bfc46add0708896c07621e3707f66d95f' into 10.1 commitb3f9838f5bAuthor: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Apr 19 12:15:58 2015 +0200 Update 10.1 with changes from 10.0 commit18715befd2Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Apr 17 19:48:55 2015 +0200 Post-merge fix: build error in innodb-enabled build. commit5f233c55d0Merge:22a7b4dee0167332597fAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Apr 17 15:19:27 2015 +0200 Merge 10.0 -> 10.1. commit167332597fMerge:8125db1d9a702fdc52faAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Apr 17 15:18:44 2015 +0200 Merge 10.0 -> 10.1. Conflicts: mysql-test/suite/multi_source/multisource.result sql/sql_base.cc commit22a7b4dee0Author: Alexander Barkov <bar@mariadb.org> Date: Fri Apr 17 16:26:08 2015 +0400 Removing duplicate code/declarations: Removing "Field *result_field" from Item_field and Item_ref, and deriving Item_ident and Item_ref from Item_result_field instead. commit14d15785d1Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Apr 17 12:45:55 2015 +0200 MDEV-7802: Omit one test which could fail on very loaded host. commit8125db1d9aAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Apr 17 12:36:31 2015 +0400 Moving fix_length_and_dec() from Item_result_field to Item_func_or_sum, as the other decendants of Item_result_field (Item_avg_field, Item_variance_field, Item_cache_wrapper) don't need fix_length_and_dec(). commit99898c6f76Author: Alexander Barkov <bar@mariadb.org> Date: Fri Apr 17 09:52:44 2015 +0400 Minor reorganization in Item hierarchy, to remove duplicate code. - Adding a new class Item_args, represending regular function or aggregate function arguments array. - Adding a new class Item_func_or_sum, a parent class for Item_func and Item_sum - Moving Item_result_field::name() to Item_func_or_sum(), as name() is not needed on Item_result_field level. commit0095697784Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Apr 16 16:29:02 2015 -0400 MDEV-7996 : CURRENT_USER definer does not replicate for triggers THD's lex->definer initially holds "*current_user" for CURRENT_USER(). As a result when wsrep tries to create the trigger query, it incorrectly uses "*current_user". Fixed by calling get_current_user() to get the real current user. Merged galera_create_trigger.test from github.com/codership/mysql-wsrep. commit3c4668c519Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Apr 15 23:06:03 2015 -0400 wsrep_sst_mysqldump : Fix server version and a syntax error commitd051f6c36bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Apr 15 11:12:12 2015 -0400 MDEV-6594: Use separate domain_id for Galera transactions Post-fix : A typo and better error handling. commita1f3356bf3Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Apr 15 10:21:46 2015 -0400 Update galera package name/version for debian commit0c6904258bMerge:f6f253bddc5d2b85a297Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Apr 14 14:10:37 2015 +0200 Merge MDEV-7975 into 10.1 commitf6f253bddcAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Apr 14 04:02:45 2015 -0700 Fix a typo, s/false/NULL/. commit201c985be5Author: Alexander Barkov <bar@mariadb.org> Date: Mon Apr 13 22:36:49 2015 +0400 MDEV-7886 CREATE VIEW IF NOT EXISTS produces a wrong warning commited34927065Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Apr 13 14:38:25 2015 +0200 MDEV-7936: Assertion `!table || table->in_use == _current_thd()' failed on parallel replication in optimistic mode Additional 10.1-specific test case. commit2de8db6296Merge:8a01a0acb360d094aeacAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Apr 13 14:28:07 2015 +0200 Merge MDEV-7936 into 10.1 commit8a01a0acb3Author: Alexander Barkov <bar@mariadb.org> Date: Mon Apr 13 11:26:49 2015 +0400 MDEV-7920 main.group_min_max fails in buildbot with valgrind commitd8a4a83635Merge:7ac2f1fbf12bbf3b89f6Author: Sergei Petrunia <psergey@askmonty.org> Date: Sun Apr 12 10:48:20 2015 +0200 Merge branch 'bb-10.1-explain-analyze' into 10.1 commit7ac2f1fbf1Author: Sergei Petrunia <psergey@askmonty.org> Date: Sun Apr 12 10:30:10 2015 +0200 Update test results after previous pushes commit2bbf3b89f6Author: Sergei Petrunia <psergey@askmonty.org> Date: Sun Apr 12 06:07:58 2015 +0200 MDEV-7836: ANALYZE FORMAT=JSON should provide info about GROUP/ORDER BY Fix EXPLAIN FORMAT=JSON to produce output that's not worse than the tabular form. commitcc8da9b75aMerge:771dec39fda445b83d73Author: Sergei Petrunia <psergey@askmonty.org> Date: Sun Apr 12 05:34:30 2015 +0200 Merge ../10.1-explain-analyze into bb-10.1-explain-analyze commita445b83d73Merge:0719df781ed214c83b5eAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sun Apr 12 05:16:48 2015 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit771dec39fdMerge:0719df781ed214c83b5eAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sun Apr 12 05:07:39 2015 +0300 Merge branch '10.1' into bb-10.1-explain-analyze commit0719df781eMerge:4938b8226337e87b5873Author: Sergei Petrunia <psergey@askmonty.org> Date: Sun Apr 12 04:59:34 2015 +0300 Merge commit4938b82263Author: Sergei Petrunia <psergey@askmonty.org> Date: Sun Apr 12 04:48:42 2015 +0300 MDEV-7836: ANALYZE FORMAT=JSON should provide info about GROUP/ORDER BY Provide basic info about sorting/grouping done by the queries. commitd214c83b5eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Apr 11 10:22:26 2015 +0200 mtr: make search_pattern_in_file.inc more verbose report when a pattern is found do not abort, but merely report when a pattern is not found commit4e15146fe6Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Apr 11 10:13:49 2015 +0200 update tokudb test results afterdd8f93195that is, after commitdd8f931957Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Apr 10 02:36:54 2015 +0200 be less annoying about sysvar-based table attributes do not *always* add them to the create table definition, but only when a sysvar value is different from a default. also, when adding them - don't quote numbers commit4a7472bbf2Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Apr 11 00:28:42 2015 +0200 fix a crash in innodb.innodb-wl5522-zip,xtradb dereferencing of the uninitialized pointer bpade->slot (when compiled without UNIV_DEBUG) commita73676b2e6Merge:24341cb6cb135f203d28Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Apr 10 19:32:14 2015 +0200 Merge branch '10.1' into bb-10.1-serg commit24341cb6cbAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Apr 10 18:01:53 2015 +0200 add encryption plugins to deb packages commit135f203d28Author: Alexander Barkov <bar@mariadb.org> Date: Fri Apr 10 17:04:44 2015 +0400 A cleanup for the contributed patch for MDEV-7816 ALTER with DROP INDEX and ADD INDEX .. COMMENT='comment2' ignores the new comment commitd2ed256ef7Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Apr 10 14:24:58 2015 +0200 move debug_ and example_key_management plugins to test component commit899c5c32cfAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Apr 10 13:39:29 2015 +0200 smarter MY_CHECK_AND_SET_COMPILER_FLAG If a flag is supported only for C or C++ - add it to the corresponding compiler option list. Old behavior was to add always to both, but only if supported in both. commit87b46dcdc9Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Apr 10 13:30:12 2015 +0200 disable scrubbing tests on windows unportable, use grep commit23e90e9a22Merge:37e87b58734feaa06c84Author: Alexander Barkov <bar@mariadb.org> Date: Fri Apr 10 15:17:44 2015 +0400 Merge branch 'MDEV-7816' of git://github.com/f4rnham/server into 10.1 commit7d49e6940eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Apr 10 09:46:21 2015 +0200 fix "use mutex before initialization" bug in example_km plugin that for some reasons worked on linux, but crashed on windows commit966b236612Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 21:04:05 2015 +0200 add support for --innodb-encrypt-tables=FORCE this will prevent user from creating tables with ENCRYPTED=OFF commitda06baa11fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 20:44:56 2015 +0200 mtr: *.opt files, always enable innodb-encrypt-log because one is supposed always to use it with innodb-encrypt-tables commitdab6c83744Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 18:30:05 2015 +0200 allow srv_encrypt_tables and ENCRYPTED=YES to be used together commitbc9f118e29Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 17:59:34 2015 +0200 rename table attribute ENCRYPTION=ON/OFF to ENCRYPTED=YES/NO commitea764f5f52Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 14:09:06 2015 +0200 s/innodb_default_encryption_key/innodb_default_encryption_key_id/ and make it a session variable, not global, as any decent default sysvar for a table attribute should be commit92ff523619Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Apr 10 02:39:36 2015 +0200 change ENCRYPTION_KEY_ID to be HA_TOPTION_SYSVAR instead of manually implenting "default from a sysvar" in the code commitdd8f931957Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Apr 10 02:36:54 2015 +0200 be less annoying about sysvar-based table attributes do not *always* add them to the create table definition, but only when a sysvar value is different from a default. also, when adding them - don't quote numbers commiteb29a63e45Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 11:14:57 2015 +0200 SET STATEMENT timestamp=xxx .... fix sys_var->is_default() method (that was using default_val property in a global sys_var object to track per-session state): * move timestamp to a dedicated Sys_var_timestamp class (in fact, rename Sys_var_session_special_double to Sys_var_timestamp) * make session_is_default a virtual method with a special implementation for timestamps * other variables don't have a special behavior for default values and can have session_is_default() to be always false. commit0a9052f591Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 00:37:54 2015 +0200 Store the key id in the tablespace and read it back commit97d5de4ccfAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 00:37:47 2015 +0200 Add encryption key id to the API as a distinct concept which is separate from the encryption key version commit5dffda3cccMerge:129e960179d2b87801b6Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 19:27:40 2015 +0200 Merge branch 'bb-10.1-jan-encryption' into bb-10.1-serg With changes: * update tests to pass (new encryption/encryption_key_id syntax). * not merged the code that makes engine aware of the encryption mode (CRYPT_SCHEME_1_CBC, CRYPT_SCHEME_1_CTR, storing it on disk, etc), because now the encryption plugin is handling it. * compression+encryption did not work in either branch before the merge - and it does not work after the merge. it might be more broken after the merge though - some of that code was not merged. * page checksumming code was not moved (moving of page checksumming from fil_space_encrypt() to fil_space_decrypt was not merged). * restored deleted lines in buf_page_get_frame(), otherwise innodb_scrub test failed. commit129e960179Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 19:06:11 2015 +0200 fix log_blocks_crypt() to actually decrypt the encrypted log It used to double-encrypt it, relying on the fact that second encrypt() call was (like XOR) negating the effect of the first one. commitd6b912c64dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Apr 9 00:26:37 2015 +0200 update XtraDB/InnoDB plugin maturity to match the server because of encryption changes - make it beta and let it mature together with the server commit3a2ec3fca6Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Apr 8 22:07:37 2015 +0200 make innodb_encryption_debug test more robust commitf130da7b00Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Apr 5 17:37:06 2015 +0200 clarify/simplify new innodb sysvars: help texts commit87cf86519eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Apr 5 17:33:32 2015 +0200 clarify/simplify new innodb sysvars: innodb-scrub-force-testing rename to innodb-debug-force-scrubbing commit19e76814b7Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Apr 5 17:29:43 2015 +0200 clarify/simplify new innodb sysvars: innodb-scrub-log-interval rename to innodb-scrub-log-speed commit72c8b3fcb2Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Apr 5 13:16:59 2015 +0200 small cleanups as per review commit4d40a7d133Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Apr 1 22:15:11 2015 +0200 remove now-empty my_aes.{h,cc} move remaning defines to my_crypt, add MY_ namespace prefix commit65e7826070Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Apr 1 21:25:02 2015 +0200 renames to follow single consistent naming style with namespace prefixes commitc0878f64c5Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Apr 1 18:26:19 2015 +0200 remove wrappers in encryption_keys.cc invoke plugin methods directly commitbb1b61b312Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 31 19:32:35 2015 +0200 encryption plugin controls the encryption * no --encryption-algorithm option anymore * encrypt/decrypt methods in the encryption plugin * ecnrypt/decrypt methods in the encryption_km service * file_km plugin has --file-key-management-encryption-algorithm * debug_km always uses aes_cbc * example_km changes between aes_cbc and aes_ecb for different key versions commit9ccafffc29Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 27 09:45:22 2015 +0100 rename "encryption key management plugin" to "encryption plugin" because it's going to do more than just key management commit6d3dace7d9Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Apr 8 10:57:32 2015 +0200 mtr: don't disable tests in suite.pm unnecessary only those tests should be disabled in suite.pm that cannot be disabled from mysqltest files (e.g. when the server is started with a special command-line option - unknown option will abort the server before mysqltest will start its checks). commit37e87b5873Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Apr 9 16:47:04 2015 +0300 MDEV-6382: ANALYZE $stmt and security Add test coverage. The issue itself has been fixed already. commitb05383cb14Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Apr 8 20:14:48 2015 +0200 MDEV-7835: ANALYZE FORMAT=JSON should show buffer sizes commit697194461aAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Apr 8 10:13:36 2015 +0200 MDEV-7856: EXPLAIN FORMAT=JSON should show partitions commitabba4184e6Merge:66ff1632f515a2b5aab1Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Thu Apr 9 10:05:27 2015 +0200 Merge MDEV-7940 into 10.1 commit66ff1632f5Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Apr 8 16:25:01 2015 +0300 MDEV-7860: EXPLAIN FORMAT=JSON crashes for loose scan query (Based on original patch by Sanja Byelkin) Make the code that produces JSON output handle LooseScan quick select. The output we produce is compatible with MySQL 5.6. commit82b9eb5e3aMerge:7ee1a41ce1b3c7c8cde8Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Apr 8 15:11:44 2015 +0200 Merge MDEV-7910 into 10.1 commit7ee1a41ce1Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Apr 8 13:15:04 2015 +0200 MDEV-7888, MDEV-7929: Parallel replication hangs sometimes on ANALYZE TABLE or DDL Follow-up patch with 10.1-specific changes. Add test cases that more closely resembles the original bug report (which uses the 10.1-specific --slave-parallel-mode=optimistic). Also fix the code so that ANALYZE statements are now marked as DDL, and will not be attempted to speculatively run in parallel with other transactions. commit48c10fb5f7Merge:2b475b567e3b961347dbAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Apr 8 11:04:24 2015 +0200 Merge MDEV-7888 and MDEV-7929 into 10.1. commit6a3932fdd0Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 31 19:53:57 2015 +0200 use key derivation procedure for all encryption algorithms commitef5b4889c2Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 31 19:00:51 2015 +0200 optimize encryption api only one encryption key lookup in most cases instead of three (has_key, get_key_size, get_key). commitc91e3260e2Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 30 18:00:50 2015 +0200 tests for file_key_management plugin key file parser commite02749aaf5Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Mar 28 13:25:25 2015 +0100 completely rewrote file_key_management plugin numerous issues fixed: * buffer overflows * error conditions aren't checked (crash if file doesn't exist) * accessing random unallocated memory * hard-coded password * arbitrary hard-coded key id limit * incomprehensible error messages (for key_id == 0 it reported "The key could not be initialized", for syntax errors the message was "Wrong match of the keyID, see the template", for a key id larger than hard-coded limit the message was "No asked key", and there was an error "Is comment" for a comment). * tons of small mallocs, many are freed few lines down in the code * malloc(N) and new char[N] are used both, even in the same function * redundant memory copies * pcre - "I can solve it with regular expressions" - with incorrect regexes * parser context stored in a singleton * keys are stored as strings and are strlen-ed and hex2bin-ed on every get_key() request * lots of useless code (e.g. sprintf instead of a pointer assignment, checking of the file length to read a part of it in a fixed buffer, multiplying by sizeof(char) in many places, etc) * this list is not exhaustive commit9bda4bc52aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 30 14:16:34 2015 +0200 report a plugin loading offset at dlopen time not an address of some arbitrarily chosen symbol; not when plugin is successfully loaded (which means - no info when plugin->init failed); commitbeea778695Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 30 17:13:42 2015 +0200 copy-paste bug in service_sha1.h commit32e5304bffAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Mar 28 18:05:53 2015 +0100 mtr: fix testname,combination syntax to work in many-combination case in particular, "innodb.innodb-page_encryption,xtradb" should select these three tests: innodb.innodb-page_encryption 'cbc,xtradb' [ pass ] 35563 innodb.innodb-page_encryption 'ctr,xtradb' [ pass ] 36858 innodb.innodb-page_encryption 'ecb,xtradb' [ pass ] 36741 and deselect all innodb_plugin tests. This was not the case, because the %test_combs hash was destructively modified in the loop commit5fcba6eb26Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Mar 28 10:55:31 2015 +0100 small cleanup * my_aes.h doesn't compile without my_global.h * typo in a comment * redundant condition * if encryption plugin fails, there's no encryption_key_manager at plugin deinit time * encryption plugin tests must run when plugin.so is present, not when a plugin is active (otherwise the test will be skipped when plugin fails to initialize). commit88632726e8Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 27 15:58:02 2015 +0100 rename plugins to remove "_plugin" from the plugin name commit817a63f273Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 26 17:40:52 2015 +0100 pass the correct key length to encryption routines commit2643cc545fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 26 17:20:23 2015 +0100 Don't crash the server if en-/decryption fails in Aria commitf379c9a820Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 26 17:00:49 2015 +0100 remove Aria-only handler flag commit39865322c6Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 26 15:57:08 2015 +0100 remove a google specific script commit7a387c0158Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 26 15:37:40 2015 +0100 table->keep_row_order no longer need to force DYNAMIC_RECORD for temporary Aria tables. It can use a faster BLOCK_RECORD commit5d8dbee97bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 26 14:01:39 2015 +0100 remove get_iv() from the key management plugin API now IVs are always handled internally commitc238e68d96Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 26 11:12:02 2015 +0100 move debug_use_static_encryption_keys and debug_encryption_key_version to a plugin commitb937574293Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Mar 25 19:36:10 2015 +0100 remove old my_aes_encrypt/decrypt and simplify Item_func_aes_encrypt/decrypt commit91f7363e4bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Mar 25 19:35:22 2015 +0100 yassl padding commitf444d13a3bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Mar 25 16:11:16 2015 +0100 my_aes* functions: support for different key lengths to: different key lengths commit2b475b567eAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Wed Apr 8 03:33:48 2015 +0300 MDEV-7927: Server crashes in in Time_and_counter_tracker::incr_loops - JOIN::save_explain_data should also set JOIN::tracker (it already sets join_tab[0].tracker). This is needed for UNIONs inside subqueries. commitd2b87801b6Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Apr 2 16:52:30 2015 +0300 Fix test failure on these scrub tests. commit4865fd105aAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Apr 2 13:49:50 2015 +0300 InnoDB/XtraDB Encryption cleanup Step 5: -- Rename encryption_key -> encryption_key_id -- Remove unnecessary code -- Fix few bugs found -- Fix test cases and results files commitaf768c2f22Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Apr 1 22:03:14 2015 +0300 InnoDB/XtraDB Encryption code cleanup Step 4: -- Review fixes -- Rename pages_page_* to pages_* -- Remove unnecessary code commit71ec0463afAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Apr 1 20:33:50 2015 +0300 Encryption cleanup Step 3: -- Make encrytion_algorithm changeable by SUPER -- Remove AES_ECB method from encryption_algorithms -- Support AES method change by storing used method on InnoDB/XtraDB objects -- Store used AES method to crypt_data as different crypt types -- Store used AES method to redo/undo logs and checkpoint -- Store used AES method on every encrypted page after key_version -- Add test commit0ba9fa35bcAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Apr 1 19:37:00 2015 +0300 InnoDB/XtraDB Encryption cleanup Step 2: -- Introduce temporal memory array to buffer pool where to allocate temporary memory for encryption/compression -- Rename PAGE_ENCRYPTION -> ENCRYPTION -- Rename PAGE_ENCRYPTION_KEY -> ENCRYPTION_KEY -- Rename innodb_default_page_encryption_key -> innodb_default_encryption_key -- Allow enable/disable encryption for tables by changing ENCRYPTION to enum having values DEFAULT, ON, OFF -- In create table store crypt_data if ENCRYPTION is ON or OFF -- Do not crypt tablespaces having ENCRYPTION=OFF -- Store encryption mode to crypt_data and redo-log commitb4a4d82396Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Apr 1 11:50:21 2015 +0300 InnoDB/XtraDB Encryption cleanup. Step 1: -- Remove page encryption from dictionary (per table encryption will be handled by storing crypt_data to page 0) -- Remove encryption/compression from os0file and all functions before that (compression will be added to buf0buf.cc) -- Use same CRYPT_SCHEME_1 for all encryption methods -- Do some code cleanups to confort InnoDB coding style commit0df8c0aa5eMerge:129822a2b76be0f80311Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Apr 7 12:02:58 2015 +0300 Merge branch 'bb-10.1-explain-analyze' into 10.1 commit6be0f80311Merge:2af935c8ec7d9e94e2e6Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Apr 7 12:01:43 2015 +0300 Merge branch 'bb-10.1-explain-analyze' of github.com:MariaDB/server into bb-10.1-explain-analyze commit129822a2b7Merge:7d9e94e2e62af935c8ecAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Apr 7 12:00:23 2015 +0300 Merge branch 'bb-10.1-explain-analyze' into 10.1 commit2af935c8ecAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Apr 7 01:29:17 2015 +0300 MDEV-7899: 10.1 is 3% slower than 10.0 in OLTP RO - Remove ANALYZE's timing code off the the execution path of regular SELECTs. - Improve the tracker that tracks counts/execution times of SELECTs or DML statements: = regular execution just increments counters = ANALYZE will also collect timings. commit7d9e94e2e6Author: Sergei Petrunia <psergey@askmonty.org> Date: Mon Apr 6 19:37:37 2015 +0300 MDEV-7916: main.analyze_format_json fails in buildbot on labrador Make the test work on case insensitive FS commiteb83e9405fAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Mon Apr 6 19:13:33 2015 +0300 MDEV-7917 main.log_tables fails sporadically in buildbot #2 mysql.slow_log table has an extra column in 10.1, so the test table copy should too -- added the column. commit2f6d63f063Merge:2936fb127d3674c363a7Author: Sergei Petrunia <psergey@askmonty.org> Date: Mon Apr 6 18:56:39 2015 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit2936fb127dAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Mon Apr 6 18:54:08 2015 +0300 MDEV-7919: main.explain_json* fail in buildbot with valgrind Correctly initialize Explain_node::connection_type, remove unused Explain_node constructor. commit3674c363a7Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Apr 6 12:45:35 2015 +0300 MDEV-7918: A number of tests fail in valgrind builder with "InnoDB: Error: Requested state 6 current state 4 old_state 4" Problem with this state transfer is that different state transfers are protected with different mutexes. commit48a77e6188Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Apr 5 14:03:35 2015 +0200 Make this repository aligned with 10.0 one commit3bbe2057daAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Mar 25 09:47:26 2015 +0100 yassl support commit2f8d101f9eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 24 20:43:20 2015 +0100 unify my_{en|de}crypt_{cbc|ecb|ctr}. no yassl support yet. commit27cc252bb7Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 24 13:52:43 2015 +0100 simplify my_crypt.cc, remove duplicate code commit6a7ee5a5a5Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 26 17:16:37 2015 +0100 encryption cleanup: small changes * comments * move my_bytes_to_key() and my_aes_hex2uint() into file_key_management_plugin * rename HA_INSERT_ORDER -> HA_PRESERVE_INSERT_ORDER * remove unused variables and declarations * fix casts * don't link innodb with pcre * remove redundant entries from aria's TARGET_LINK_LIBRARIES commit87604c4cadAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Mar 9 19:53:47 2015 +0100 encryption cleanup: delete obsolete files they should've been deleted long ago, but weren't commit16a7738bc9Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Mar 13 18:52:10 2015 +0100 MDEV-6819 st_mysql_show_var::value should be void* not char* followup commit0cbe0c9c6dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Mar 11 12:28:26 2015 +0100 remove one cmake MESSAGE (one generally should not do that, these messages are printed on every cmake run) commit47c344b00fAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sat Apr 4 00:47:10 2015 +0300 MDEV-7904: ANALYZE FORMAT=JSON doesn't print r_rows for union output Print r_rows. There is no table tracking for reading from tmp table, yet. commita220905083Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu Apr 2 18:19:33 2015 +0200 MDEV-7833:ANALYZE FORMAT=JSON and Range checked for each record commit7f613ebdb6Author: Alexander Barkov <bar@mariadb.org> Date: Fri Apr 3 15:43:55 2015 +0400 MDEV-7284 INDEX: CREATE OR REPLACE commit118fc5c688Merge:575dd77504ca2f2b7151Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Apr 3 08:50:59 2015 +0300 Adjust test timeout to let long semaphore wait signaling to happen. commit0695fdd9dfAuthor: Daniel Black <grooverdan@users.sourceforge.net> Date: Fri Apr 3 01:34:30 2015 +1100 mdev-7802-binlog_groupcommit_stats Update the description of each test case as to why it is counted in the correct binlog_group_commit_trigger_* variable. Updated rpl_parallel_multilevel2.test to identify that 3 groups occur in statement and mixed replication and one group in row based replication. commit575dd77504Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Apr 1 18:25:40 2015 -0400 MDEV-7867: Add binlog header to GRA_.log file commit1d5220d112Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Wed Apr 1 22:47:36 2015 +1100 binlog_group_commit_* status variables update remove group_commit_reason_immediate rename group_commit_reason_transaction to group_commit_trigger_lock_wait rename group_commit_reason_usec to group_commit_trigger_timeout rename group_commit_reason_count to group_commit_triggger_count commitdd7026a703Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Wed Apr 1 21:51:55 2015 +1100 All updates to binlog_status_group_commit_reason* are under LOCK_prepare_ordered commitca2f2b7151Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 31 09:54:40 2015 +0300 Adjust test wait timeout. commitcbc5157febAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 31 09:00:01 2015 +0300 MDEV-7878: innodb_scrub_background fails sporadically in buildbot (Failing assertion: offset > 0 && offset < UNIV_PAGE_SIZE) Problem was that when encrypted space was flushed page 0 is also updated but crypt data offset was sometimes not calculated. commitf573b65e41Merge:59df100922880f2273fdAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Mar 30 15:10:29 2015 +0200 Merge MDEV-7847 and MDEV-7882 into 10.0. Conflicts: mysql-test/suite/rpl/r/rpl_parallel.result sql/rpl_parallel.cc commit59df100922Author: Alexander Barkov <bar@mariadb.org> Date: Mon Mar 30 10:57:44 2015 +0400 Removing Item_string::m_cs_specified and making Item_string::is_cs_specified() virtual instead. commit49220f76aaAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Mon Mar 30 01:11:14 2015 +0300 Increased the version number commitbf963d3b52Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Mar 30 01:09:59 2015 +0300 MDEV-7874 deb package installation fails with "dpkg: dependency problems prevent configuration of mariadb-server" Added usr/share/mysql/maria_add_gis_sp_bootstrap.sql to the file lists commitb2a1187307Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu Mar 26 10:48:56 2015 +0100 MDEV-7812: ANALYZE FORMAT=JSON UPDATE/DELETE doesnt print the r_total_time_ms Tracking total time added in UPDATE/DELETE Fixed selectivity calculation in UPDATE/DELETE Macro definitions of time tracting fixed. commit84a4db263aMerge:555915faa9d7445ea6dfAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Mar 28 17:29:10 2015 -0400 Merge branch '5.5-galera' into 10.0-galera commitd7445ea6dfAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Mar 27 20:35:37 2015 -0400 MDEV-7194: galera fails to replicate DDL queries when using binlog_checksum Restore fix for MDEV-4328 (revno: 3391) that got accidentally overwritten while merging : http://bazaar.launchpad.net/~codership/codership-mysql/5.5-23/revision/3900 Added a test case. commit9b8f86f895Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Mar 27 23:44:06 2015 +0300 Better comments commit47c26d5aeeAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Mar 27 11:36:43 2015 +0200 Skip necessary encryption tests if required plugin is not found. commit50eee60504Author: Alexander Barkov <bar@mariadb.org> Date: Thu Mar 26 20:44:12 2015 +0400 Preparatory refactoring for: MDEV-6218 Wrong result of CHAR_LENGTH(non-BMP-character) with 3-byte utf8 - Moving get_text() as a method to Lex_input_stream. - Moving the unescaping part into a separate function, this piece of code will later go to /strings most likely. - Removing Lex_input_string::yytoklen, as it's not needed any more. commit4feaa06c84Author: f4rnham <f4rnham@users.noreply.github.com> Date: Thu Mar 26 00:00:12 2015 +0100 MDEV-7816 ALTER with DROP INDEX and ADD INDEX .. COMMENT='comment2' ignores the new comment Consider two indexes different if their comments differ commit01d7da6785Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Mar 25 19:11:46 2015 +0100 MDEV-7834: ANALYZE FORMAT=JSON output column should be named ANALYZE commite15d792697Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Mar 25 21:20:06 2015 +0300 Trivial test results updates commit3841e921baMerge:34fcc28e7bf42064a172Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Mar 25 21:07:23 2015 +0300 Merge branch 'bb-10.1-explain-analyze' into 10.1 commit34fcc28e7bMerge:651a142ad071bbff8de3Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Mar 25 19:34:08 2015 +0300 Merge pull request #33 from k0da/mdev-7839 Fix BigEndian build for Cassandra SE commit71bbff8de3Author: Dinar Valeev <dvaleev@suse.com> Date: Wed Mar 25 17:21:52 2015 +0100 Fix BigEndian build On BigEndian build fails with: [ 109s] /home/abuild/rpmbuild/BUILD/mariadb-10.0.17/storage/cassandra/ha_cassandra.cc:890:22: error: invalid conversion from 'longlong* {aka long long int*} ' to 'long long int' [-fpermissive] [ 109s] value->x.long_value= (longlong *)*cass_data; [ 109s] ^ This commit fixes it Signed-off-by: Dinar Valeev <dvaleev@suse.com> commitf42064a172Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Mar 25 12:20:16 2015 +0300 Fix valgrind failure: correclty clean up handler::tracker commit651a142ad0Author: Alexander Barkov <bar@mariadb.org> Date: Wed Mar 25 13:06:04 2015 +0400 MDEV-7831 Bad warning for DATE_ADD(timestamp_column, INTERVAL 10 SECOND) commit6a204546efAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Mar 24 16:41:04 2015 -0400 MDEV-7798: mysql.server init script can't stop mysqld when WSREP is turned off wsrep threads should be always be checked for existence & stopped on server shutdown. commitbd2ae787eaAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Mar 24 16:33:51 2015 +0100 MDEV-7825: Parallel replication race condition on gco->flags, possibly resulting in slave hang The patch for optimistic parallel replication as a memory optimisation moved the gco->installed field into a bit in gco->flags. However, that is just plain wrong. The gco->flags field is owned by the SQL driver thread, but gco->installed is used by the worker threads, so this will cause a race condition. The user-visible problem might be conflicts between transactions and/or slave threads hanging. So revert this part of the optimistic parallel replication patch, going back to using a separate field gco->installed like in 10.0. commit664ce4c507Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Mar 24 17:35:29 2015 +0300 Fix linking: move the inline functions commit4106dfe89bMerge:ec68494beb77e16ce7d6Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Mar 24 16:26:42 2015 +0300 Merge branch 'bb-10.1-explain-analyze' into 10.1 commit77e16ce7d6Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Mar 24 16:17:41 2015 +0300 MDEV-7648: Extra data in ANALYZE FORMAT=JSON $stmt Switch from relying on PERFORMANCE_SCHEMA to using our own hooks for counting the time spent reading rows from tables. commitb273e4a5c0Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Mar 24 13:22:03 2015 +0300 Better comments commitec68494bebAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Mar 23 17:38:55 2015 +0400 MDEV-7677 my_charset_handler_filename has a wrong "ismbchar" member commit464947e632Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Mar 22 11:31:10 2015 +0100 - Fix a bug that caused a crash when doing delete on a json table with wrong syntax file - Suppress MYSQL_SUPPORT preprocessor variable commit4fbba09824Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Sat Mar 21 19:54:06 2015 +0200 MDEV-7813 analyze_stmt fails with --embedded flag set Moved the privilege checking code which does not apply for embedded to a separate test case. commit3578419b77Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Mar 20 12:38:53 2015 +0200 MDEV-7797: file_key_management_plugin uses static IV for a key Currently crypt data is written to file space always. Use that to obtain random IV for every object (file). Beatify code to confort InnoDB coding styles. Conflicts: storage/innobase/fil/fil0crypt.cc storage/xtradb/fil/fil0crypt.cc commit0c26c0032cAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Mar 20 13:51:41 2015 +0400 A preparatory patch for MDEV-7284 INDEX: CREATE OR REPLACE. Removing "bool Key::create_if_not_exists" and deriving Key from DDL_options instead. commit2a2cc16478Author: Alexander Barkov <bar@mariadb.org> Date: Fri Mar 20 11:46:44 2015 +0400 Refactoring in sql_yacc.yy. A pre-requirement patch for MDEV-7801 Unexpected syntax error in ALTER TABLE t1 ADD INDEX TYPE BTREE MDEV-7284 INDEX: CREATE OR REPLACE commite3795318abAuthor: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Fri Mar 20 09:10:59 2015 +0200 MDEV-5214 Status variables for number of global/db/table/column/role grants Updated information_schema test result; commitce0427a622Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Mar 19 20:41:57 2015 -0400 Update galera.global_suppressions with galera warnings. commit1a32993537Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Wed Mar 18 20:36:58 2015 +0200 MDEV-5214 Status variables for number of global/db/table/column/role grants Implemented the status variables for use with the feedback plugin. commitf8381d9382Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Mar 19 09:47:20 2015 -0400 MDEV-6069: Remove old logic for 3.23-to-higher upgrades from upgrade SQL scripts Fix for failing tests. * Update mysql_system_tables_fix.sql to makeup the differences in system tables in 5.1.17 (main.system_mysql_db_fix50117) * Removed system_mysql_db tests for versions 5.0.30 & 4.1.23. commitb3438f24a1Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Mar 19 14:09:49 2015 +0200 MDEV-7803: Encryption metadata (crypt_data) is written to InnoDB file space page 0 even when encryption is not enabled commit7733b247e1Author: Olivier Bertrand <bertrandop@gmail.com> Date: Thu Mar 19 12:21:08 2015 +0100 Same changes than in version 10.0.17 commit41c337a171Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Thu Mar 19 21:47:51 2015 +1100 add group_commit_reason_immediate to binlog_commit_wait test commit81113dae17Merge:69ae50652764a290dc31Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Mar 19 10:22:27 2015 +0200 Merge branch '10.1' into bb-10.1-jan commitf3eb1d0e27Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Thu Mar 19 19:21:22 2015 +1100 rpl_parallel_multilevel2 can be 1 or 3 binlog groups commit64a290dc31Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Mar 19 10:18:40 2015 +0200 MDEV-7797: file_key_management_plugin uses static IV for a key Currently crypt data is written to file space always. Use that to obtain random IV for every object (file). Beatify code to confort InnoDB coding styles. commitbab0bdbb5cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Mar 19 07:07:56 2015 +0200 Introduce two debug crash points while writing crypt data to test redo operations. commit54287adc27Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Thu Mar 19 15:26:58 2015 +1100 MDEV-7802 Add status binlog_group_commit_reason_* The following global status variables where added: * binlog_group_commit_reason_count * binlog_group_commit_reason_usec * binlog_group_commit_reason_transaction * binlog_group_commit_reason_immediate binlog_group_commit_reason_count corresponds to group commits made by virtue of the binlog_commit_wait_count variable. binlog_group_commit_reason_usec corresponds to the binlog_commit_wait_usec variable. binlog_group_commit_reason_transaction is a result of ordered transaction that need to occur in the same order on the slave and can't be parallelised. binlog_group_commit_reason_immediate is caused to prevent stalls with row locks as described in log.cc:binlog_report_wait_for. This immediate count is also counted a second time in binlog_group_commit_reason_transaction. Overall binlog_group_commits = binlog_group_commit_reason_count + binlog_group_commit_reason_usec + binlog_group_commit_reason_transaction This work was funded thanks to Open Source Developers Club Australia. commite28a241907Author: Alexander Barkov <bar@mariadb.org> Date: Wed Mar 18 17:10:48 2015 +0400 MDEV-7661 Unexpected result for: CAST(0xHHHH AS CHAR CHARACTER SET xxx) for incorrect byte sequences commita471b7098fAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Mar 18 15:25:34 2015 +0400 Fixed innodb and innodb_bug59641 failures on PPC64. innodb_buffer_pool_pages_total depends on page size. On Power8 it is 65k compared to 4k on Intel. As we round allocations on page size we may get slightly more memory for buffer pool. Sort XA RECOVER as rows order depend on endianness. commit5e6905bb7fAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 17 10:59:25 2015 +0200 Replace static usage of AES_CTR with current encryption algorithm. commitb0542b78c8Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Mar 17 14:56:14 2015 +0400 Installation fix. commit015994f226Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Mar 17 14:44:59 2015 +0400 MDEV-7515 GIS: No AddGeometryColumn or DropGeometryColumn in the tree. Installation scripts added to setup the required SP-s with the mysql_install_db. commit69ae506527Merge:e7b1d7350f97037da716Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 17 11:00:28 2015 +0200 Merge branch '10.1' into bb-10.1-jan commit97037da716Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 17 10:59:25 2015 +0200 Replace static usage of AES_CTR with current encryption algorithm. commitccc7297fe9Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Mar 17 12:56:38 2015 +0400 Test result fixed. commit4ba16ea4bcMerge:a3e68b4a55be1c5660f4Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Mar 17 09:24:22 2015 +0100 Merge MDEV-6981 and MDEV-6981 (from danblack) into MariaDB 10.1 commita3e68b4a55Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Mar 13 14:18:07 2015 +0200 MDEV-7772: SIGSEGV on my_aes_encrypt_cbc when -DWITH_SSL=bundled Two problems: - Read/Write outside of buffer at memcpy() because of incorrect parameters . OPENSSL_assert(EVP_CIPHER_CTX_iv_length(&ctx.ctx) == iv_length); // ECB does not use IV, thus incorrect assertion Added: mysql-test/include/encryption_algorithms.combinations to run tests with methods cbc, ecb and ctr in those systems where they are available (see suite.pm). commit5e6f12366aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Mar 16 21:50:20 2015 -0400 MDEV-6069: Remove old logic for 3.23-to-higher upgrades from upgrade SQL scripts Removed pre-5.1 tweaks & logics from mysql_system_table_fix.sql. commit0d7bc1edf3Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Mon Mar 16 21:01:58 2015 +0100 32 bit test fix commitfec94a6b44Author: Sergey Vojtovich <svoj@mariadb.org> Date: Mon Mar 16 22:54:43 2015 +0400 MDEV-7728 - Improve xid cache scalability by using lock-free hash This is an addition to original patch. Some platforms are strict about atomic op argument signedness. commite6f67c64cdAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Mar 16 21:55:10 2015 +0400 MDEV-6572 "USE dbname" with a bad sequence erroneously connects to a wrong database commit73d0427553Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Mar 16 17:22:50 2015 +0100 Changes to avoid compiling error with Visual Studio 2008 Adding files to ignore commit4cb86b79ddAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Mon Mar 16 18:54:45 2015 +0400 MDEV-7728 - Improve xid cache scalability by using lock-free hash Spider support for new xid cache implementation. commit6bd24deab4Author: Sergey Vojtovich <svoj@mariadb.org> Date: Mon Mar 16 18:44:06 2015 +0400 MDEV-7728 - Improve xid cache scalability by using lock-free hash XID cache is now based on lock-free hash. Also fixed lf_hash_destroy() to call alloc destructor. Note that previous implementation had race condition when thread was accessing XA owned by different thread. This new implementation doesn't fix it either. commitbe1c5660f4Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Mar 16 15:02:05 2015 +0100 MDEV-6981: feature request MASTER_GTID_WAIT status variables Missing .result file update. commit1f8efee584Merge:ef4d8db5ec9362dd43ffAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Mar 16 14:54:16 2015 +0100 Merge MDEV-7198: status variable for Slave_skipped_errors commitef4d8db5ecAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Mar 16 14:40:29 2015 +0100 MDEV-6981: feature request MASTER_GTID_WAIT status variables Review fixes: - Coding style - Fix bad .result file - Fix test to be tolerant of different timing. - Fix test to give better info in case of unexpected timing. commit0e717c5bf4Merge:18e9c314e4fa5809ce10Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Mon Mar 16 13:41:11 2015 +0100 Merge branch 'mdev-6981-master_gtid_wait-status-variables' of https://github.com/openquery/mariadb-server into danblack Conflicts: sql/mysqld.cc commit9362dd43ffAuthor: Daniel Black <grooverdan@users.sourceforge.net> Date: Mon Mar 16 23:15:36 2015 +1100 additional slave_skip_errors status commit51ea3939b4Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Mon Mar 16 23:06:30 2015 +1100 Complete test for status slave_skipped_errors commit18e9c314e4Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Feb 10 14:05:49 2015 +0400 MDEV-6650 - LINT_INIT emits code in non-debug builds Replaced all references to LINT_INIT with UNINIT_VAR and LINT_INIT_STRUCT. Removed LINT_INIT macro. commite7b1d7350fAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Mar 16 12:47:32 2015 +0200 Introduce only one combinations file and and rule for aes_ctr to suite.pm so that it is not used if not available. commit10554ca6cbAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon Mar 16 12:02:21 2015 +0400 Test results fixed. commitf48dc5ccc7Author: Alexander Barkov <bar@mariadb.org> Date: Mon Mar 16 12:14:31 2015 +0400 Moving the conversion code from String::well_formed_copy() to my_convert_fix() - a new function in /strings. commitc4b268add0Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Mar 16 09:14:13 2015 +0200 InnoDB cleanup. Remove empty statements i.e. extra ; characters. commitda4b52432aAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Sun Mar 15 23:00:05 2015 +0400 MDEV-7512 GIS: ST_ synonyms for functions are not consistent. Checked for missing synonims, added those found. commit874f0d7759Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Sun Mar 15 22:27:45 2015 +0400 Test result fixed. commit37345bd9ddAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Sun Mar 15 22:20:38 2015 +0400 MDEV-7529 GIS: ST_Relate returns unexpected results for POINT relations. Problem was that we considered the point itself as the 'border' object. Instead of that the 'border' of a POINT is an empty set, and the point is the 'interior'. Another error fixed by the way - not all operations of the resulting function were properly allocated. commit6cf2093653Author: Olivier Bertrand <bertrandop@gmail.com> Date: Sun Mar 15 14:31:43 2015 +0100 - Commit changes to .gitignore commitca30418837Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Sun Mar 15 11:17:50 2015 +0400 MDEV-7514 GIS: PointOnSurface returns NULL instead of the point. Need to take into account cases of a polygon shaped as a very thin line. commita21ef88d2aAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Mar 11 11:02:13 2015 +0100 MDEV-6954: SET STATEMENT rand_seedX = ...FOR ... makes the next rand() to return 0 The variables now return real values. They can't be made usual variables because they do not have DEFAULT value. commit41106b229eAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Fri Mar 13 16:32:47 2015 +0100 MDEV-6997: SET STATEMENT last_insert_id FOR ... does not affect the value written to the binlog Problem was in reinitialization of first_successful_insert_id_in_prev_stmt_for_binlog after setting variables. commit197afb413fAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Mar 13 16:51:36 2015 +0400 MDEV-6566 Different INSERT behaviour on bad bytes with and without character set conversion commit7c21ea9f50Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Mar 13 14:18:07 2015 +0200 MDEV-7772: SIGSEGV on my_aes_encrypt_cbc when -DWITH_SSL=bundled Two problems: - Read/Write outside of buffer at memcpy() because of incorrect parameters . OPENSSL_assert(EVP_CIPHER_CTX_iv_length(&ctx.ctx) == iv_length); // ECB does not use IV, thus incorrect assertion Added: mysql-test/include/have_file_key_management_plugin.combinations ( to run with aes_cbc and aes_ecb) mysql-test/include/have_openssl_ctr.combinations ( to run with aes_cbc, aes_ecb and aes_ctr) commit702fba1511Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Fri Mar 13 16:10:31 2015 +0400 MDEV-7510 GIS: IsRing returns false for a primitive triangle. The problem is in the IsSimple function. If the first and the last points of a curve coincide it's and exception and the line is still 'simple'. commit75d65b5f4eAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Mar 13 15:48:39 2015 +0400 MDEV-6989 BINARY and COLLATE xxx_bin comparisions are not used for optimization in some cases commitbd2105855aAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Mar 13 13:52:07 2015 +0400 Adding "const" qualifier to Item::compare_collation() commit4d0e52189cAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Mar 13 09:38:08 2015 +0200 MDEV-7770: Online DDL progress output contains incorrectly printed index names Index names were not formatted correctly. commitbb3115b256Author: Alexander Barkov <bar@mariadb.org> Date: Thu Mar 12 18:12:15 2015 +0400 MDEV-6990 GROUP_MIN_MAX optimization is not applied in some cases when it could commit129c82bb59Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Thu Mar 12 17:50:23 2015 +0400 MDEV-7334 valgrind warning "unitialized bytes" in 10.1. The 'srid' field's copying was missing in the copying Create_field::Create_field() constructor. commit8249dcaaebAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 10 08:28:51 2015 +0200 MDEV-6858: enforce_storage_engine option Merge from Percona Server enforced use of a specific storage engine authored by Stewart Smith. Modified to be session variable and modifiable only by SUPER. Use similar implementation as default_storage_engine. commitba3573cae8Author: Alexander Barkov <bar@mariadb.org> Date: Thu Mar 12 13:40:52 2015 +0400 Clean-up: - Renaming Item::is_bool_func() to is_bool_type(), to avoid assumption that the item is an Item_func derivant. - Deriving Item_func_spatial_rel from Item_bool_func rather than Item_int_func commita71e2d23bdAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Tue Feb 17 12:54:51 2015 +0100 MDEV-7006 MDEV-7007: SET STATEMENT and slow log fixed embedded server tests MDEV-7009: SET STATEMENT min_examined_row_limit has no effect MDEV-6948:SET STATEMENT gtid_domain_id = ... FOR has no effect (same for gtid_seq_no and server_id) old values of SET STATENENT variables now saved in its own Query_arena and restored later commitdab12366b1Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Feb 25 21:29:13 2015 +0100 MDEV-6956:SET STATEMENT default_master_connection = ... has no effect the problem was in assigning default value during parsing. commite91bc2e91dAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Mar 12 11:40:37 2015 +0400 MDEV-7759 NULLIF(x,y) is not equal to CASE WHEN x=y THEN NULL ELSE x END commitfa5809ce10Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Thu Mar 12 06:43:38 2015 +1100 Add Master_gtid_wait_{count,time,timeouts} status MASTER_GTID_WAIT function needs some status to evaluate its use. master_gtid_wait_count indicates how many times the function is called. master_gtid_wait_time indicates how much time in microseconds occurred waiting (or timing out) master_gtid_timeouts indicates how many time times this function timed out rather than all successful gtids events being available. commiteac71ced18Author: Daniel Black <grooverdan@users.sourceforge.net> Date: Thu Mar 12 05:23:05 2015 +1100 Add Slave_skipped_errors to global status This counts the number of times a replication event is ignored due to slave_skip_errors. commit555915faa9Merge:100249be6a7a6cad5221Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Mar 11 13:15:16 2015 -0400 Merge branch '5.5-galera' into 10.0-galera Conflicts: mysql-test/suite/galera/r/rpl_row_annotate.result sql/rpl_rli.cc sql/slave.cc sql/wsrep_applier.cc sql/wsrep_thd.cc commit80f03abccaAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Tue Mar 10 10:24:20 2015 +0100 MDEV-7671: Cache VIEW definitions in the TDC (changes of backported patch are very small: strlen removed, error processing fixed, view open statistics added) commit7a6cad5221Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Mar 11 12:36:00 2015 -0400 Backport fix for MDEV-7673, MDEV-7203 and MDEV-7192 from 10.0-galera commit3aa1a600bbMerge:be73c7ee4452a1b5a8c2Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Mar 11 15:15:43 2015 +0100 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commitbe73c7ee44Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Wed Mar 11 14:57:30 2015 +0100 MDEV-6951: Erroneous SET STATEMENT produces two identical errors Double error reporting removed. commit52a1b5a8c2Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Mar 11 13:05:03 2015 +0400 MY_CHECK_AND_SET_COMPILER_FLAG changes * watch for "redefined macro" warning * don't enable -D_FORTIFY_SOURCE=2 in debug builds (it requires -O) commit190858d996Author: Alexander Barkov <bar@mariadb.org> Date: Wed Mar 11 12:40:35 2015 +0400 Removing duplicate code: adding Item_func_bool_predicate as a common parent class for Item_func_isnull and Item_func_isnotnull commit9f4ee16bf3Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Wed Mar 11 07:29:51 2015 +0200 MDEV-7619: Improve long semaphore wait output Add holder thread_id, file_name and line to output. commitba43735c68Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Mar 10 22:34:57 2015 +0400 Check for the openssl-dev so the build doesn't fail without it. commit100249be6aMerge:56bbc0a23007ff90e99bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Mar 10 09:23:03 2015 -0400 Merge branch '5.5-galera' into 10.0-galera Conflicts: storage/innobase/dict/dict0dict.c storage/xtradb/dict/dict0dict.c commit0ed57e34c7Author: Vicențiu Ciorbaru <vicentiu@mariadb.org> Date: Wed Mar 4 12:20:10 2015 +0200 MDEV-7025 ANALYZE SELECT/INSERT/UPDATE/DELETE from a view does not check access permissions on the view Added access checking for the ANALYZE statement command. commitc8035da9b8Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 10 14:05:57 2015 +0200 Add more information if page state is not correct. commit07ff90e99bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Mar 9 22:55:54 2015 -0400 Reduce gcache size to cut down disk usage commitf7d196bb2eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Mar 8 17:22:37 2015 +0100 32bit fix commite2de804491Merge:5bff6c5d572288b84df4Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Mar 8 12:54:42 2015 +0100 Merge branch '10.1' into bb-10.1-serg commit6c19f51a5fAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Fri Mar 6 11:19:23 2015 +0200 MDEV-7672: Crash creating an InnoDB table with foreign keys Analysis: after a red-black-tree lookup we use node withouth checking did lookup succeed or not. This lead to situation where NULL-pointer was used. Fix: Add additional check that found node from red-back-tree is valid. commit1626e0d3d4Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Mar 7 22:47:28 2015 +0300 MDEV-7648: Extra data in ANALYZE FORMAT=JSON $stmt Show total execution time (r_total_time_ms) for various parts of the query: 1. time spent in SELECTs 2. time spent reading rows from storage engines #2 currently gets the data from P_S. commit2288b84df4Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Mar 7 20:51:35 2015 +0300 MDEV-7679: ANALYZE crashes when printing WHERE when no default db Fix Item_ident::print() to work when there is no current database commit66ad265f3bAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sat Mar 7 19:30:19 2015 +0300 MDEV-7674: ANALYZE shows r_rows=0 Change r_rows to be double commit5bff6c5d57Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Mar 7 15:32:52 2015 +0100 bison warning: clash on default action: <NONE> != <object_ddl_options> commit6d8b74dd07Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 5 17:11:23 2015 +0100 add a test for drop trigger under --read-only commit18feb62feeAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Mar 4 10:13:06 2015 +0100 MDEV-6819 st_mysql_show_var::value should be void* not char* commit20cacb0064Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Mar 5 09:58:08 2015 +0100 fix a crash of innodb.innodb_mutexes,innodb_plugin add forgotten initialization of the mutex name commit2db62f686eMerge:143f5d9172d61573d3e5Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Mar 7 13:21:02 2015 +0100 Merge branch '10.0' into 10.1 commit56bbc0a230Merge:d146605124e52a58a5ccAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Mar 6 23:46:35 2015 -0500 Merge branch '5.5-galera' into bb-10.0-galera-merge Conflicts: BUILD/compile-pentium-debug-wsrep BUILD/compile-pentium-wsrep BUILD/compile-pentium64-wsrep CMakeLists.txt client/mysqlcheck.c cmake/cpack_rpm.cmake cmake/install_macros.cmake cmake/os/FreeBSD.cmake cmake/plugin.cmake cmake/wsrep.cmake debian/dist/Debian/control debian/dist/Debian/mariadb-galera-server-10.0.README.Debian debian/dist/Debian/mariadb-galera-server-10.0.postrm debian/dist/Debian/mariadb-galera-server-5.5.README.Debian debian/dist/Debian/mariadb-galera-server-5.5.dirs debian/dist/Debian/mariadb-galera-server-5.5.files.in debian/dist/Debian/mariadb-galera-server-5.5.postinst debian/dist/Debian/mariadb-galera-server-5.5.postrm debian/dist/Debian/mariadb-server-5.5.README.Debian debian/dist/Debian/mariadb-server-5.5.postrm debian/dist/Debian/rules debian/dist/Ubuntu/control debian/dist/Ubuntu/mariadb-galera-server-10.0.README.Debian debian/dist/Ubuntu/mariadb-galera-server-10.0.postrm debian/dist/Ubuntu/mariadb-galera-server-5.5.README.Debian debian/dist/Ubuntu/mariadb-galera-server-5.5.dirs debian/dist/Ubuntu/mariadb-galera-server-5.5.files.in debian/dist/Ubuntu/mariadb-galera-server-5.5.postinst debian/dist/Ubuntu/mariadb-galera-server-5.5.postrm debian/dist/Ubuntu/mariadb-galera-server-5.5.py debian/dist/Ubuntu/mariadb-server-5.5.README.Debian debian/dist/Ubuntu/mariadb-server-5.5.postrm debian/dist/Ubuntu/rules debian/mariadb-galera-server-10.0.NEWS debian/mariadb-galera-server-10.0.config debian/mariadb-galera-server-10.0.logcheck.ignore.paranoid debian/mariadb-galera-server-10.0.logcheck.ignore.server debian/mariadb-galera-server-10.0.logcheck.ignore.workstation debian/mariadb-galera-server-10.0.mysql-server.logrotate debian/mariadb-galera-server-10.0.prerm debian/mariadb-galera-server-5.5.NEWS debian/mariadb-galera-server-5.5.config debian/mariadb-galera-server-5.5.logcheck.ignore.paranoid debian/mariadb-galera-server-5.5.logcheck.ignore.server debian/mariadb-galera-server-5.5.logcheck.ignore.workstation debian/mariadb-galera-server-5.5.mysql-server.logrotate debian/mariadb-galera-server-5.5.mysql.init debian/mariadb-galera-server-5.5.preinst debian/mariadb-galera-server-5.5.prerm debian/mariadb-galera-server-5.5.templates debian/mariadb-galera-test-10.0.links debian/mariadb-galera-test-5.5.dirs debian/mariadb-galera-test-5.5.files debian/mariadb-galera-test-5.5.links debian/mariadb-server-5.5.NEWS debian/mariadb-server-5.5.config debian/mariadb-server-5.5.logcheck.ignore.paranoid debian/mariadb-server-5.5.logcheck.ignore.server debian/mariadb-server-5.5.logcheck.ignore.workstation debian/mariadb-server-5.5.mysql-server.logrotate debian/mariadb-server-5.5.prerm debian/mariadb-test-5.5.links debian/po/POTFILES.in debian/po/ar.po debian/po/ca.po debian/po/cs.po debian/po/da.po debian/po/de.po debian/po/es.po debian/po/eu.po debian/po/fr.po debian/po/gl.po debian/po/it.po debian/po/ja.po debian/po/nb.po debian/po/nl.po debian/po/pt.po debian/po/pt_BR.po debian/po/ro.po debian/po/ru.po debian/po/sv.po debian/po/templates.pot debian/po/tr.po mysql-test/extra/binlog_tests/binlog.test mysql-test/include/mtr_check.sql mysql-test/r/innodb_load_xa_with_wsrep.result mysql-test/r/mysqld--help.result mysql-test/suite/binlog/r/binlog_row_binlog.result mysql-test/suite/binlog/r/binlog_stm_binlog.result mysql-test/suite/galera/galera_2nodes.cnf mysql-test/suite/galera/r/create.result mysql-test/suite/galera/t/create.test mysql-test/suite/perfschema/r/all_instances.result mysql-test/suite/perfschema/r/dml_setup_instruments.result mysql-test/suite/wsrep/r/variables.result mysql-test/suite/wsrep/t/variables.test mysql-test/t/mysqld--help.test mysys/default.c mysys/thr_lock.c scripts/CMakeLists.txt scripts/mysqld_safe.sh scripts/wsrep_sst_common.sh scripts/wsrep_sst_mysqldump.sh scripts/wsrep_sst_rsync.sh scripts/wsrep_sst_xtrabackup-v2.sh sql/event_data_objects.cc sql/events.cc sql/ha_partition.h sql/handler.cc sql/handler.h sql/lock.cc sql/log.cc sql/log.h sql/log_event.cc sql/mdl.cc sql/mysqld.cc sql/mysqld.h sql/rpl_record.cc sql/slave.cc sql/sp.cc sql/sql_acl.cc sql/sql_admin.cc sql/sql_alter.cc sql/sql_base.cc sql/sql_class.cc sql/sql_class.h sql/sql_connect.cc sql/sql_insert.cc sql/sql_parse.cc sql/sql_partition_admin.cc sql/sql_prepare.cc sql/sql_repl.cc sql/sql_show.cc sql/sql_table.cc sql/sql_trigger.cc sql/sys_vars.cc sql/transaction.cc sql/wsrep_applier.cc sql/wsrep_binlog.cc sql/wsrep_binlog.h sql/wsrep_hton.cc sql/wsrep_mysqld.cc sql/wsrep_mysqld.h sql/wsrep_priv.h sql/wsrep_sst.cc sql/wsrep_sst.h sql/wsrep_thd.cc sql/wsrep_thd.h sql/wsrep_utils.cc sql/wsrep_var.cc storage/innobase/dict/dict0dict.c storage/innobase/fil/fil0fil.c storage/innobase/handler/ha_innodb.cc storage/innobase/handler/ha_innodb.h storage/innobase/handler/handler0alter.cc storage/innobase/include/lock0lock.h storage/innobase/include/srv0srv.h storage/innobase/include/trx0sys.h storage/innobase/include/trx0trx.h storage/innobase/lock/lock0lock.c storage/innobase/os/os0file.c storage/innobase/rem/rem0rec.c storage/innobase/row/row0ins.c storage/innobase/row/row0upd.c storage/innobase/srv/srv0srv.c storage/innobase/trx/trx0roll.c storage/innobase/trx/trx0sys.c storage/innobase/trx/trx0trx.c storage/innobase/ut/ut0ut.c storage/tokudb/CMakeLists.txt storage/xtradb/buf/buf0buf.c storage/xtradb/dict/dict0dict.c storage/xtradb/handler/ha_innodb.cc storage/xtradb/handler/ha_innodb.h storage/xtradb/handler/handler0alter.cc storage/xtradb/include/lock0lock.h storage/xtradb/include/srv0srv.h storage/xtradb/include/trx0sys.h storage/xtradb/lock/lock0lock.c storage/xtradb/os/os0file.c storage/xtradb/os/os0proc.c storage/xtradb/rem/rem0rec.c storage/xtradb/row/row0ins.c storage/xtradb/row/row0upd.c storage/xtradb/srv/srv0srv.c storage/xtradb/srv/srv0start.c storage/xtradb/trx/trx0roll.c storage/xtradb/trx/trx0sys.c storage/xtradb/trx/trx0trx.c support-files/mysql.server.sh support-files/mysql.spec.sh wsrep/CMakeLists.txt commitd146605124Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Mar 6 13:22:15 2015 -0500 MDEV-7673: CREATE TABLE SELECT fails on Galera cluster Enable execution of CREATE TABLE SELECT in total order isolation. Added a test case. Contributed by : Andrew W Elble commitc6acdf7c28Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Mar 6 13:19:49 2015 -0500 MDEV-7203: replicate_events_marked_for_skip didn't work on Galera cluster OPTION_SKIP_REPLICATION flag needs to be preserved for events received on non-originating nodes. commit6f9e33ecb0Author: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Dec 26 23:38:45 2014 +0400 MDEV-7273 - 10.1 fails to start up during tc_log initializations on PPC64 log-tc-size is 24K by default. Page size is 64K on PPC64. But log-tc- size must be at least 3 x page size. This is enforced by TC_LOG_MMAP::open() with a comment: to guarantee non-empty pool. This all makes server not startable in default configuration on PPC64. Autosize log-tc-size, so that it's min value= page size * 3, default value= page size * 6, block size= page size. Conflicts: mysql-test/suite/sys_vars/inc/sysvars_server.inc mysql-test/suite/sys_vars/r/sysvars_server_notembedded.result mysql-test/t/mysqld--help.test sql/mysqld.cc sql/sys_vars.cc commit9af42db613Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Mar 5 14:14:00 2015 -0500 MDEV-7192: binlog_annotate_row_events not completely compatible with galera Annotate_rows event needs to be preserved until the last Rows event has been applied because after it has been applied thd->query points to the query stored inside this event. commit73a143ab34Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Mar 4 19:52:15 2015 -0500 Update galera package name commite52a58a5ccAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Mar 4 19:49:17 2015 -0500 Update galera package name commit143f5d9172Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 3 17:38:02 2015 +0200 MDEV-7061: Augment innochecksum to give insight of fragmentation Merged615dd07d90from https://github.com/facebook/mysql-5.6/ authored by rongrong. Removed C++11 requirement by using std::map instead of std::unordered_set. Add analysis to leaf pages to estimate how fragmented an index is and how much benefit we can get out of defragmentation. commit2e4dc5a370Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Mar 4 14:06:44 2015 +0100 after-merge fixes commit95d7208859Merge:f4f37533a078c74dbe30Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Wed Mar 4 13:48:28 2015 +0100 Merge MDEV-6589 and MDEV-6403 into 10.1. Conflicts: sql/log.cc sql/rpl_rli.cc sql/sql_repl.cc commitf4f37533a0Author: Sergey Vojtovich <svoj@mariadb.org> Date: Wed Mar 4 11:01:32 2015 +0400 Replaced lf-hash element_size hack with initializer function. commit5c6aa4dea0Author: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Feb 27 11:30:35 2015 +0400 MDEV-6089 - MySQL WL#7305 "Improve MDL scalability by using lock-free hash" Replaced hash with lock-free hash. commitd9e3a9f20eAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Feb 27 00:01:38 2015 +0400 MDEV-6089 - MySQL WL#7305 "Improve MDL scalability by using lock-free hash" Extended lf-hash implementation to accept user defined hash function. commit9c8165fdb4Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Feb 26 21:17:33 2015 +0400 MDEV-6089 - MySQL WL#7305 "Improve MDL scalability by using lock-free hash" Added initializer callback to lf-hash. Needed to initialize properly non-POD types. commitf5bd1d0126Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Feb 26 18:40:05 2015 +0400 MDEV-6089 - MySQL WL#7305 "Improve MDL scalability by using lock-free hash" Simplified MDL_object_lock and MDL_scoped_lock dichotomy so that they can be stored in LF_HASH. This was done by moving out their differences to a MDL_lock_strategy structure which is referenced from the MDL_lock object by pointer. commitf475a7f949Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Feb 26 13:12:28 2015 +0400 MDEV-6089 - MySQL WL#7305 "Improve MDL scalability by using lock-free hash" Replaced m_ref_usage, m_ref_release, m_is_destroyed and m_version with single m_state, which is updated atomically. Needed to get rid of MDL_map::m_mutex. commitecd3ff9f24Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Feb 26 13:12:01 2015 +0400 MDEV-6089 - MySQL WL#7305 "Improve MDL scalability by using lock-free hash" Removed MDL map partitions. Won't be needed when this MDEV is implemented. commit903160ef59Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Feb 26 13:11:30 2015 +0400 MDEV-6089 - MySQL WL#7305 "Improve MDL scalability by using lock-free hash" Removed MDL objects cache. Won't be needed when this MDEV is implemented. commit87b0cc9912Author: Alexander Barkov <bar@mariadb.org> Date: Wed Mar 4 09:52:01 2015 +0400 MDEV-7286 TRIGGER: CREATE OR REPLACE, CREATE IF NOT EXISTS Based on the patch by Sriram Patil, made under terms of GSoC 2014. commita7ed8523e3Author: Alexander Barkov <bar@mariadb.org> Date: Wed Mar 4 09:16:43 2015 +0400 Adding a shared include file ctype-mb.ic and removing a number of very similar copies of my_well_formed_len_xxx(), implemented for big5, cp932, euckr, eucjpms, gb2312m gbk, sjis, ujis. commitd8c1165c28Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Mar 3 11:46:44 2015 +0100 fix failing innodb.innodb-page_encryption_log_encryption again adjust suppression rules after warning message format change commitb1b6101af2Author: Alexander Barkov <bar@mariadb.org> Date: Mon Mar 2 18:24:22 2015 +0400 A preparatory patch for MDEV-6566. Adding a new virtual function MY_CHARSET_HANDLER::copy_abort(). Moving character set specific code into the correspoding implementations (for simple, multi-byte and mbmaxlen>1 character sets). commit7047bef1efAuthor: Jan Lindström <jan.lindstrom@mariadb.com> Date: Mon Mar 2 10:55:48 2015 +0200 Use standard InnoDB error mechanism on compression and encryption error messages. commit1f1f977167Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Mar 1 16:51:34 2015 +0100 Fix test failing when file_key_management_plugin doesn't load * remove useless suppressions from the test file, when a plugin doesn't load, the file isn't executed anyway * add the suppression to mysql-test-run.pl instead commitc3f80a2bffAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Mar 1 16:53:16 2015 +0100 fix new innodb warnings to use the standard innodb warning syntax commitc78f594bbcAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Feb 28 13:51:22 2015 +0100 MDEV-6479 stack traces in 10.1 Take into account that PIE binaries are loaded at some offset, so addresses cannot be directly resolved with addr2line. Find this offset and subtract it before resolving an address. commit7ba2916c55Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 27 21:42:03 2015 +0100 MDEV-7000 Assertion `0' failed in Protocol::end_statement() on executing DDL under innodb_fake_changes=1 correct the if() condition to match the behavior of the old code that this if() was supposed to replace commitba80708f66Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 27 20:13:51 2015 +0100 MDEV-6960 Server crashes in check_alter_user on setting a default role via PS There were two issues: * set_var_default_role::user was overwritten with a new value, allocated in the thd->mem_root, which is reset between executions. That was causing the crash. Solved by introducing set_var_default_role::real_user * when privilege tables were opened on EXECUTE, the reprepare_observer would abort the statement (as privilege tables are opened using the local TABLE_LIST that doesn't preserve metadata from PREPARE, so reprepare_observer thought they're changed). This issue also applied to SET PASSWORD. Solved by disabling reprepare_observer. commit7951bb1656Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Feb 25 17:34:31 2015 +0100 cleanup: remove unused variables commit75a27eeaf7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 27 23:33:22 2015 -0500 MDEV-4987: Sort by domain_id when list of GTIDs are output Added logic to sort gtid list based on domain_id before populating them in string. Added a test case. commit34d86ac9ffAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 27 22:33:41 2015 -0500 MDEV-6594: Use separate domain_id for Galera transactions commit0f8cb3c399Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 27 22:30:38 2015 -0500 MDEV-7615: Remove --galera-sst-mode option from mysqldump Removed 'galera-sst-mode' option from mysqldump and added logic in wsrep_sst_mysqldump script to retrieve gtid_binlog_state from donor node and send it to the joiner node. commit4c191de323Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 27 22:13:37 2015 -0500 MDEV-7560: wsrep* tests depend on the version of galera library Added an include file to check galera library version. commitaa2904a7f4Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 27 22:13:37 2015 -0500 MDEV-7560: wsrep* tests depend on the version of galera library Added an include file to check galera library version. commit16c446235eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 24 21:55:22 2015 -0500 Changes in wsrep_guess_ip() * Changed loopback detection to be done via ifa->ifa_flags * Removed unused function wsrep_guess_address() commit8ee5668033Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 24 21:55:22 2015 -0500 Changes in wsrep_guess_ip() * Changed loopback detection to be done via ifa->ifa_flags * Removed unused function wsrep_guess_address() commitaf651c80f7Merge:f02fdb6b555c66abf0b0Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 27 17:36:54 2015 -0500 Merge tag 'mariadb-10.0.17' into 10.0-galera Conflicts: storage/innobase/include/trx0trx.h commit72d7b12b9cAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Feb 27 16:26:12 2015 +0400 Reducing duplicate code and simplifying well formed string copying by adding a new class String_copier. This is a pre-requisite patch for MDEV-6566 and MDEV-6572, to avoid adding more similar code. commit2d01907c1dAuthor: Alexander Barkov <bar@mariadb.org> Date: Fri Feb 27 13:34:18 2015 +0400 MDEV-7281 EVENT: CREATE OR REPLACE commit77806da0daAuthor: Vicențiu Ciorbaru <cvicentiu@gmail.com> Date: Thu Feb 26 23:31:35 2015 +0200 Fix incorrect parameter passing to create_tmp_table in create_result_table Create_tmp_table was called incorrectly called in select_materialized_with_stats::create_result_table, having keep_row_order passed for the do_not_open parameter and keep_row_order always set to false. commitd7c6f1191dMerge:018f932024f37b857f80Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Feb 26 19:41:21 2015 +0200 Try to fix test warning. commitf37b857f80Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Thu Feb 26 17:19:51 2015 +0200 Fix test case. commit018f932024Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Feb 26 12:09:35 2015 +0200 test commit2eae6848d9Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Feb 25 13:26:57 2015 +0200 MDEV-7572: InnoDB: Assertion failure in log_init_crypt_key if file_key_management_plugin is used Fixed error handling and added disabling InnoDB redo log encryption if encryption key management plugin is not there. commit702aee6492Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Feb 25 23:56:44 2015 +0300 MDEV-6323: ‘explain_node’ may be used uninitialized in this function - Remove the compiler warning, add assert statements. - make select_describe() not call mysql_explain_union() for views that were "merged for INSERT". commit2330107ca8Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Feb 25 13:26:57 2015 +0200 MDEV-7572: InnoDB: Assertion failure in log_init_crypt_key if file_key_management_plugin is used Fixed error handling and added disabling InnoDB redo log encryption if encryption key management plugin is not there. commit4fb2f66907Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Feb 24 21:55:22 2015 -0500 Changes in wsrep_guess_ip() * Changed loopback detection to be done via ifa->ifa_flags * Removed unused function wsrep_guess_address() commitda181fee4eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Feb 24 16:26:18 2015 +0100 disable feedback plugin again commitb2862912afAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Sun Feb 22 08:46:22 2015 +0200 Try to stabilize test case. Problem was that test compares number of encryption/compression pages and that will happen if and only if dirty pages are written to the disk. commit1cc7befc14Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Sat Feb 21 21:45:16 2015 +0200 MDEV-7109: Add support for INFORMATION_SCHEMA.INNODB_SEMAPHORE_WAITS MDEV-7399: Add support for INFORMATION_SCHEMA.INNODB_MUTEXES MDEV-7618: Improve semaphore instrumentation Introduced two new information schema tables to monitor mutex waits and semaphore waits. Added a new configuration variable innodb_intrument_semaphores to add thread_id, file name and line of current holder of mutex/rw_lock. commitf02fdb6b55Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 20 22:11:45 2015 -0500 MDEV-7615: remove galera_sst_mode.result file commitf68ce68604Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 20 17:51:33 2015 -0500 MDEV-7615: Remove --galera-sst-mode option from mysqldump Removed 'galera-sst-mode' option from mysqldump and added logic in wsrep_sst_mysqldump script to retrieve gtid_binlog_state from donor node and send it to the joiner node. commit360ff3b0daAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 20 17:29:03 2015 -0500 Fix for build failures on Power8 commitc6e62acb9eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 20 17:21:15 2015 -0500 Fix for build failures on Power8 commit69e5f0f423Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Feb 19 17:48:23 2015 -0500 cleanup: remove duplicate declaration commita174aaed75Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Feb 19 17:28:18 2015 -0500 cleanup: remove unused THD::COND_wsrep_thd Conflicts: mysql-test/suite/perfschema/r/all_instances.result sql/mysqld.h commit1e6f46d78fAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Feb 19 17:28:18 2015 -0500 cleanup: remove unused THD::COND_wsrep_thd commit9152b83973Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Feb 19 17:42:18 2015 +0200 Merged from 10.0-FusionIO: Added support for compression method snappy for page compression. commitbab1c686a4Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Feb 19 12:41:10 2015 +0200 Push forgotten file change to fix compiler errors. commitfcc6e12d69Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 18 19:02:00 2015 -0500 MDEV-7544: Update global_suppressions to include warning related to "gvwstate.dat" commita518cc4470Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 18 18:59:01 2015 -0500 MDEV-7544: Update global_suppressions to include warning related to "gvwstate.dat" commit860576f416Merge:cd187ecf90f37bdd9c1aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 18 18:07:45 2015 -0500 Merge branch '10.0' into 10.0-galera Merge branch 10.0 till revision:f37bdd9- Merge remote-tracking branch 'github/10.0' into 10.0 Conflicts: .bzrignore storage/xtradb/CMakeLists.txt commit3c9137deebMerge:d8ee54c633fdd6c111c2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 18 17:15:57 2015 -0500 Merge branch '5.5' into 5.5-galera Merge banch 5.5 till revision :fdd6c11- MDEV-7419 Function cli_safe_read not exported Conflicts: .bzrignore debian/dist/Debian/mariadb-galera-server-5.5.files.in debian/dist/Ubuntu/mariadb-galera-server-5.5.files.in storage/tokudb/CMakeLists.txt support-files/build-tags commit36c1982a19Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Feb 18 15:23:37 2015 +0200 MDEV-7604: wsrep plugin lists its plugin_maturity as Unknown Changed wsrep plugin from mysql_plugin to maria_plugin to set up plugin_maturity to Stable. commit4040bf18cfAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Feb 18 08:29:38 2015 +0200 MDEV-7593: Default encryption key does not work correctly for page encrypted tables Introduced a new innodb_default_page_encryption_key configuration variable to allow user to set the default key identifier. commit11536f99f1Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Feb 16 23:18:32 2015 +0100 MDEV-7305 Difficulties building cracklib_password_check put cracklib_password_check into a separate package. build it conditionally on Debian/Ubuntu commit87eb82d4d5Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Feb 16 23:18:00 2015 +0100 cleanup: remove old debian/ubuntu names from debian/* files namely, remove the code to support: etch, lenny, hardy, intrepid, jaunty, karmic, maverick, natty commita0e93bceb7Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Feb 17 23:49:02 2015 +0100 innodb/xtradb: update nonnull attributes to match the new semantics commit4da7aa55f6Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Feb 17 18:43:22 2015 +0300 Add a testcase for EXPLAIN FORMAT=JSON for ROR-union index_merge. commit3e2849d2a0Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 13 00:50:30 2015 +0100 update result files commitdb227616d2Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Feb 12 12:26:37 2015 +0100 followup for "MDEV-6248 GUI-friendly cmake options to enable/disable plugins" Remove ONLY_IF clause in MYSQL_ADD_PLUGIN and the requirement that every plugin's CMakeLists.txt *must* do MYSQL_ADD_PLUGIN for PLUGIN_XXX=YES to work. This was very fragile and cannot be relied on. Use a different implementation of =YES check - iterate all PLUGIN_* variables and see which one doesn't have a matching target. Revert all ONLY_IF changes in CMakeLists.txt files. commit985ef1d42aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Feb 12 22:33:30 2015 +0100 Don't link plugins with libmysys.a or libmysys_ssl.a we don't want mysys static data structures to be overwritten when a dynamic plugin is loaded. commit4c9d0b2b0cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 13 15:04:23 2015 +0100 yassl builds: don't hide mysys_ssl symbols that cannot possibly collide with openssl commit2043e3d440Author: Alexander Barkov <bar@mariadb.org> Date: Thu Feb 12 17:10:59 2015 +0400 Removing the Hybrid_type_traits framework. It's not used since 5.5. commit0ed60af423Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Feb 11 19:52:43 2015 +0200 Fix test failure seen on p8-rhel7 commitd72dea1959Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Feb 10 21:08:57 2015 +0100 Revert "Fixing ConnectSE compilation warnings" This reverts commitaa61e4c76ethat broke the compilation on few platforms (e.g. centos5). These warnings are already fixed properly in 10.0-connect. commitaa61e4c76eAuthor: Alexander Barkov <bar@mariadb.org> Date: Tue Feb 10 16:47:42 2015 +0400 Fixing ConnectSE compilation warnings (and failires in maintainer mode). commit1c801650f8Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Feb 4 17:09:43 2015 +0100 MDEV-7450 key management plugins don't work with yassl workaround, not a fix: don't build key management plugins in yassl builds commitd78a53ec43Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Jan 9 15:59:55 2015 +0100 update 32-bit rdiff files in sys_vars suite commit093b232a87Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Jan 12 19:24:24 2015 +0200 Do not yet allow encrypted tables with compressed tables. commite2e809860eAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Fri Jan 9 12:30:59 2015 +0200 Pass down the information should we encrypt the page at os0file.cc when page compression and google encryption is used. commite109a662c7Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Jan 9 15:12:17 2015 +0100 mtr check for openssl support for AES_CTR commitf3da18f635Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 8 00:25:05 2015 +0100 cmake-time detection for EVP_aes_128_ctr() because old openssl versions (e.g. on labrador) don't have it commitfaad7e0c18Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Jan 7 15:24:09 2015 +0200 Add test case for combination Google encryption and page compressed tables. commit21430e4378Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Jan 2 22:53:54 2015 +0100 encryption keys service commitcf8bf0b68eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 5 13:36:14 2015 +0100 encryption key management plugin api commitc8997c39b4Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 5 13:27:44 2015 +0100 initialize plugins in the specific order by plugin type but do MyISAM first - to read mysql.plugin table commit9cdf494197Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Dec 29 21:55:20 2014 +0200 Fixed XtraDB implementation of encryption and page encryption. commitd7d589dc01Author: Monty <monty@mariadb.org> Date: Mon Dec 22 16:53:17 2014 +0200 Push for testing of encryption commit3a3ec744b5Author: Monty <monty@mariadb.org> Date: Mon Dec 22 02:02:38 2014 +0200 cleanups done as part of adding encryption - Fixed compiler warnings - Added include/wait_for_binlog_checkpoint.inc, as suggested by JonasO - Updated 'build-tags' to work with git (Patch by Serg) commit01963e5df1Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 26 21:30:34 2015 +0100 fix for cmake builds on windows commit83c0866082Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Jan 9 14:00:00 2015 +0100 new read-only server variable version_ssl_library commit0d676fa0b7Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Feb 4 17:07:47 2015 +0100 minor cleanup: ssl.cmake commit4280b25ed8Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Jan 7 12:13:21 2015 +0100 --getopt-prefix-matching command-line option commit0ce8703e99Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 5 13:35:55 2015 +0100 password validation plugin API: renames commit5e17ca565eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 5 16:54:00 2015 +0100 don't mention bzr in "make distclean" warning message commitdf37215efbAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 5 18:18:33 2015 +0100 small cleanup of my_default.c commitc7d9f11c8bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Feb 10 00:45:37 2015 +0100 update test results for embedded commit4c69a6fff2Author: Vicențiu Ciorbaru <cvicentiu@gmail.com> Date: Mon Feb 9 17:16:55 2015 +0200 MDEV-6918 Create a way to see a user's default role. Added an extra column to i_s_applicable_roles, named IS_DEFAULT. The column displays which role is the default role for the user querying the table. commitbceb0b0be1Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Feb 8 20:44:46 2015 +0100 MDEV-7151 ha_archive.so missing from .deb add missing plugins to debs commitf13939061dMerge:86723393283b267eb646Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Feb 7 16:14:21 2015 +0100 Merge branch 'bb-10.1-merge' into 10.1 commit8672339328Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Feb 6 10:02:02 2015 +0100 MDEV-6676: Optimistic parallel replication Adjust the configuration options, as discussed on the maria-developers@ mailing list. The option to hint a transaction to not be replicated in parallel is now called @@skip_parallel_replication, consistent with @@skip_replication. And the --slave-parallel-mode is now simplified to have just one of the following values: none minimal conservative optimistic aggressive This reflects successively harder efforts to find opportunities to run things in parallel on the slave. It allows to extend the server with more automatic heuristics in the future without having to introduce a new configuration option for each and every one. commit734c4c0143Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Feb 6 08:31:38 2015 +0100 Add error handling on realpath() call. (Without this, it happened for me that realpath() failed returning undef for the default vardir. This in turn caused mysql-test-run.pl to delete the source mysql-test/ directory.) commit2deaa292e7Author: Daniel Black <daniel.black@openquery.com> Date: Wed Feb 4 13:57:09 2015 +0100 MDEV-7201: parallel threads resizing - potential race condition to access freed memory pool->threads is freed before being reassigned the new pool. Although not really a memory barrier I though it prudent to keep the pool thread count to be the lower of the old/new thread list before the new threads is allocated. commit3b267eb646Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 6 20:18:40 2015 +0100 after-merge fixes for test cases commit324cd36bd2Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 6 18:06:46 2015 +0100 disable -Werror in the maintainer mode until we're ready for it commit2a1470a0edAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 6 16:16:38 2015 +0100 wsrep: check options as early as possible to be able disable wsrep before any further code that uses it (e.g. initialized binlog when wsrep is enabled) commitc877610e16Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 6 16:15:17 2015 +0100 wsrep: ha_abort_transaction() does NOT end the transaction commit8e7649867fMerge:f9448bcb217cda4bee0eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Feb 6 16:14:23 2015 +0100 Merge 10.0-galera into 10.1 commitf9448bcb21Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Feb 5 19:18:09 2015 +0100 small cleanups commit32b0b6434bAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Feb 5 13:58:30 2015 +0400 MDEV-7177 - Server hangs on shutdown after InnoDB error (main.plugin_loaderr fails in buildbot) There was a race condition in timer functionality of query timeouts. Race was as following: main thread: init_thr_timers() timer handler thread: my_thread_init() main thread: end_thr_timer()/timer_thread_state= ABORTING timer handler thread: timer_thread_state= RUNNING, continue normal op main thread: waits indefinitely for timer handler thread to go down The original idea of the fix is to set RUNNING state in main thread, before starting timer handler thread. But it didn't survive further cleanups: - removed "timer_thread_state" and used "thr_timer_inited" for this purpose - removed unused "timer_thread_running" - removed code responisble for "timer handler thread" shutdown synchronization, use pthread_join() instead. commit451e9b7a50Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Feb 5 13:54:55 2015 +0400 MDEV-7499 - System variables have broken default values on big endian INFORMATION_SCHEMA.SYSTEM_VARIABLES.DEFAULT_VALUE had broken values on big endian. Default value is internally stored as longlong, while I_S references it's pointer (longlong *) according to variable type (e.g. int, my_bool, etc). This works well on little endian, but on big endian we always get 0 for such variables. commitb08126aad1Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Feb 5 08:52:17 2015 +0200 MDEV-7178: wsrep* tests fail in buildbot This is temporal test fixt to avoid concurrent IST for now until the actual issue https://github.com/codership/galera/issues/204 is fixed. commitad433e17f9Author: Elena Stepanova <elenst@montyprogram.com> Date: Thu Feb 5 02:44:03 2015 +0300 MDEV-7255 Failures in engines/* tests With commit227510e039(parser cleanup: don't store field properties in LEX, use Create_field directly) it became possible to create columns DOUBLE(0,0) and alike commit41dc186aa8Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Feb 4 19:31:16 2015 +0200 MDEV-6633: Remove magic dependencies for InnoDB compression methods Added options for each compression type that can be disabled i.e. bzip2, lz4, lzma and lzo. commitbfe703a458Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Feb 3 18:19:56 2015 +0100 don't let current_thd to point to a destroyed THD * reset current_thd in THD::~THD, otherwise my_malloc_size_cb_func() might access THD after it was destroyed. * remove now redundant set_current_thd(0) calls that follow delete thd. commitd0fb9580e0Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Feb 3 09:31:13 2015 +0100 Update test results after the last push. Again. This reverts commit06c1690445. commitd8eba59d9cAuthor: Monty <monty@mariadb.org> Date: Tue Feb 3 00:47:39 2015 +0200 Commit one file that I forgot in last commit commit80ce0c1c9cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Feb 1 13:43:19 2015 +0100 cleanup: ha_checktype() * error reporting was never needed * avoid useless transformaton hton to db_type to hton * in many cases the engine was guaranteed to exist, add asserts * use ha_default_handlerton() instead of ha_checktype(DB_TYPE_DEFAULT) commit06c1690445Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Feb 2 18:02:43 2015 +0100 revert test changes from "cleaned up code for setting slave_parallel_mode" but keep the code cleanup. as it turns out, it didn't change the behavior, which is good :) commit51bdfb01d8Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Feb 2 09:04:16 2015 +0100 trivial cleanup: be explicit about extern variables commit9efd0207e4Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Feb 2 09:03:40 2015 +0100 fix the code to compile commitcd9e69ec70Author: Monty <monty@mariadb.org> Date: Sun Feb 1 22:39:59 2015 +0200 Cleaned up code for setting slave_parallel_mode Now this works the same way as all other multi source variables. commit0ee879ff8aAuthor: Monty <monty@mariadb.org> Date: Sun Feb 1 15:24:22 2015 +0200 Improve performance for calculating memory allocation Extend interface for 'show variables' with current scope commit67b24a2374Author: Monty <monty@mariadb.org> Date: Thu Jan 29 15:36:25 2015 +0200 Remove some allocations not needed for internal temporary tables. commite7870122f3Author: Monty <monty@mariadb.org> Date: Thu Jan 29 15:35:52 2015 +0200 Ignore tokudb binaries commit6a3fee211fMerge:b2ceedc9fbedf34f38acAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Feb 1 12:39:59 2015 +0100 Merge remote-tracking branch 'refs/remotes/github/10.1' into 10.1 commitb2ceedc9fbAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Jan 31 16:35:50 2015 +0100 main.ctype_ucs2 --ps: Item_func_nullif should use m_args0_copy metadata in case args[0] changes between PREPARE and EXECUTE commitf122cca4dfAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Jan 31 16:01:20 2015 +0100 main.null --ps: Item_null doesn't need charset converter in particular, not the one that destructively changes Item's charset (meaning different metadata for PREPARE and EXECUTE) commit6f12cfdc5eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Jan 31 15:14:59 2015 +0100 fix semisync plugin locking: rpl.rpl_semi_sync_uninstall_plugin failed commit863cfb3fa5Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Jan 31 15:04:37 2015 +0100 small cleanup, remove a useless function commitb050354ffbAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Jan 31 12:54:07 2015 +0100 compiler warnings commitf299da89baAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Jan 30 21:12:26 2015 +0100 rpl.rpl_parallel: after-merge fix * fix the test to pass * rearrange tests in a file to allow it to auto-merge in the future commit4b21cd21feMerge:0b049b4012a06624d61fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Jan 31 21:48:47 2015 +0100 Merge branch '10.0' into merge-wip commitedf34f38acAuthor: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu Jan 29 22:43:07 2015 +0100 MDEV-7024: Assertion `! is_set()' failed in Diagnostics_area::set_eof_status on executing ANALYZE SELECT via PS select_send::is_result_interceptor() should return FALSE because it return results to the client. commit51feb6fa99Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Thu Jan 29 12:47:13 2015 +0100 MDEV-7023: Error 2027: Malformed packet and assertion `field_types == 0 || field_types[field_pos] == MYSQL_TYPE_INT24 || field_types[field_pos] == MYSQL_TYPE_LONG' failure in Protocol_text::store_long The problem was that sp_head::MULTI_RESULTS was not set correctly for ANALYZE statement. commitcd187ecf90Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jan 27 20:22:06 2015 -0500 Add cmake check for getifaddrs. commitd8ee54c633Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jan 27 20:02:43 2015 -0500 Add cmake check for getifaddrs. commit47d8001c67Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jan 27 16:54:24 2015 -0500 MDEV-7476: Allow SELECT to succeed even when node is not ready Added a SESSION-only system variable "wsrep_dirty_reads" to allow SELECT queries to pass even when the node is not prepared to accept queries (wsrep_ready=OFF). Added a test case. commit950d69610aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jan 27 16:25:18 2015 -0500 MDEV-7322: Option to allow setting the binlog_format with Galera At session scope, allow binlog_format to be changed to values other than ROW with a warning. commit9b7e3801f4Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jan 27 16:22:29 2015 -0500 MDEV-7476: Allow SELECT to succeed even when node is not ready Added a SESSION-only system variable "wsrep_dirty_reads" to allow SELECT queries to pass even when the node is not prepared to accept queries (wsrep_ready=OFF). Added a test case. commit5b6f637caaAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jan 27 14:17:40 2015 -0500 MDEV-7322: Option to allow setting the binlog_format with Galera At session scope, allow binlog_format to be changed to values other than ROW with a warning. commit0b049b4012Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Jan 27 15:40:50 2015 +0200 Fix test failure on innodb_stats_fetch_nonexistent. commit7cda4bee0eMerge:ea229eb6bbfb71449b10Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jan 26 22:54:27 2015 -0500 maria-10.0.16 merge bzr merge -r4588 maria/10.0 commitea229eb6bbAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jan 26 22:48:02 2015 -0500 Minor test modifications. commit248c662cd7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jan 26 22:43:46 2015 -0500 Minor test modifications. commite6f35f1511Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jan 26 11:58:16 2015 -0500 Backported changes done in wsrep_guess_ip() from 10.1. commitf9e7f82d15Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jan 26 11:44:39 2015 -0500 Backported changes done in wsrep_guess_ip() from 10.1. commit53b9f755afAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Jan 24 18:46:48 2015 -0500 MDEV-7374 : Losing connection to MySQL while running ALTER TABLE Backport from 10.1. commitfffc9f585dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Jan 24 18:39:21 2015 -0500 MDEV-7374 : Losing connection to MySQL while running ALTER TABLE Backport from 10.1. commit0105bf349aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jan 22 18:00:37 2015 -0500 MDEV-7476: Allow SELECT to succeed even when node is not ready Added a SESSION-only system variable "wsrep_dirty_reads" to allow SELECT queries to pass even when the node is not prepared to accept queries (wsrep_ready=OFF). Added a test case. commitb520120040Merge:f6e1906ceddd80c22c2dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jan 21 10:57:46 2015 -0500 MDEV-7123 : MariaDB 10.0.14 Galera node shutdown with signal 11 wsrep-patch uses same connection name for constructing Master_info objects. As a result all existing wsrep Master_info objects refer to same rpl_filter object. This could lead to race when multiple threads try to delete/destruct Master_info object, as they would all try to delete the same relay_log object. Fixed by adding a check in Master_info's destructor to not free the "wsrep" rpl_filter, so that its reused by current & subsequent wsrep threads and later reclaimed by free_all_rpl_filters() during server shutdown. commitf6e1906cedAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Jan 18 18:16:36 2015 -0500 MDEV-7470: MariaDB-Galera-server uses 'tar', but 'tar' is not in the dependency list Added tar to the dependency list. commit887628aceeAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jan 16 13:53:23 2015 -0500 Test changes (backported from 10.1). commitbb93d46241Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jan 16 13:52:30 2015 -0500 Test changes (backported from 10.1). commitab440b0fb7Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 15 14:59:20 2015 +0100 update sysvars_server_embedded,32bit.rdiff commit90f2ec5122Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 15 14:57:50 2015 +0100 bugfix: incorrect cast causing random memory write options->app_type was set to mysql_sysvar_t* pointer, later changed to sys_var* pointer, and even later dereferenced as sys_var*. But for PLUGIN_VAR_NOSYSVAR variables the pointer wasn't changed to sys_var*, so mysql_sysvar_t* pointer was dereferenced (and updated!) as if it was sys_var*. This caused maria.maria-gis-recovery test failure on x86 (fulltest2). commitb4daf8efacAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 15 14:41:24 2015 +0100 split an assert commitde4cfabe5fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 15 08:36:13 2015 +0100 sort a non-deterministic test result commita1e3eaf953Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jan 13 11:00:40 2015 +0100 fix a duplicate macro definition commitfe0112e252Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Jan 14 19:24:37 2015 +0200 MDEV-7424: InnoDB: Assertion failure in thread 139901753345792 in file buf0mtflu.cc line 439 Analysis: At shutdown multi-threaded flush sends a exit work items to all mtflush threads. We wait until the work queue is empty. However, as we did not hold the mutex, some other thread could also put work-items to work queue. Fix: Take mutex before adding exit work items to work queue and wait until all work-items are really processed. Release mutex after we have marked that multi-threaded flush is not anymore active. Fix test failure on innodb_bug12902967 caused by unnecessary info output on xtradb/buf/buf0mtflush.cc. Do not try to enable atomic writes if the file type is not OS_DATA_FILE. Atomic writes are unnecessary for log files. If we try to enable atomic writes to log writes that are stored to media supporting atomic writes we will end up problems later. commitabf400e810Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jan 13 13:12:05 2015 -0500 MDEV-6771 : Incorrect Size for Transfer Reported to pv xargs may split the input and execute them in batches for large number of files. As a result xtrabackup sst script may feed incorrect size to pv. Fixed by piping the files to du directly (du --files0-from=-). [Based on suggestions from Brad Jorgensen] commit33b4fab867Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Jan 13 13:10:07 2015 -0500 MDEV-6771 : Incorrect Size for Transfer Reported to pv xargs may split the input and execute them in batches for large number of files. As a result xtrabackup sst script may feed incorrect size to pv. Fixed by piping the files to du directly (du --files0-from=-). [Based on suggestions from Brad Jorgensen] commit2de9427ccfAuthor: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Tue Jan 13 14:18:23 2015 +0100 MDEV-7391: rpl.rpl_semi_sync, rpl.rpl_semi_sync_after_sync_row fail in buildbot The problem was caused by a merge error (incorrect conflict resolution) when the MDEV-7257 patch was merged into 10.1. The incorrect merge put two code blocks in the wrong order. This caused a race that was seen as sporadic test failures. (The problem was that binlog end position was updated before running after_flush hook; this way it was possible for the binlog dump thread to send a transaction to a slave without requesting semi-sync acknowledgement. Then when no acknowledgement was received, semisync replication would be disabled on the master.) commite695db0f2dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jan 12 17:03:45 2015 +0100 MDEV-7437 remove suport for "atomics" with rwlocks commit1f0ad6c6b3Author: Alexander Barkov <bar@mariadb.org> Date: Tue Jan 13 11:50:33 2015 +0400 MDEV-7288 USER/ROLE: CREATE OR REPLACE, CREATE IF NOT EXISTS, DROP IF EXISTS commita68ad5d50fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Jan 7 11:36:46 2015 +0100 MDEV-7325 make lf_hash_delete(), lf_hash_search(), and lf_hash_iterator() never to return OOM if lf_hash_delete() and lf_hash_search() cannot create a new bucket because of OOM, they'll start the search from the parent bucket. As for lf_hash_iterate() - it only ever uses bucket number 0, so if it cannot create *that* bucket, the hash must surely be empty. commit2a4a5d890eAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Mon Jan 12 13:30:30 2015 +0400 MDEV-7426 - federated.federated_server fails Fixed error path of close_cached_connection_tables() to unlock mutex. commit517c5c9e89Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Jan 12 09:30:49 2015 +0200 MDEV-7262: innodb.innodb-mdev7046 fail on BuildBot Test causes OS error printout and we need to supress this error message on tests. commit2501a0ea59Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jan 11 16:37:25 2015 +0100 MDEV-7364 - mysqld --help --verbose prints random values for "debug" better fix that doesn't make debug-dbug variable to disappear from mysqld --help output (this fact is used by have_debug.inc) and shows correctly what dbug value was set on the command line. commit3fcbd7cb47Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jan 11 15:49:23 2015 +0100 cleanup: remove unused THD::COND_wsrep_thd commit1182aeb096Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jan 9 21:52:16 2015 -0500 MDEV-7271 : rpl.rpl_domain_id_filter fails sporadically in buildbot Use save_master_gtid.inc/sync_with_master_gtid.inc to sync slave with master instead of log position. commit6627895176Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 8 21:26:56 2015 +0100 MDEV-6731 No ALGORITHM information in I_S.VIEWS commitb111d98847Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 8 16:53:36 2015 +0100 MDEV-5533 increase the default max thread pool size 500 -> 1000 commitdd80c22c2dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jan 9 00:32:28 2015 -0500 MDEV-7123 : MariaDB 10.0.14 Galera node shutdown with signal 11 wsrep-patch uses same connection name for constructing Master_info objects. As a result all existing wsrep Master_info objects refer to same rpl_filter object. This could lead to race when multiple threads try to delete/destruct Master_info object, as they would all try to delete the same relay_log object. Fixed by adding a check in Master_info's destructor to not free the "wsrep" rpl_filter, so that its reused by current & subsequent wsrep threads and later reclaimed by free_all_rpl_filters() during server shutdown. commit8655136222Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Jan 8 20:26:53 2015 +0100 remove wsrep_hton dependency from innodb/xtradb commit4ce39dca99Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Dec 4 17:59:07 2014 +0100 enable feedback plugin by default As requested by Monty commit743a28ea57Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jan 7 17:22:53 2015 -0500 MDEV-7129 : Galera duplicate error on autoincrement field primary key Merged fix for https://github.com/codership/mysql-wsrep/issues/18. commit54b26b494bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jan 7 13:12:31 2015 -0500 MDEV-7129 : Galera duplicate error on autoincrement field primary key Merged fix for https://github.com/codership/mysql-wsrep/issues/18. commited0ea644a0Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Jan 5 17:06:50 2015 -0500 MDEV-7412: Segfault during start with mysqldump SST Added a validity check for my_bind_addr_str before its value is accessed. commitaee3ac4877Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jan 2 10:02:04 2015 -0500 MDEV-7222: Cluster Node Crash at CREATE DEFINER statement Check whether the definer host string is not null before appending it to the specified buffer. commit455f77bdbbAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Jan 2 10:01:09 2015 -0500 MDEV-7222: Cluster Node Crash at CREATE DEFINER statement Check whether the definer host string is not null before appending it to the specified buffer. commit6f4f8c5f8aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Dec 31 20:58:54 2014 -0500 MDEV-7374 : Losing connection to MySQL while running ALTER TABLE In the special case of ALTER TABLE with >10K rows, wsrep commit should skip if wsrep is not enabled. Added a test case. commit61f73d40caAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Dec 31 19:52:35 2014 -0500 MDEV-7397: SIGSEGV on inserting into a key-less table When wsrep is enabled, an md5 hash of the entire row is calculated for tables with no PK. It, however segfaulted as the md5 context object was not properly constructed. Fixed by ensuring that the YaSSL's context object gets constructed explicitly at the specified pre-allocated location (placement) before its used. Added a test case. commit25aaa652c4Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Dec 31 19:46:48 2014 -0500 MDEV-6832: ER_LOCK_WAIT_TIMEOUT on SHOW STATUS Synchronous read view should not be needed for SHOW commands. commit952b575272Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Dec 31 19:28:20 2014 -0500 MDEV-6832: ER_LOCK_WAIT_TIMEOUT on SHOW STATUS Synchronous read view should not be needed for SHOW commands. commitdc92032fa3Author: Sergey Vojtovich <svoj@mariadb.org> Date: Mon Dec 29 15:41:08 2014 +0400 Fixed sysvars_server_embedded test result to reflect new values for query_prealloc_size, query_alloc_block_size and log_tc_size. Fixed incorrect registration of LOCK_binlog_end_pos in PFS. commit6dbc48ca79Author: Sergey Vojtovich <svoj@mariadb.org> Date: Sun Dec 28 19:42:17 2014 +0400 MDEV-7324 - Lock-free hash for table definition cache commit8883c54ac0Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 27 23:49:45 2014 +0100 lf_hash_iterate() function commit48430e4676Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 27 20:51:23 2014 +0100 lf_hash changes, in lfind() casts, etc real changes are: * remove one retry, it is enough to check for DELETED after the key is read * advance 'head' pointer when we see a dummy node to have shorter retries commitc0d4e8a395Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Sun Dec 28 13:54:41 2014 +0200 MDEV-7262: innodb.innodb-mdev7046 fail on BuildBot commit46f3f93a2cMerge:f65901eef27860333669Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Sun Dec 28 12:55:01 2014 +0200 Merge pull request #14 from James-TR/MDEV-7369 Add fix for MDEV-7369 commit7860333669Author: James Taylor <james@jtaylor.id.au> Date: Sat Dec 27 03:23:49 2014 +0000 Add fix for MDEV-7369 See also https://mariadb.atlassian.net/browse/MDEV-7369 commitf65901eef2Author: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Dec 26 23:38:45 2014 +0400 MDEV-7273 - 10.1 fails to start up during tc_log initializations on PPC64 log-tc-size is 24K by default. Page size is 64K on PPC64. But log-tc-size must be at least 3 x page size. This is enforced by TC_LOG_MMAP::open() with a comment: to guarantee non-empty pool. This all makes server not startable in default configuration on PPC64. Autosize log-tc-size, so that it's min value= page size * 3, default value= page size * 6, block size= page size. commit8c616cd347Author: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Dec 26 19:44:38 2014 +0400 MDEV-7053 - WSREP_STATUS & WSREP_MEMBERSHIP I_S tables wsrep_status was renamed to wsrep_info. Adjusted deb build scripts accordingly. commitdb89dd3a8fAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Dec 26 13:07:43 2014 +0400 MDEV-7364 - mysqld --help --verbose prints random values for "debug" getopt value pointer of "debug" variable was pointing to incorrect address: &global_system_variables. Runtime statements like SHOW VARIABLES materialize value from DBUG structures on demand, so they never access getopt value pointer. But mysqld --help --verbose loaded this value from &global_system_variables. Remove "debug" variable from mysqld --help --verbose output by setting value pointer to NULL. commitae09895c91Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Dec 24 10:06:12 2014 +0400 MDEV-7277 Server crashes on creating/opening tables on Windows debug build. The srid variable was used uninitialised when the field wasn't GIS. Only problem is that it makes the debugger unhappy. Still added the initialization. commit03e0f1f866Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Dec 23 18:36:33 2014 -0500 MDEV-7053 : WSREP_STATUS & WSREP_MEMBERSHIP I_S tables Addendum : Renamed plugin .so file. commit0b87de124dAuthor: Jonas Oreland <jonaso@google.com> Date: Tue Dec 23 13:38:00 2014 +0100 MDEV-162 Enhanced semisync replication Implement --semi-sync-master-wait-point=AFTER_SYNC|AFTER_COMMIT. When AFTER_SYNC, the semi-sync wait will be done earlier, before the storage engine commit rather than after. This means that a transaction will not be visible on the master until at least one slave has received it. commit4d8b346e07Author: Jonas Oreland <jonaso@google.com> Date: Fri Dec 19 12:36:23 2014 +0100 MDEV-7257: Dump Thread Enhancements Make the binlog dump threads not need to take LOCK_log while sending binlog events to slave. Instead, a new LOCK_binlog_end_pos is used just to coordinate tracking the current end-of-log. This is a pre-requisite for MDEV-162, "Enhanced semisync replication". It should also help reduce the contention on LOCK_log on a busy master. Also does some much-needed refactoring/cleanup of the related code in the binlog dump thread. commiteda3db826fMerge:cb47155c680f64a927a9Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Dec 22 20:09:25 2014 -0500 Merge revisions from maria/5.5 (5.5.41) bzr merge -r4393 lp:maria/5.5 commit96e505e4b7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Dec 20 19:58:54 2014 -0500 MDEV-7319 : Galera bootstrap (/etc/init.d/mysql bootstrap) returns code 0 on failure Modified init script to return with proper exit status for bootstrap command. [Based on Kenny Rasschaert's suggestion] commitcb47155c68Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Dec 20 19:49:04 2014 -0500 MDEV-7319 : Galera bootstrap (/etc/init.d/mysql bootstrap) returns code 0 on failure Modified init script to return with proper exit status for bootstrap command. [Based on Kenny Rasschaert's suggestion] commit89b2bc42f4Merge:920bc0aff1357cb12d87Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Dec 16 20:07:34 2014 -0500 Merge revisions from maria/5.5 bzr merge -r4388 lp:maria/5.5 commitea01fff505Author: Alexander Barkov <bar@mariadb.org> Date: Tue Dec 16 15:31:25 2014 +0400 Fixing test failures caused by the previous commits. Adding "--source include/have_udf.inc" and a few "--replace" commands. commit2dbd26932dAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Dec 15 17:41:15 2014 +0400 MDEV-7283 UDF: CREATE OR REPLACE, CREATE IF NOT EXISTS, DROP IF EXISTS MDEV-7282 SP: CREATE OR REPLACE, CREATE IF NOT EXISTS commit3a37c01334Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Dec 12 17:16:11 2014 -0500 MDEV-6891: Addendum, update company name in copyright notice commit920bc0aff1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Dec 12 17:14:06 2014 -0500 MDEV-6891: Addendum, update company name in copyright notice commit48ed8ab215Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Dec 12 10:58:38 2014 -0500 MDEV-6891: Update company name commit756c6f74bfAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Dec 12 10:46:31 2014 -0500 MDEV-6891: Update company name commit64714ae2c1Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Dec 12 10:45:32 2014 -0500 MDEV-6891: Update company name commit263cf26e8bAuthor: Elena Stepanova <elenst@montyprogram.com> Date: Fri Dec 12 04:42:59 2014 +0400 Increased the version number commit0b936cda07Author: Alexander Barkov <bar@mariadb.org> Date: Wed Dec 10 16:46:21 2014 +0400 Using Schema_specification_st instead of HA_CREATE_INFO in a few places where the former is enough. commit4f9f3d4391Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Dec 10 06:24:56 2014 -0500 empty revision commit822eb6ca3dAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed Dec 10 13:41:14 2014 +0400 MDEV-7285 SERVER: CREATE OR REPLACE and CREATE IF NOT EXISTS commit14cfb0acb8Author: Alexander Barkov <bar@mariadb.org> Date: Wed Dec 10 12:00:25 2014 +0400 MDEV-6409 CREATE VIEW replication problem if error occurs in mysql_register_view An additional debug test, made by Sriram Patil while working on "CREATE VIEW IF NOT EXISTS". commit60277b8b3cAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed Dec 10 11:32:52 2014 +0400 MDEV-7287 VIEW: CREATE IF NOT EXISTS Forgot to do "git add" for a number of files in the previous commit. commitacdc383445Author: Alexander Barkov <bar@mariadb.org> Date: Wed Dec 10 11:06:36 2014 +0400 MDEV-7287 VIEW: CREATE IF NOT EXISTS commit92a523e5d5Author: Alexander Barkov <bar@mariadb.org> Date: Wed Dec 10 10:40:35 2014 +0400 MDEV-7280 DATABASE: CREATE OR REPLACE A clean-up: require CREATE+DROP privileges for "CREATE OR REPLACE DATABASE", instead of just CREATE privilege. commit31c7458e1aAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed Dec 10 08:19:19 2014 +0400 MDEV-7280 DATABASE: CREATE OR REPLACE A test clean-up: The "SHOW DATABASES" queries now use "LIKE 'db%'", to display only the databases created during this test, thus exclude the system databases, as some of them can be optional (e.g. performance_schema). commitdd270e43bfAuthor: Alexander Barkov <bar@mariadb.org> Date: Wed Dec 10 08:13:08 2014 +0400 MDEV-7280 DATABASE: CREATE OR REPLACE commit41367e4023Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Dec 9 10:35:16 2014 -0500 MDEV-7204: mariadb-galera-server el7 rpms packaging issue, no mariadb-server in provides MDEV-7233: Fix issue with missing dependency socat when installing MariaDB-galera-server on RedhatEL/OracleEL/(Others?) RPM based * Added mariadb-server to "provides" for MariaDB Galera server package. (rpm) * Removed "socat" from MariaDB Galera server's mandatory dependency list. (rpm) * Moved "socat" from mandatory to optional dependency. (deb) commit86d7512f42Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Dec 9 10:27:49 2014 -0500 MDEV-7204: mariadb-galera-server el7 rpms packaging issue, no mariadb-server in provides MDEV-7233: Fix issue with missing dependency socat when installing MariaDB-galera-server on RedhatEL/OracleEL/(Others?) RPM based * Added mariadb-server to "provides" for MariaDB Galera server package. (rpm) * Removed "socat" from MariaDB Galera server's mandatory dependency list. (rpm) * Moved "socat" from mandatory to optional dependency. (deb) commite51e5e940cAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Dec 8 23:44:53 2014 -0500 Merged patch for lp:1167368 from maria-5.5-galera. commitc6d3f8058dAuthor: Alexander Barkov <bar@mariadb.org> Date: Mon Dec 8 10:56:08 2014 +0400 MDEV-7112 Split HA_CREATE_INFO commitb372720177Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Dec 6 20:34:33 2014 +0300 Update test results commit913b7672c5Merge:db21fddc37eeef80d09fAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sat Dec 6 20:33:25 2014 +0300 Merge bb-10.1-explain-json into 10.1 commiteeef80d09fAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sat Dec 6 20:13:38 2014 +0300 EXPLAIN FORMAT=JSON : Fix MDEV-7266, bug in pretty-printer - Single_line_formatting_helper should not accidentally exit the DISABLED state. No JSON construct should be able to move the Single_line_formatting_helper from DISABLED state. commitdc259324d7Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Dec 6 19:27:42 2014 +0300 EXPLAIN JSON: Print out the "expensive constant condition" attached to joins. commitdb21fddc37Author: Kristian Nielsen <knielsen@knielsen-hq.org> Date: Fri Dec 5 16:09:48 2014 +0100 MDEV-6676: Optimistic parallel replication Implement a new mode for parallel replication. In this mode, all transactions are optimistically attempted applied in parallel. In case of conflicts, the offending transaction is rolled back and retried later non-parallel. This is an early-release patch to facilitate testing, more changes to user interface / options will be expected. The new mode is not enabled by default. commit1e3f09f163Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Dec 6 04:02:30 2014 +0300 MDEV-7264: Assertion `0' failed in subselect_engine::get_identifier() Switch EXPLAIN JSON from using subselect_engine::get_identifier() to the number from Item_subselect::unit. Remove subselect_union_engine::get_identifier() because it was added only for EXPLAIN JSON code. commit5ee1c25fa8Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Dec 6 03:11:03 2014 +0300 EXPLAIN FORMAT=JSON: Full scan on NULL key (join case) commita80a797686Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Dec 6 02:23:37 2014 +0300 EXPLAIN FORMAT=JSON: Support "range checked for each record" commit9cac7649eaAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sat Dec 6 01:11:22 2014 +0300 EXPLAIN FORMAT=JSON: Support range+MRR plans (when MRR is used but BKA is not) commit3bb02f3e6dMerge:a4cdd20d49ffc0ef6316Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Dec 5 12:33:02 2014 -0500 bzr merge -rtag:mariadb-10.0.15 maria/10.0 commit8fb2c80fdbAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Fri Dec 5 16:38:48 2014 +0400 Fixed valgrind warnings in delete_dynamic(). Join_plan_state performs out-of-API initialization of DYNAMIC_ARRAY. This is done to postpone actual array initialization till first use, whilst retaining the right to call delete_dynamic(). Since delete_dynamic() now checks DYNAMIC_ARRAY::malloc_flags it should be initialized it as well. commit78564373feAuthor: Monty <monty@mariadb.org> Date: Fri Aug 29 14:07:43 2014 +0300 my_alloc.c - Changed 0x%lx -> %p array.c: - Static (preallocated) buffer can now be anywhere my_sys.h - Define MY_INIT_BUFFER_USED sql_delete.cc & sql_lex.cc - Use memroot when allocating classes (avoids call to current_thd) sql_explain.h: - Use preallocated buffers sql_explain.cc: - Use preallocated buffers and memroot sql_select.cc: - Use multi_alloc_root() instead of many alloc_root() - Update calls to Explain commit3392278c86Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Dec 4 17:44:46 2014 +0400 MDEV-7004 - Merge scalability fixes from 10.0-power Preallocate dynamic array and bitmap on mem_root to avoid expensive malloc. This reduces number of allocations from 39 to 31 per OLTP RO transaction. commiteaa8c154e8Author: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Dec 4 17:42:32 2014 +0400 MDEV-7004 - Merge scalability fixes from 10.0-power Preallocate dynamic array on THD mem_root to avoid expensive malloc. commit070a6e7a89Author: Monty <monty@mariadb.org> Date: Fri Aug 29 14:09:51 2014 +0300 - Changed default values of query_prealloc_size and query_alloc_block_size so that a simple query with one join would not have to call my_malloc. - Allow lower limites for query_prealloc_size for testing. - Fixed wrong initialization of trans_alloc_block_size commit9127784d5cAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Thu Dec 4 17:35:55 2014 +0400 Cherry pick dynamic array changes from commit: commit 85fd3d901311688e18ffce92ffc78129e5625791 Author: Monty <monty@mariadb.org> Date: Fri Aug 29 14:07:43 2014 +0300 my_alloc.c - Changed 0x%lx -> %p array.c: - Static (preallocated) buffer can now be anywhere my_sys.h - Define MY_INIT_BUFFER_USED sql_delete.cc & sql_lex.cc - Use memroot when allocating classes (avoids call to current_thd) sql_explain.h: - Use preallocated buffers sql_explain.cc: - Use preallocated buffers and memroot sql_select.cc: - Use multi_alloc_root() instead of many alloc_root() - Update calls to Explain commit974808772bAuthor: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Dec 2 15:03:35 2014 +0400 MDEV-7004 - Merge scalability fixes from 10.0-power All callers of open_cached_file() use 2 characters prefix. Allocating memory for such short string is an overkill. Store it on IO_CACHE structure instead. All callers of open_cached_file() use mysql_tmpdir as dir. No need to allocate memory for it since it is constant and available till server shutdown. This reduces number of allocations from 31 to 27 per OLTP RO transaction. commit9e9f1da0d2Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Dec 2 14:59:01 2014 +0400 MDEV-7004 - Merge scalability fixes from 10.0-power Remove call to deprecated set_thread_state. It is noop anyway, but generates function call independently of performance schema state. According to perf this saves ~0.2% of execution time. commitb4ec230917Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Dec 2 14:54:30 2014 +0400 MDEV-7004 - Merge scalability fixes from 10.0-power Preallocate locks on THD mem_root to avoid expensive malloc. commit9bc5cec0f1Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Dec 2 14:50:18 2014 +0400 MDEV-7004 - Merge scalability fixes from 10.0-power Preallocate locks on THD mem_root to avoid expensive malloc. commitfaf169d245Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Dec 2 14:02:48 2014 +0400 MDEV-6906 - Relaxed memory order for counters Let some atomic counters use relaxed memory order. commit732d2daf44Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Dec 4 20:19:15 2014 +0100 fix for 32-bit commit6ea9036743Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Dec 4 20:17:26 2014 +0100 fix out-of-source builds commite1913ba15aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Dec 4 15:58:25 2014 +0100 fix set_statement test for windows timestamp has a lower granularity on windows so it needs more time to change. commit7a47416259Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Dec 4 14:31:31 2014 +0100 compilation failure on windows commitc4cb15e87bAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Dec 3 14:07:43 2014 +0400 MDEV-60 Support for Spatial Reference systems for the GIS data. The GEOMETRY field metadata is stored in the FRM file. SRID for a spatial column now can be stored, it was added to the CREATE TABLE syntax, so the AddGeometryData() stored procedure is now possible. Script adding the required Add/DropGeometryColumn sp-s added. commitc4655cf862Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 14 13:46:21 2014 +0100 cleanup: comments referring to non-extistent Item classes commit65f0a8d487Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Nov 8 18:47:05 2014 +0100 cleanup: sort and reorder %union elements in sql_yacc.yy commit227510e039Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Nov 8 17:37:19 2014 +0100 parser cleanup: don't store field properties in LEX, use Create_field directly length/dec/charset are still in LEX, because they're also used for CAST and dynamic columns. also 1. fix "MDEV-7041 COLLATION(CAST('a' AS CHAR BINARY)) returns a wrong result" 2. allow BINARY modifier in stored function RETURN clause 3. allow "COLLATION without CHARSET" in SP/SF (parameters, RETURN, DECLARE) 4. print correct variable name in error messages for stored routine parameters commitd1522af72dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Dec 4 13:06:57 2014 +0100 update 32-bit rdiff's commit0fe39b6856Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Dec 4 12:40:19 2014 +0200 MDEV-7262: innodb.innodb-mdev7046 and innodb-page_compression* fail on BuildBot If persistent trim is not used some OS require that we write full page. commit8360e1a5b5Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Dec 3 23:51:47 2014 +0100 MDEV-6712 THD specifics for plugins thd_specifics service commit0c7d773fcaAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 25 22:22:55 2014 +0100 test for two password validation plugins when many plugins are active, all must approve the password commit78cb6e34adAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 25 21:48:13 2014 +0100 cracklib_password_check plugin commit7516a3c7f4Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 25 18:47:44 2014 +0100 strict_password_validation commitb814046719Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 25 10:07:59 2014 +0100 validate SET PASSWORD commitdccd85e7c7Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Nov 24 21:02:57 2014 +0100 cleanup: s/(OLD_)?PASSWORD/&_SYM/g commit8934794a70Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 25 18:53:40 2014 +0100 password validation function in sql_acl.cc commitc98b2b393dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 25 21:58:14 2014 +0100 password validation plugin type and a simple plugin commitb5357f025bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 25 19:05:49 2014 +0100 GRANT: calculate pasword hash in sql_acl.cc don't do it in the parser, one should not make run-time decisions (like, checking thd->variables.old_passwords variable) during parsing. commit7bd9eb1f41Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Nov 24 16:55:56 2014 +0100 parser: store the password hash in LEX_USER::auth, not in ::password * indeed, "username IDENTIFIED BY PASSWORD hash" is the same as "username IDENTIFIED VIA mysql_native_password USING hash" * LEX_USER::password can now be used for plain-text passwords commit91ad0cd580Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Nov 24 16:53:51 2014 +0100 sql_acl.cc: better recognize the context to tell the role from a user REQUIRE and MAX_QUERIES_PER_HOUR can not possibly apply to a role commitbc603c604dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Nov 24 15:10:51 2014 +0100 bugfix: IDENTIFIED BY clause was lost in some GRANT variants commit61820bca9bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Nov 24 14:07:42 2014 +0100 cleanup: sql_acl.cc * remove no-op check_password_policy() and references to it * add 'static' to functions that need it * remove unused function check_acl_user() commitf5722f5851Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Nov 23 20:30:56 2014 +0100 cleanup: normalize LEX_USER to get rid of different representation of the same thing username IDENTIFIED BY PASSWORD xxx username IDENTIFIED VIA mysql_native_password USING xxx etc also check for valid strlen(xxx) commitc1204da1c7Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Nov 23 19:36:08 2014 +0100 cleanup: bool_variable= -1; -> bool_variable= true; commit7f856f0a82Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 21 17:53:16 2014 +0100 remove unsupported service file commit4027e3b885Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 21 14:45:25 2014 +0100 don't load plugin of unsupported types commit77e3cb7dc1Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Oct 23 21:01:52 2014 +0200 cleanup: sql_plugin.cc * test for opt->name being non-NULL *before* dereferencing it * remove unused argument in cleanup_variables() * simplify commitbdb222bcc4Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Dec 3 14:25:01 2014 +0100 update 32-bit rdiff's commit23fa0a367bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Nov 29 19:49:42 2014 +0100 fix a comment commitfc40f81edaAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Nov 29 00:53:09 2014 +0100 a case of uninitialized variable commite4f973930cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Nov 29 00:52:48 2014 +0100 MDEV-6999 Remove or deprecate unused variables commit6a2fbdf948Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Nov 29 00:29:40 2014 +0100 MDEV-6979 simplify trigger rules for RBR triggers Rows_log_event::write_row - don't optimize DELETE+INSERT into UPDATE if RBR triggers are used commit1bd1c29ea0Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Nov 28 22:39:22 2014 +0100 MDEV-6895 switch to dynamic libjemalloc.so commit0438f12540Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Nov 27 09:45:10 2014 +0100 MDEV-6980 OUT parameters in PREPARE revert the patch for "out parameters in prepare" commit717a264ef4Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Nov 26 20:49:24 2014 +0100 MDEV-6894 Enable SEQUENCE engine by default commit69d700ace3Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Nov 26 20:34:40 2014 +0100 MDEV-5871 support assisted discovery in oqgraph v3 commit2ef0312cd9Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Nov 26 20:33:50 2014 +0100 oqgraph cleanup: remove casts commit2ae7541bcfAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Nov 19 09:13:38 2014 +0100 cleanup: s/const CHARSET_INFO/CHARSET_INFO/ as CHARSET_INFO is already const, using const on it is redundant and results in compiler warnings (on Windows) commit0d30423900Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Nov 19 08:55:06 2014 +0100 cleanup: reuse MY_CHECK_AND_SET_COMPILER_FLAG in sphinx/CMakeLists.txt commitd2a78def63Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Nov 18 11:36:15 2014 +0100 cleanup: ptr_cmp 1. don't cast size_t* to int* 2. remove long obsolete register specifier commit20c3b2ff80Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Nov 16 13:15:35 2014 +0100 MDEV-6311 Add errors on CREATE SERVER fail CREATE SERVER foreign data wrapper is "mysql" and neither HOST nor SOCKET are specified. Also default PORT to 3306 (again, only for foreign data wrapper "mysql") commit97a913e31cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Nov 16 13:12:58 2014 +0100 cleanup: freshen up CREATE SERVER code * pass LEX_STRING's from the parser, don't ignore the length only to strlen later * init LEX::server_options only for SERVER commands, not for every statement * don't put temporary values into a global persistent memroot but really it's just scratching a surface commita50ddebb5cAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Dec 3 22:30:48 2014 -0500 MDEV-6593 : domain_id based replication filters Implementation for domain ID based filtering of replication events. commit7bf4f9f7f6Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Dec 3 21:33:34 2014 +0100 followup for MDEV-6996, update tests and results commit24a6b41348Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Dec 3 13:45:21 2014 +0200 Move page initialization to better place. commit316d8c7fc8Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Dec 3 11:58:33 2014 +0100 compiler warning commitec4137c62bMerge:1caee39307bafe529af7Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Dec 3 11:37:26 2014 +0100 Merge branch '10.1' into bb-10.1-merge commitbafe529af7Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Dec 3 11:41:48 2014 +0200 Fix Windows compiler error. commitd4aef382fdAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Dec 3 10:41:52 2014 +0200 Fix compiler failure on fallocate function and used flags. commit1caee39307Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Dec 2 22:25:53 2014 +0100 disable mroonga temporarily: see MDEV-7246 commit853077ad7eMerge:bf3b4a23f72b5db1d5bcAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Dec 2 22:25:16 2014 +0100 Merge branch '10.0' into bb-10.1-merge Conflicts: .bzrignore VERSION cmake/plugin.cmake debian/dist/Debian/control debian/dist/Ubuntu/control mysql-test/r/join_outer.result mysql-test/r/join_outer_jcl6.result mysql-test/r/null.result mysql-test/r/old-mode.result mysql-test/r/union.result mysql-test/t/join_outer.test mysql-test/t/null.test mysql-test/t/old-mode.test mysql-test/t/union.test packaging/rpm-oel/mysql.spec.in scripts/mysql_config.sh sql/ha_ndbcluster.cc sql/ha_ndbcluster_binlog.cc sql/ha_ndbcluster_cond.cc sql/item_cmpfunc.h sql/lock.cc sql/sql_select.cc sql/sql_show.cc sql/sql_update.cc sql/sql_yacc.yy storage/innobase/buf/buf0flu.cc storage/innobase/fil/fil0fil.cc storage/innobase/include/srv0srv.h storage/innobase/lock/lock0lock.cc storage/tokudb/CMakeLists.txt storage/xtradb/buf/buf0flu.cc storage/xtradb/fil/fil0fil.cc storage/xtradb/include/srv0srv.h storage/xtradb/lock/lock0lock.cc support-files/mysql.spec.sh commit01590005baAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Dec 2 19:25:58 2014 +0200 Fix buildbot valgrind errors on test innodb.innodb-page_compression_tables Problem was that temporal buffers allocated for page compression are not initialized and rest of the page that is actually writen was als not initialized after previous usage. commit3502d74121Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Tue Dec 2 10:59:44 2014 +0100 MDEV-7015: SET STATEMENT old_passwords has no effect Decision about algorihtm moved on prepare phase. Made possible to add mpore password algorithms. commit53ff66fe31Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Tue Dec 2 09:04:09 2014 +0100 MDEV-6996: SET STATEMENT default_week_format = .. has no effect Change constant with a system variable. commitd6e8816435Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Dec 2 10:35:28 2014 +0300 Make analyze_format_json.test work on case-insensitive FS. commitb3d930b39cMerge:8722b6de4d149e8a7b28Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Dec 2 02:26:55 2014 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit149e8a7b28Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Dec 2 02:26:25 2014 +0300 Update test results after fix for MDEV-7245 commit8722b6de4dAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Dec 2 02:14:17 2014 +0300 Code cleanup commitfc2871acbeAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Dec 2 01:58:22 2014 +0300 Update test results. commit0000695025Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Dec 2 01:40:10 2014 +0300 EXPLAIN FORMAT=JSON Add support for semi-join strategies: FirstMatch, DuplicateWeedout, LooseScan. commita35b05399eAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Dec 2 01:22:16 2014 +0300 EXPLAIN FORMAT=JSON: Do set usable_key_parts for key in the temp. table If we didn't do it, SJ-Materialization table would appear to EXPLAIN JSON code as having different keyparts than it actually has. This caused unpredictable content in "used_key_parts" commit5c5a8b1cc8Merge:753718c20154392f0a22Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Dec 2 00:32:31 2014 +0300 Merge ../10.1 into bb-10.1-explain-json commit54392f0a22Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Dec 2 00:18:57 2014 +0300 MDEV-7245: Incorrect display of subquery cache in union.result - Do set nest_level and nest_level_base for fake_select_lex objects. commit753718c201Author: Sergei Petrunia <psergey@askmonty.org> Date: Mon Dec 1 21:35:31 2014 +0300 EXPLAIN FORMAT=JSON: support SJ-Materialization - Switch Explain data structure from "flat" representation of SJ-Materialization into nested one. - Update functions that print tabular output to operate on the nested structure. - Add function to generate JSON output. commitbf3b4a23f7Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 1 16:43:09 2014 +0100 fix mysqld_safe to work local function variable was overwriting the global one. also remove unused variable expansion. commitdbbe831096Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 1 15:25:07 2014 +0100 don't skip wsrep position recovery silently control scripts (mysqld_safe for example) want to know whether a recovery was successful or not. total silence is too suspicious to be trusted. commitaa4ad1c6b0Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 1 13:43:17 2014 +0100 update result files commitbb070f9367Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Dec 1 10:31:31 2014 +0100 MDEV-7188 main.signal_demo3 and sys_vars.max_sp_recursion_depth_func fail in biuldbot on labrador with Thread stack overrun reduce stack requirememnts for CALL by just a little bit commit2b40a389a5Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Nov 30 21:13:41 2014 -0500 MDEV-4412 : SLOW QUERY LOG - add affected rows (UPDATE / DELETE) in slow query log Added Rows_affected to slow query log & mysql.slow_log table. commitb16b072186Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Nov 30 09:26:32 2014 +0100 Make test results stable. (just like in the test below) commit2e728c7069Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Nov 30 08:32:36 2014 +0100 rdiff not needed anymore commit3e792e6cbcAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Nov 30 01:05:34 2014 -0500 MDEV-4018 : Feature Request: microseconds in GET_LOCK() Updated MDL_context's lock methods to accept double precision lock_wait_timeout. commit5298e21c32Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Nov 30 00:12:45 2014 -0500 MDEV-6961: mysqld should terminate when started with --wsrep-recover Fixed the condition to make sure mysqld process terminates when started with wsrep-recover. commitf7708d6830Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Nov 29 22:29:03 2014 +0100 fixes for --embedded commitc46eadb2b3Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Nov 29 03:28:46 2014 +0300 EXPLAIN FORMAT=JSON: support EXPLAIN FORMAT=JSON INSERT ... commite235bb864dAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sat Nov 29 03:07:24 2014 +0300 ANALYZE FORMAT=JSON: better output and tests - Print r_loops - Always print r_* members. Print NULL values if no scans took place - Added testcases. commit0b5d989c89Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Nov 29 01:08:18 2014 +0300 EXPLAIN FORMAT=JSON: Add support for non-merged semi-joins commit2ac3b39e68Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Nov 28 22:23:29 2014 +0300 EXPLAIN FORMAT=JSON: support derived tables commit3a5e080d4dAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Fri Nov 28 16:46:05 2014 +0300 Make explain_json.test pass on case-insensitive FS. commitd5fbfb9a93Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Nov 28 02:36:31 2014 +0300 EXPLAIN FORMAT=JSON: Add support for single-table UPDATE/DELETE. commitd0d6284cabAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Fri Nov 28 00:29:37 2014 +0400 MDEV-4045 Missing OGC Spatial functions. Missing GIS functions added: IsRing() PointOnSurface PointOnSurface Relate Distance Intersection ConvexHull Other old OpenGis standard inconsistencies fixed. commit461dbd80d2Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Nov 27 23:10:44 2014 +0300 EXPLAIN FORMAT=JSON: support join buffering - Basic support for JOIN buffering - The output is not polished but catches the main point: tab->select_cond and tab->cache_select->cond are printed separately. - Hash join support is poor still. - Also fixed identation in JOIN_TAB::save_explain_data commit7b55b67de5Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Nov 27 20:11:14 2014 +0200 MDEV-7228: innodb.innodb-page_compression_tables, innodb.innodb-page_compression_zip, innodb.innodb_stats_create_on_corrupted fail with embedded server Problem is that tests restart the server and "shutdown_server" looks for pid file # which is not there with embedded mode. Fix tests so that they are not run with embedded mode. commit37c444e1a0Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Nov 27 19:32:48 2014 +0300 EXPLAIN FORMAT=JSON: further development Writing JSON: - Fix a bug in Single_line_formatting_helper - Add Json_writer_nesting_guard - safety class EXPLAIN JSON support - Add basic subquery support - Add tests for UNION/UNION ALL. commit3d5f97fd70Merge:55e99b29333c5ce8a0a3Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Nov 27 00:51:54 2014 +0300 Merge ../10.1-explain-json-r4 into 10.1 commit55e99b2933Author: Alexander Barkov <bar@mariadb.org> Date: Wed Nov 26 13:28:46 2014 +0400 MDEV-7162 main.mysqld--help fails in buildbot on Windows: commit98a78c460fAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Nov 25 09:11:48 2014 +0200 MDEV-7181: innodb.innodb_defrag_concurrent fails in buildbot Problem was that test tried to calculate number of pages on buffer pool and operations done to them. This is not realible way on buildbot. commitafe6d88d78Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Nov 24 21:29:12 2014 +0200 MDEV-7167: innodb.innodb_bug12902967 fails in buildbot on Windows Problem is that there is additional error message from function that is not really needed now. commit96b031b563Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Nov 24 20:27:43 2014 +0200 MDEV-7169: innodb.innodb_bug14147491 fails in buildbot on Windows Problem is that test could open Microsoft C++ Client Debugger windows with abort exceptin. Lets not try to test this on windows. commit8ba3585b47Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Nov 24 19:42:39 2014 +0200 MDEV-7168: Tests innodb.innodb_stats_create_table innodb.innodb_stats_drop_locked fail and innodb.innodb_stats_fetch_nonexistent fails in buildbot on Windows Analysis: Problem is that innodb_stats_create_on_corrupted test renames mysql.innodb.index_stats and all the rest are dependend on this table. Fix: After rename back to original, restart mysqld to make sure that table is correct. commit1ac12df0cbAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Nov 24 15:20:23 2014 +0200 MDEV-7164: innodb.innodb-alter-table-disk-full fails in buildbot on Windows Analysis: Test case uses Linux specific error codes. Fix: Can't run test case with Windows currently because requires to inject error to system. commitc0a00a2dcfAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon Nov 24 12:25:56 2014 +0400 MDEV-7171 funcs_1.is_tables_is and main.information_schema-big fail in buildbot. test results updated with the new GIS-related IS tables. commit1a05bb4010Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Nov 24 10:01:49 2014 +0200 MDEV-7166: innodb.innodb-page_compression_zip fails in buildbot Analysis: If innodb_use_trim is not enabled or system does not support fallocate to make persistent trim, we should always write full page not only partial pages. commitdeffb95bc2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Nov 23 09:55:57 2014 -0500 MDEV-7161: Build failure in buildbot on work-amd64-valgrind Fix for embedded build failure. Also added wsrep_info plugin library to server debian package. commit369c02674cAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Nov 22 14:33:51 2014 -0500 MDEV-7053: WSREP_STATUS & WSREP_MEMBERSHIP I_S tables wsrep_info INFORMATION_SCHEMA plugin to provide WSREP_STATUS and WSREP_MEMBERSHIP tables. commit3c5ce8a0a3Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Nov 21 21:44:06 2014 +0300 Make testsuite to pass - Drop all tables in explain_json.test - Tabular form should print ref='' when type='fulltext' (another peculiarity of the traditional EXPLAIN format) - String_list::append_str should allocate memory for \0, too - Some temporary code for EXPLAIN JSON and join buffering. commit305dd8e5fbAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Fri Nov 21 20:45:18 2014 +0300 Better comments commit1f3724a583Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Nov 20 21:09:57 2014 +0300 Better comments commitcbc318fcf3Author: Alexander Barkov <bar@mariadb.org> Date: Thu Nov 20 21:29:11 2014 +0400 Removing some duplicate code: deriving Item_func_opt_neg from Item_bool_func. commit52b3d95f2aAuthor: Alexander Barkov <bar@mariadb.org> Date: Thu Nov 20 12:56:47 2014 +0400 Deriving Item_bool_func from Item_bool_func2. commit969f491845Author: Alexander Barkov <bar@mariadb.org> Date: Thu Nov 20 11:59:00 2014 +0400 MDEV-7005 NULLIF does not work as documented MDEV-7146 NULLIF returns unexpected result with a YEAR field commita4cdd20d49Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Nov 19 13:33:37 2014 -0500 MDEV-7131: [PATCH] wsrep_guess_ip doesn't compile on OpenBSD Extend platform check to include OpenBSD. (Contributed by: Jonathan Matthew) commit9f4abde608Author: Alexander Barkov <bar@mariadb.org> Date: Wed Nov 19 21:34:51 2014 +0400 Sharing similar code between Item_func_ifnull and Item_func_if commitb432c7bc42Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Nov 19 14:58:48 2014 +0200 MDEV-7133: InnoDB: Assertion failure in dict_tf_is_valid Problem is that page compressed tables currently require atomic_blobs and that feature is not availabe currently for row_format=redundant. Fix: Disallow page compressed create option if table row_format=redundant. commit6f65d2d114Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Nov 17 11:56:03 2014 -0500 MDEV-6924 : Server crashed on CREATE TABLE ... SELECT Do not allow server to start if binlog_format is set to a format other than ROW. Also restrict the change of GLOBAL/SESSION binlog_format value at runtime. commitc68e73b53fAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Nov 17 09:55:53 2014 -0500 MDEV-6924 : Server crashed on CREATE TABLE ... SELECT Do not allow server to start if binlog_format is set to a format other than ROW. Also restrict the change of GLOBAL/SESSION binlog_format value at runtime. commit7bf391c205Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Nov 17 09:55:55 2014 +0200 MDEV-7108: Make long semaphore wait timeout configurable Merge Facebook commitcd063ab930authored by Peng Tian from https://github.com/facebook/mysql-5.6 Introduced a new configuration variable innodb_fatal_semaphore_wait_threshold, it makes the fatal semaphore timeout configurable. Modified original commit so that no MariaDB server files are changed, instead introduced a new InnoDB/XtraDB configuration variable. Its default/min/max vlaues are 600/1/2^32-1 in seconds (it was hardcoded as 600, now its default value is 600, so the default behavior of this diff should be no change). commitea83226872Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Nov 12 15:37:52 2014 +0200 MDEV-7088: Query stats for compression based on TRIM size Analysis: Status variables were missing from innodb_status_variables array. Fix: Add missing status variables to the array. commit1827d9e6d1Author: Oleksandr Byelkin <sanja@mariadb.com> Date: Fri Oct 24 10:13:08 2014 +0200 MDEV-5231: Per query variables from Percona Server (rewritten) commita03dd94be8Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Nov 6 13:17:11 2014 +0200 MDEV-6936: Buffer pool list scan optimization Merged Facebook commit 617aef9f911d825e9053f3d611d0389e02031225 authored by Inaam Rana to InnoDB storage engine (not XtraDB) from https://github.com/facebook/mysql-5.6 WL#7047 - Optimize buffer pool list scans and related batch processing Reduce excessive scanning of pages when doing flush list batches. The fix is to introduce the concept of "Hazard Pointer", this reduces the time complexity of the scan from O(n*n) to O. The concept of hazard pointer is reversed in this work. Academically hazard pointer is a pointer that the thread working on it will declar such and as long as that thread is not done no other thread is allowe do anything with it. In this WL we declare the pointer as a hazard pointer and then if any thread attempts to work on it, it is allowed to do so but it has to a the hazard pointer to the next valid value. We use hazard pointer sol reverse traversal of lists within a buffer pool instance. Add an event to control the background flush thread. The background f thread wait has been converted to an os event timed wait so that it c signalled by threads that want to kick start a background flush when buffer pool is running low on free/dirty pages. commit84de277099Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Nov 5 09:18:47 2014 +0200 Fix error message output if posix_fallocate (trim) is not successfull. commit8b1b62dd8fAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Nov 4 15:41:39 2014 +0200 Fix compiler failure on Windows. commit8e27845bb0Author: Alexander Barkov <bar@mariadb.org> Date: Tue Nov 4 15:02:49 2014 +0400 A follow up fix for MDEV-5528 (forgot to do "git add" for two files in the previous commit for MDEV-5528) commit251fa7ffc5Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Nov 4 12:26:48 2014 +0200 Fix error on trim operation alligment. Furthermore, make sure that we do not return simulated out of file space on read operation, that would cause crash. commit43f185e171Author: Alexander Barkov <bar@mariadb.org> Date: Mon Nov 3 21:45:06 2014 +0400 MDEV-5528 Command line variable to choose MariaDB-5.3 vs MySQL-5.6 temporal data formats commita245543bc8Author: Alexander Barkov <bar@mariadb.org> Date: Mon Nov 3 19:05:16 2014 +0400 MDEV-6649 Different warnings for TIME and TIME(N) when @@old_mode=zero_date_time_cast Merging from 10.0 (pre-requisite for MDEV-5528) commitcb37c55768Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Nov 3 11:18:52 2014 +0200 MDEV-6929: Port Facebook Prefix Index Queries Optimization Merge Facebook commit 154c579b828a60722a7d9477fc61868c07453d08 and e8f0052f9b112dc786bf9b957ed5b16a5749f7fd authored by Steaphan Greene from https://github.com/facebook/mysql-5.6 Optimize prefix index queries to skip cluster index lookup when possible. Currently InnoDB will always fetch the clustered index (primary key index) for all prefix columns in an index, even when the value of a particular record is smaller than the prefix length. This change optimizes that case to use the record from the secondary index and avoid the extra lookup. Also adds two status vars that track how effective this is: innodb_secondary_index_triggered_cluster_reads: Times secondary index lookup triggered cluster lookup. innodb_secondary_index_triggered_cluster_reads_avoided: Times prefix optimization avoided triggering cluster lookup. commit3c2c036248Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Oct 29 22:31:19 2014 -0400 MDEV-6939 : Dots in file names of configuration files Use fn_ext2() to get the file extension from last occurrence of FN_EXTCHAR ('.') instead. commit822dc6f5dfAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Oct 29 22:28:14 2014 -0400 mysys/mf_fn_ext.c: typos & indents commit2bf3e416feAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Oct 29 13:49:12 2014 +0200 MDEV-6932: Enable Lazy Flushing Merge Facebook commit 4f3e0343fd2ac3fc7311d0ec9739a8f668274f0d authored by Steaphan Greene from https://github.com/facebook/mysql-5.6 Adds innodb_idle_flush_pct to enable tuning of the page flushing rate when the system is relatively idle. We care about this, since doing extra unnecessary flash writes shortens the lifespan of the flash. commit58888e2c08Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Oct 29 10:42:27 2014 +0200 MDEV-6935: Change the default value for innodb_log_compressed_pages to false Merge Facebook commit ca40b4417fd224a68de6636b58c92f133703fc68 authored by Steaphan Greene from https://github.com/facebook/mysql-5.6 Change the default value for innodb_log_compressed_pages to false Logging these pages is a waste. We don't want this to be enabled. One caution here: If the zlib version used by innodb is changed, but the running version is still the previous version, and the running version crashes, it is possible crash recovery could fail. When crash recovery uses a zlib version at all different than the version used by the crashed instance, it is possible that a redone compression could fail, where the original did not, because the new zlib version compresses the same data to a slightly larger size. Because of the nature of compression, this is even possible when upgrading to a version of zlib which actually peforms overall better compression than the previous version. If this happens, mysql will fail to recover, since a page split can not be safely triggered during crash recovery. So, either the exact zlib version must be controlled between builds, or these rare recovery failures must be accepted. The cost of logging these pages is quite high, so we consider this limitation to be worthwhile. This failure scenario can not happen if there was a clean shutdown. This is only relevant to restarting crashed instances, or starting an instance built via a hot backup too (XtraBackup). commit2d2d11f02bAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Oct 29 08:39:48 2014 +0200 MDEV-6968: CREATE TABLE crashes with InnoDB plugin Analysis: fil_extend_space_to_desired_size() does not provide file node to os_aio(). This failed on Windows only because on Windows we do not use posix_fallocate() to extend file space. Fix: Add file node to os_aio() function call and make sure that we do not use NULL pointer at os_aio_array_reserve_slot(). Additionally, make sure that we do not use 0 as file_block_size (512 is the minimum). commitb96697d286Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Oct 28 14:49:31 2014 +0400 MDEV-6648: InnoDB: Add support for 4K sector size if supported New generation hard drives, SSDs and NVM devices support 4K sector size. Supported sector size can be found using fstatvfs() or GetDiskFreeSpace() functions. commite48fbd28d2Author: Elena Stepanova <elenst@montyprogram.com> Date: Tue Oct 28 14:49:31 2014 +0400 Increase the version number commit5ff6f6f883Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Oct 27 21:19:12 2014 -0400 Added SST scripts to the server package. commit9646f946e9Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Oct 27 16:34:53 2014 +0200 MDEV-6759: innodb valgrind failures Fix failure seen on dict_foreign_remove_partial. commit0a16fe4ec9Author: Alexey Botchkov <holyfoot@montyprogram.com> Date: Fri Oct 24 17:12:03 2014 +0500 GIS-related test results updated. commitcc656e4d85Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Oct 22 16:14:25 2014 +0300 Enhance row-merge sort progress logging. commitc3db445956Author: Alexey Botchkov <holyfoot@montyprogram.com> Date: Tue Sep 2 11:31:26 2014 +0500 MDEV-12 OpenGIS: create required tables: GeometryColumns, related views. GEOMETRY_COLUMNS and SPATIAL_REF_SYS tables added to the INFORMATION_SCHEMA. commitc1f5f61c9bAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Oct 20 15:53:07 2014 +0300 Make sure that information schema knows also page compressed page type and that we decompress fist page if it is page compressed before really accessing it. commitd24919969aAuthor: Igor Babaev <igor@askmonty.org> Date: Sun Oct 19 09:50:50 2014 -0700 Correction for the fix of the bug mdev-6874. commitec89abfef4Merge:aa0fd5ca53a4d1783aaeAuthor: Igor Babaev <igor@askmonty.org> Date: Fri Oct 17 14:06:54 2014 -0700 Merge branch '10.1' of ../10.1-mdev334 into 10.1 commita4d1783aaeAuthor: Igor Babaev <igor@askmonty.org> Date: Fri Oct 17 12:59:28 2014 -0700 Fixed bug mdev-6874. The method subselect_union_engine::no_rows() must take into account the fact that now unit->fake_select_lex is NULL for for select_union_direct objects. commitaa0fd5ca53Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Oct 17 23:24:00 2014 +0400 MDEV-6388: ANALYZE $stmt output in the slow query log Add testcase. commit47ced65566Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Oct 17 22:47:06 2014 +0400 MDEV-6388: ANALYZE $stmt output in the slow query log Make log_slow_verbosity=explain actually print ANALYZE (that is, EXPLAIN otuput with two extra columns). commitd3bdc142b4Merge:d44dd54bc81e79138459Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Oct 17 14:21:40 2014 +0400 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commitd44dd54bc8Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Oct 17 14:18:10 2014 +0400 MDEV-6400: "ANALYZE SELECT ... INTO @var" doesn't set @var Make ANALYZE work for - ANALYZE SELECT ... INTO @var - ANALYZE INSERT SELECT ...; - ANALYZE SELECT .. INTO OUTFILE commit1e79138459Merge:7aed44196342f359f982Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Oct 16 00:30:29 2014 +0200 Merge branch 'bb-10.1-merge' into 10.1 commit42f359f982Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Oct 15 22:42:08 2014 +0200 after-merge fixes commitbe1c17669cMerge:041e03e251fec5ab5a56Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Oct 15 17:21:59 2014 +0400 Merge ../10.1 into bb-10.1-explain-json commitf62c12b405Merge:f947f73b2bf1afc003eeAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Oct 15 12:59:13 2014 +0200 Merge 10.0.14 into 10.1 commitcc9d1bd8dcAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Oct 14 18:04:04 2014 -0400 empty patch commit7aed441963Merge:e813f9b9b33c4bb0e872Author: Igor Babaev <igor@askmonty.org> Date: Tue Oct 14 09:41:25 2014 -0700 Merge branch '10.1' of ../10.1-mdev334 into 10.1 commit3c4bb0e872Author: Igor Babaev <igor@askmonty.org> Date: Tue Oct 14 09:36:50 2014 -0700 MDEV-334: Backport of UNION ALL optimization from mysql-5.7. Although the original code of mysql-5.7 was adjusted to the current MariaDB code the main ideas of the optimization were preserved. commite813f9b9b3Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Oct 14 14:58:35 2014 +0400 MDEV-6693 - Atomic operations with explicit memory barrier Added API for atomic operations with explicit memory barrier. Only gcc atomic builtins are currently supported. If they're unavailable, fall back to atomic operations with implicit full memory barrier. commitf947f73b2bMerge:fec5ab5a56e3ac16d721Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Oct 13 21:47:56 2014 +0200 Merge branch '10.1' of https://github.com/ottok/server into ottok-10.1 commitfec5ab5a56Author: Sergei Petrunia <psergey@askmonty.org> Date: Sun Oct 12 20:48:07 2014 +0400 MDEV-6396: ANALYZE INSERT/REPLACE is accepted, but does not produce a plan Add ANALYZE STMT handling into INSERT command. commit5c33632b50Author: Elena Stepanova <elenst@montyprogram.com> Date: Sun Oct 12 14:26:27 2014 +0400 engine_condition_pushdown has been deprecated commit698fcc5cd2Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Oct 11 16:00:52 2014 +0200 fix unstable test results commit2f294dbcd8Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Oct 11 10:18:55 2014 +0200 fix a big test commit5ca5f92a1dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Oct 8 09:40:39 2014 +0200 MDEV-5749 Please add a .pc file to MariaDB for easy use via pkg-config commit7f5e51b940Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Aug 21 18:11:46 2014 +0200 MDEV-34 delete storage/ndb and sql/*ndb* (and collateral changes) remove: * NDB from everywhere * IM from mtr-v1 * packaging/rpm-oel and packaging/rpm-uln * few unused spec files * plug.in file * .bzrignore commit57dd1f6f3fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Sep 15 13:25:53 2014 +0200 MDEV-6108 update userstat feature from percona server TOTAL_SSL_CONNECTIONS columns in CLIENT_STATISTICS and USER_STATISTICS commit43450fcc47Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 25 18:28:40 2014 +0200 rename status_user.test -> userstat.test commit3182938d22Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 25 19:08:55 2014 +0200 move userstat tables to a plugin commitdb8af31831Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 25 19:08:01 2014 +0200 SHOW and FLUSH for I_S tables. Extend existing plugins to support * SHOW QUERY_RESPONSE_TIME * FLUSH QUERY_RESPONSE_TIME * SHOW LOCALE move userstat tables to use the new API instead of hand-coded syntax commit932eaf31e9Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 25 14:22:22 2014 +0200 cleanup: sort struct members by size commit3f7cc414feAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 25 09:51:46 2014 +0200 cleanup: remove dead code commit534cbc1f2aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 25 19:05:38 2014 +0200 cleanup: my_init_dynamic_array2 -> init_dynamic_array2 commit236556df3fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 4 14:38:29 2014 +0200 fix TokuDB not to build ft-index library when disabled commite24c1c0278Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 4 14:37:43 2014 +0200 cleanup: remove unnecessary hack from federated/CMakeLists.txt commitc006105bbfAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Oct 9 21:43:48 2014 +0200 make sysvars_* tests to work on 32-bit too commit41756a30d2Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Oct 11 10:19:56 2014 +0200 portability fixes for sysvar_* tests commit2a4e8813f6Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Sep 3 15:16:43 2014 +0200 GLOBAL_VALUE_ORIGIN=AUTO commit3fa8c279d5Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Sep 1 20:29:58 2014 +0200 INFORMATION_SCHEMA.SYSTEM_VARIABLES.GLOBAL_VALUE_ORIGIN commit513f5840f8Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Sep 3 20:16:51 2014 +0200 MDEV-6138 show sysvar's help in I_S tables INFORMATION_SCHEMA.SYSTEM_VARIABLES commitbeb2422ad8Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Sep 3 20:16:13 2014 +0200 cleanup: @@mutex_deadlock_detector -> @@debug_mutex_deadlock_detector commit15623fd7bbAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Sep 1 14:46:20 2014 +0200 mysqltest bug: replace_regex /^foo/bar/ didn't work commita7b2c95a40Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Sep 3 20:05:51 2014 +0200 bugs in sys_var::val_* code 1. @@boolean_var differs from SHOW VARIABLES 2. @@str_var ignored variable charset (which is wrong for path variables that use filesystem charset) 3. @@signed_int_var in the string context was printed as unsigned commitb969a69021Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 31 13:39:05 2014 +0200 cleanup: simplify sys_var::val* methods, introduce val_str_nolock() commita4e7d339afAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 31 13:21:06 2014 +0200 cleanup: VARIABLE_VALUE column should be NOT NULL it can never be set to NULL, so it should not use MY_I_S_MAYBE_NULL flag either commit5389300f49Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Aug 29 13:59:08 2014 +0200 cleanup: option_type -> scope commit99677cc510Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Aug 28 20:07:27 2014 +0200 cleanup: move safe_str*() from sql_acl.cc to m_string.h commit9bd5d54c11Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Aug 28 09:33:00 2014 +0200 correct fix for the old Bug#39955 (warnings in I_S.VARIABLES) old fix only generated a warning for the *first* row in the output commitd281faf992Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Aug 27 23:54:51 2014 +0200 cleanup: sql_show.cc commitd508ef7898Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Aug 28 09:23:15 2014 +0200 cleanup: more 'const' qualifiers commit9ccaa62dd5Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Aug 27 23:28:59 2014 +0200 sys_var_pluginvar: populate my_option and misc cleanup commit28ebc2a724Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Aug 27 20:32:32 2014 +0200 cleanup: sysvar, only one common check_update_type() commit051c132635Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Aug 27 16:05:54 2014 +0200 cleanup: sysvar, SHOW_VALUE_IN_HELP->GETOPT_ONLY_HELP replace flag SHOW_VALUE_IN_HELP (that's not really an independendent flag, as it should only be used for NO_CMD_LINE sysvars) with a special getopt.id type. commitdb2399b0c1Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Aug 27 10:23:20 2014 +0200 small cleanup commit8f15bf9d0cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Aug 27 09:40:52 2014 +0200 cleanup: remove hidden I_S.VARIABLES and I_S.STATUS tables their only purpose was to distinguish between SHOW and SELECT and there are cleaner ways of doing it. commit2fae1b576dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Sep 8 09:39:43 2014 +0200 prefer to use new flag name when possible commitab34aecff3Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 25 23:13:37 2014 +0200 MDEV-6513 deprecate engine_condition_pushdown value of the @@optimizer_switch * ignore the OPTIMIZER_SWITCH_ENGINE_CONDITION_PUSHDOWN bit * issue a deprecation warning on 'engine_condition_pushdown=on' * remove unused remains of the old pre-5.5 engine_condition_pushdown variable commit686f102eb9Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Aug 20 21:36:23 2014 +0200 MDEV-6609 SQL inside an anonymous block is executed with wrong SQL_MODE MDEV-6606 Server crashes in String::append on selecting sql_mode inside anonymous block commit30ea6ddda0Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Aug 20 20:57:32 2014 +0200 MDEV-6603 SBR failure upon executing a prepared statement with input placeholder under anonymous block Normally, Prepared_statement object rewrites the query on execution to replace ?-placeholders with values. The rewritten query may be written to logs (including binlog) or stored in the query cache. But for compound statements, the whole block is prepared and executed, while contained statements are logged individually. So it doesn't make sense to rewrite the original statement block. Instead, we need to rewrite every contained statement. SP is already doing it to replace SP variables with values. Let it rewrite PS parameters too in the same loop. commit013f0f6cecAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Aug 20 17:25:44 2014 +0200 cleanup: query rewrites for Item_param and Item_splocal Fix query rewrites in PS code - it was memcpy-ing the same query tail many times. Instead use the same logic as in SP code, copy query pieces into the destination buffer. Extract this logic into a separate class Rewritable_query_parameter with Item_param and Item_splocal inheriting from it. Create a helper class Copy_query_with_rewrite that incapsulates the query rewriting logic, use it in SP and PS. commitd7c1e0ebbdAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Aug 18 21:36:11 2014 +0200 MDEV-5317 Compound statement / anonymous blocks originally based on the patch by Antony T Curtis commita99af484cdAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Aug 13 21:04:05 2014 +0200 MDEV-5317 out parameters in PREPARE "SELECT ... INTO" originally based on the patch by Antony T Curtis commit278f7fdd7eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Aug 19 21:06:20 2014 +0200 cleanup: get rid of (Item_splocal*)item downcast commit932100c813Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 17 20:36:40 2014 +0200 cleanup sql_yacc.yy: remove redundant ev_sql_stmt_inner rule commit60475b8f27Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 17 20:35:39 2014 +0200 cleanup sql_yacc.yy: rules for the CASE ... END CASE statement commit319f206d01Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 17 13:28:27 2014 +0200 cleanup sql_yacc.yy: s/IF/IF_SYM/ commit09c1af9364Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 17 20:54:48 2014 +0200 cleanup sql_yacc.yy: reduce code duplication in rules for BEGIN...END with and without label commitd49e11834aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 17 20:51:59 2014 +0200 cleanup sql_yacc.yy: factor out duplicate code in PROCEDURE/FUNCTION/TRIGGER/EVENT grammar commit352723cd90Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 17 20:50:53 2014 +0200 cleanup sql_yacc.yy: rename rules for loops with and without label to follow BEGIN...END rule naming commit45907bec50Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 17 20:48:48 2014 +0200 cleanup sql_yacc.yy: remove duplicate code in opt_union rule commit71485e7c7bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 17 20:46:46 2014 +0200 cleanup sql_yacc: introduce opt_not rule, combine otherwise duplicate rules commitc655609d1eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Aug 17 20:37:49 2014 +0200 cleanup sql_yacc.yy: s/YYABORT/MYSQL_YYABORT/ commitfdf32f578cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Aug 16 08:47:29 2014 +0200 cleanup: param_marker rule in the parser preserve the Item_param type of the param_marker in the parser, don't upcast cast it to Item commit1e0a11a3c7Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Aug 16 08:46:27 2014 +0200 cleanup: class my_var * split my_var class in three - base my_var and two descencants, move properties into descendants, remove if(), create a virtual method instead * factor out the common code in the select_var_ident parser rule commit624888b4e6Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Aug 16 08:17:29 2014 +0200 cleanup: inherit from Sql_alloc instead of copy-pasting its methods into a new class commit43d1f0b6b9Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Aug 15 17:35:07 2014 +0200 cleanup: rename List<> methods prepand() -> prepend() concat() -> append() commitaabb33cc54Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Aug 16 08:17:08 2014 +0200 cleanup: public Item_param::get_settable_routine_parameter() make Item_param::get_settable_routine_parameter() public, because it's public in the parent Item class and all other Item descendants too commite8fb24664eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Aug 16 08:16:44 2014 +0200 cleanup: use null_lex_str where appropriate commit6e05aabb9bAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Aug 16 08:16:18 2014 +0200 cleanup: case SQLCOM_CALL move SP invocation code out of the huge switch in mysql_execute_command commit3d9aa6c467Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Oct 8 18:49:34 2014 +0200 Plugin API: increase SHOW_VAR_FUNC_BUFF_SIZE for 64-bit CPUs instead of having it 1K everywhere, make it 1K on 32-bit and 2K on 64-bit. As the latter has larger pointers (and larger sizeof(SHOW_VAR), it needs a larger buffer to store the same amount of SHOW_VARs commit03ec3511a8Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Oct 8 18:47:16 2014 +0200 cleanup: galera misc cleanups also disable galera-specific output in mysql_tzinfo_to_sql, it'll be enabled later. commit8596b70f96Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Oct 7 20:28:33 2014 +0200 cleanup: simplify the usage of WSREP_FORMAT macro commitd103e359f8Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Oct 8 08:47:22 2014 +0200 followup changes to timeout commit * fix debian patch * update the copyright * rename include guards to follow conventions * restore incorectly deleted test file, add clarification in a comment * capitalize the first letter of the status variable commite6152f9293Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Oct 10 21:30:23 2014 +0400 MDEV-6702: analyze_stmt test fails in --embedded 10.1 Provide Protocol_discard::storeXXX functions for all kinds of objects that could be stored. Failure to so would caused crashes in embedded server which attempted to collect the stored info. This also reduces the amount of copy operations for non-embedded case. commit988f3fbed9Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Oct 10 14:40:21 2014 +0400 MDEV-6846: Test tokudb_mariadb.mdev6657 fails in buildbot Update the testcase so it is still meaningful when fix for MDEV-6657 is present in the code. commit542968cf0aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Oct 9 18:28:14 2014 -0400 bzr merge -r4015..4026 codership/5.5 commit068fb8569fMerge:59277a7d83dbda20caffAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Oct 9 17:25:08 2014 -0400 bzr merge -rtag:mariadb-5.5.40 maria/5.5 commit7dd74fa3a2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Oct 8 13:30:45 2014 -0400 MDEV-6481: Yum Upgrade on CentOS 6.5 causes instant crash of MariaDB/Galera mysqld crashes during startup when its started with --wsrep-recover (mysqld_safe.sh). The problem was that during server startup "wsrep" handle is not initialized for --wsrep-recover and since the condition to register wsrep hton depended only on 'wsrep_on' global/session variables (WSREP(thd) macro), it can eventually get registered and calls to wsrep handle's functions (commit, rollback, etc.) can be made (SIGSEGV!). Fixed by adding a check for "wsrep" pointer in WSREP(thd) macro (added by lp:1367173). Additionally, a check for WSREP(thd) (instead of checking the availability of wsrep provider) has been added before invoking wsrep handle's commit & rollback functions. commit4439d1febfMerge:4af97bc0e3f7c57b4a36Author: Monty <monty@mariadb.org> Date: Tue Oct 7 11:40:10 2014 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 Merge with main branch commit4af97bc0e3Author: Monty <monty@mariadb.org> Date: Tue Oct 7 11:39:42 2014 +0300 Removed files that had been accidentally committed Removed compiler warnings commitcc8aed3eb7Author: Monty <monty@mariadb.org> Date: Tue Oct 7 11:37:36 2014 +0300 MDEV 4427: query timeouts Added MAX_STATEMENT_TIME user variable to automaticly kill queries after a given time limit has expired. - Added timer functions based on pthread_cond_timedwait - Added kill_handlerton() to signal storage engines about kill/timeout - Added support for GRANT ... MAX_STATEMENT_TIME=# - Copy max_statement_time to current user, if stored in mysql.user - Added status variable max_statement_time_exceeded - Added KILL_TIMEOUT - Removed digest hash from performance schema tests as they change all the time. - Updated test results that changed because of the new user variables or new fields in mysql.user This functionallity is inspired by work done by Davi Arnaut at twitter. Test case is copied from Davi's work. Documentation can be found at https://kb.askmonty.org/en/how-to-limittimeout-queries/ mysql-test/r/mysqld--help.result: Updated for new help message mysql-test/suite/perfschema/r/all_instances.result: Added new mutex mysql-test/suite/sys_vars/r/max_statement_time_basic.result: Added testing of max_statement_time mysql-test/suite/sys_vars/t/max_statement_time_basic.test: Added testing of max_statement_time mysql-test/t/max_statement_time.test: Added testing of max_statement_time mysys/CMakeLists.txt: Added thr_timer mysys/my_init.c: mysys/mysys_priv.h: Added new mutex and condition variables Added new mutex and condition variables mysys/thr_timer.c: Added timer functions based on pthread_cond_timedwait() This can be compiled with HAVE_TIMER_CREATE to benchmark agains timer_create()/timer_settime() sql/lex.h: Added MAX_STATEMENT_TIME sql/log_event.cc: Safety fix (timeout should be threated as an interrupted query) sql/mysqld.cc: Added support for timers Added status variable max_statement_time_exceeded sql/share/errmsg-utf8.txt: Added ER_QUERY_TIMEOUT sql/signal_handler.cc: Added support for KILL_TIMEOUT sql/sql_acl.cc: Added support for GRANT ... MAX_STATEMENT_TIME=# Copy max_statement_time to current user sql/sql_class.cc: Added timer functionality to THD. Added thd_kill_timeout() sql/sql_class.h: Added timer functionality to THD. Added KILL_TIMEOUT Added max_statement_time variable in similar manner as long_query_time was done. sql/sql_connect.cc: Added handling of max_statement_time_exceeded sql/sql_parse.cc: Added starting and stopping timers for queries. sql/sql_show.cc: Added max_statement_time_exceeded for user/connects status in MariaDB 10.0 sql/sql_yacc.yy: Added support for GRANT ... MAX_STATEMENT_TIME=# syntax, to be enabled in 10.0 sql/structs.h: Added max_statement_time user resource sql/sys_vars.cc: Added max_statement_time variables mysql-test/suite/roles/create_and_drop_role_invalid_user_table.test Removed test as we require all fields in mysql.user table. scripts/mysql_system_tables.sql scripts/mysql_system_tables_data.sql scripts/mysql_system_tables_fix.sql Updated mysql.user with new max_statement_time field commitf7c57b4a36Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Oct 6 15:26:09 2014 -0400 MDEV-6667: Merged fix from maria-10.0-galera. commit1a7d17311cMerge:61d8b4a29b605b48d3e3Author: Sergei Petrunia <psergey@askmonty.org> Date: Mon Oct 6 12:21:53 2014 +0400 Merge ../10.1-orderby-fixes into 10.1 commit61d8b4a29bAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Sat Oct 4 13:59:07 2014 -0400 MDEV-6833: SIGSEGV on shutdown with non-default wsrep_slave_threads thd->variables' table_plugin & tmp_table_plugin should be set to NULL for wsrep system threads. Also made a minor change to skip checking of wsrep options if wsrep_on is not set. commitc768af75b7Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Sat Oct 4 13:53:33 2014 -0400 Minor modifications - Simplified test cases in wsrep.variables - Fixed a condition in wsrep_check_opts.cc - Fixed an "unbound variable" in wsrep_sst_rsync commitb197066ca0Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Oct 3 21:22:41 2014 -0400 MDEV-6807: InnoDB: Assertion failure in file lock0lock.cc (lock != ctx->wait_lock) Merged patch for lp:1364840. commit7474e7baa0Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Oct 2 21:01:57 2014 +0300 MDEV-6807: InnoDB: Assertion failure in file lock0lock.cc (lock != ctx->wait_lock) References: lp:1364840 lp:1280896 - reverted a part of fix for lp:1280896 (updating a unique key can cause parallel applying to hang ) in revision #4105. This "BF (brute force) lock skipping" caused regression which surfaced in randgen test for bug lp:1364840 commitebe4fadcd5Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Oct 2 18:54:01 2014 +0200 when running mtr tests don't let galera-started rsyncd to log to syslog commit251239af67Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Oct 2 15:09:17 2014 +0300 Fix Windows compiler error 'log2f': identifier not found commitf13cf62147Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Sep 30 11:04:38 2014 +0200 don't enable SECURITY_HARDENED on old gcc on CentOS 5 x86 (at least) this results in a binary that cannot load plugins. Draw the line, quite arbitrarily, at gcc 4.6. commit2156f62d2eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Sep 29 19:50:56 2014 +0200 portability: use getifaddrs() instead of exec'ing /usr/sbin/ifconfig|grep|sed|awk commitedd1de3d1cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Sep 28 17:50:02 2014 +0200 cleanup: introduce CF_SKIP_WSREP_CHECK remove if() over many COM_xxx values commitb3469520a1Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Sep 28 16:43:44 2014 +0200 cleanup: remove OPT_WSREP_START_POSITION and OPT_WSREP_SST_AUTH there is no reason to initialize wsrep start position and auth from inside the get_one_option() callback commiteaec266eb1Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Sep 28 12:41:51 2014 +0200 restore and fix wsrep status variables commit13af416a82Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Sep 28 11:08:07 2014 +0200 cleanup: wsrep_check_opts commit425dc6d2fdAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Sep 28 09:13:05 2014 +0200 small cleanup commit7aabc2ded2Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Sep 27 22:29:10 2014 +0200 fixing embedded: WaaS. Wsrep as a Service. commit8877adb773Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 26 17:02:47 2014 +0200 fixing embedded: first set of changes (storage engines don't work yet) commitc6b95222c3Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 26 20:03:38 2014 +0200 use MD5 service in innodb/xtradb commitd6141a553cAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 26 20:03:20 2014 +0200 MD5 service commit11b6452a0fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 26 18:49:47 2014 +0200 extend SHA1 service. cleanup of sha1 wrappers commit93b50e64a0Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 26 10:22:44 2014 +0200 cleanup: remove galera/wsrep magic from mtr commit4bb49d84a9Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 26 15:54:42 2014 +0200 correct handling on defaults[-extra]-file is SST scripts pass --defaults-file and --defaults-extra-file (whatever was specified, or none) from mysqld down to SST scripts. parse these options in SST scripts and pass them down to mysqldump, my_print_defaults, and xtrabackup commitdc113e2765Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 26 12:55:56 2014 +0200 fix cmake detection of bfd.h commitd06b5b6a2dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 26 10:22:18 2014 +0200 disable wsrep by default. fix wsrep not to crash when started disabled commit4b9bf9d3b8Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 26 07:04:33 2014 +0200 bugfix: remove the code that broke XA recovery commit3620910eeaAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 25 23:00:45 2014 +0200 cleanup: galera merge, simple changes commitb04f848176Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Sep 20 21:36:51 2014 +0200 cleanup: use is_supported_parser_charset commit1a731af194Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 19 21:10:06 2014 +0200 cleanup: remove redundant clauses from sys_vars.cc commitb054e4bdb1Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 19 12:51:33 2014 +0200 bugfix: disabling partitioning in already built tree that didn't quite work, WITH_PARTITION_STORAGE_ENGINE was not undefined commit88cebbdf6dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 11 10:08:48 2014 +0200 cleanup: remove libedit, move readline to extra/ commit74a552d5dcAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Sep 5 16:08:58 2014 +0200 cleanup: remove table->status from some engines from engines that we don't need to merge from a third-party repository on a regular basis commitfe0ff58000Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Sep 4 21:37:10 2014 +0200 compiler warnings commit9a57de86beAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Sep 30 18:06:15 2014 -0400 bzr merge -r4123..4144 codership/5.6 commit605b48d3e3Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Sep 30 19:22:27 2014 +0400 MDEV-6814: Server crashes in calculate_key_len on query with ORDER BY - if test_if_skip_sort_order() decides to switch to using an index, or switch from using ref to using quick select, it should set all members accordingly. commitfc2df3c637Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Sep 30 14:50:34 2014 +0300 MDEV-6812: Merge Kakao: Add global status variables which tell you the progress of inplace alter table and row log buffer usage - (x 100%, it's 4-digit. 10000 means 100.00%) - Innodb_onlineddl_rowlog_rows Shows how many rows are stored in row log buffer. - Innodb_onlineddl_rowlog_pct_used Shows row log buffer usage in percent ( *100%, it's 4-digit. 10000 means 100.00% ). - Innodb_onlineddl_pct_progress Shows the progress of inplace alter table. It might be not so accurate because inplace alter is highly depend on disk and buffer pool status. But still it is useful and better than nothing. - Add some log for inplace alter table XtraDB/InnoDB will print some message before and after doing some task. commitc916085e27Merge:023366e6ebf1afc003eeAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sun Sep 28 20:43:56 2014 -0400 bzr merge -rtag:mariadb-10.0.14 maria/10.0/ commit0b15557c8fAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Fri Sep 26 15:54:35 2014 +0400 MDEV-6796: Unable to skip filesort when using implicit extended key Re-work test_if_order_by_key() to work correctly for extended indexes. commitbef30f2e30Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Fri Sep 26 12:16:05 2014 +0300 Fix test failures seen on -- innodb-wl5522-debug-zip (path differences win/unix) -- innodb_defragment_fill_factor (stabilise) -- innodb_force_pk (case difference win/unix) commit236cc6cd49Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Sep 25 20:59:15 2014 -0400 wsrep-related changes: removed some unnecessary files & minor modifications. commita756ac6190Merge:98c95ff1e2d6a67ce080Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Sep 25 22:12:52 2014 +0400 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit98c95ff1e2Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Sep 25 22:12:18 2014 +0400 Better comments about KEY::ext_key_part_map commitd6a67ce080Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Sep 25 13:32:55 2014 -0400 Fix for syntax error in debian control file. commita28c9a5857Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Sep 25 11:46:52 2014 -0400 MDEV-6790: 10.1: debian build failure Updated 33_scripts__mysql_create_system_tables__no_test.dpatch to reflect user.default_role. commit30fab5fb51Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Sep 25 19:14:16 2014 +0400 MDEV-6788: The variable 'role' is being used without being initialized at sql_acl.cc:8840 [re-commit in git] Second variant of the fix: reduce the scope of 'role' variable commit532334cb11Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Sep 25 18:27:20 2014 +0400 MDEV-6788: The variable 'role' is being used without being initialized at sql_acl.cc:8840 [Re-commit in git] Don't check the value of 'role' variable in the cases where we don't need it. (it may be marked as uninitialized and we get a runtime error). commit9ce830d641Merge:e74bf079823f2d9a902eAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Thu Sep 25 14:30:59 2014 +0400 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commite74bf07982Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Sep 25 14:29:14 2014 +0400 Better comments commit3f2d9a902eAuthor: Monty <monty@mariadb.org> Date: Wed Sep 24 23:52:17 2014 +0300 Fixed failing test temp_table_frm The problem was that the internal temporary table created for information_schema overflow to MyISAM because it has a row width of > 3000 characters, which filled the in memory temporary tables. Fix was to increase size for the heap table. commit023366e6ebAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Sep 24 12:17:29 2014 -0400 Moved wsrep_slave_threads to optional settings. commit59277a7d83Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Sep 24 12:16:09 2014 -0400 Moved wsrep_slave_threads to optional settings. commit15ad0d0bb7Merge:c7d45c220f8707f172e1Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Sep 24 12:17:15 2014 +0400 Merge ../10.1-mdev6657 into bb-10.1-orderby-fixes commitc7d45c220fMerge:f5d845426e8aa88db3c2Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Sep 24 12:04:16 2014 +0400 Merge ../10.1-mdev6402 into bb-10.1-orderby-fixes commitf5d845426eAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Wed Sep 24 11:56:22 2014 +0400 Better comments commite207e5fe27Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 23 14:33:27 2014 -0400 Updated config files: - Removed QC restriction - Added bind-address Fixed file permissions for wsrep_sst_rsync.sh. Removed some unnecessary files. commit851e428e4eAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 23 14:03:13 2014 -0400 Updated config files: - Removed QC restriction - Added bind-address Fixed file permissions for wsrep_sst_rsync.sh. commit4538665a63Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Sep 22 12:15:44 2014 -0400 MDEV-6740 : Galera crash in rpl_sql_thread_info/cached_charset_compare Properly initialized rpl_sql_thread_info for bf threads. Also removed some dead code. commitc4356bfccbAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Sep 17 14:59:39 2014 -0400 MDEV-6447: Galera: Enable QC * Added galera/query_cache test * Merged patch for lp:1296403 commit5589509353Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Sep 17 14:39:43 2014 -0400 MDEV-6447: addendum, moving QC code within HAVE_QUERY_CACHE. commit9a0566b09bAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Sep 17 14:12:00 2014 -0400 MDEV-6447: Galera: Enable QC * Added galera/query_cache test * Merged patch for lp:1296403 commitcf180e7f3dAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Sep 17 09:54:04 2014 -0400 Reverting version change to match the version of supporting packages available on buildbot. commit99b449bbb8Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Sep 17 09:53:06 2014 -0400 Reverting version change to match the version of supporting packages available on buildbot. commit69bc2d529fAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 16 12:58:35 2014 -0400 Updated mysqld--help test and result (MDEV-6717, MDEV-6659). commit5f3cfbb59dAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 16 12:55:29 2014 -0400 Updated mysqld--help test and result (MDEV-6717, MDEV-6659). commitac2a2f3453Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 16 12:42:17 2014 -0400 MDEV-6659: mysqld --help --verbose initializes wsrep Do not initialize/load wsrep subsystem if server is started in help mode. commit8aa88db3c2Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Sep 12 02:19:49 2014 +0400 MDEV-6402: Optimizer doesn't choose best execution plan when composite... Fix test_if_skip_sort_order() logic: WHEN we use index X, which doesn't produce needed ordering, but there is an index Y which does and has the same prefix as used prefix of X THEN don't just switch to using ref access on Y. If range(Y) would use more key parts, use range(Y). commitd0a5f33ccdAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Sep 11 07:10:37 2014 +0300 Remove incorrect test file. commit7e2bc140e3Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Sep 10 20:19:41 2014 +0300 Remove unnecessary debug output causing unnecessary warnings. commit595bcb7947Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Sep 10 18:48:26 2014 +0300 Fix merge error on binlog_remove_pending_rows causing failure on binlog_innodb_row test. commitb67e1d3c98Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Sep 10 09:44:57 2014 +0300 Adjusted defrag test that fails randomly (timing problem) and fix result of innodb_sys_index test. commit76d15afb33Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 9 19:19:12 2014 -0400 Minor improvements in mtr and wsrep test files. commitbe055b3835Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 9 19:05:25 2014 -0400 Minor improvements in mtr and wsrep test files. commit4ffccff45dAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 9 13:43:01 2014 -0400 MDEV-6717 : wsrep_data_home_dir should default to @@datadir Used mysql_real_data_home as wsrep_data_home_dir's default. Added a test case. commite5267cae8aAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 9 13:41:22 2014 -0400 MDEV-6717 : wsrep_data_home_dir should default to @@datadir Used mysql_real_data_home as wsrep_data_home_dir's default. Added a test case. commitf3e95caacdAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 9 09:25:47 2014 -0400 MDEV-6699 : wsrep_node_name not automatically set to hostname Fixed by using hostname (glob_hostname) as default value for wsrep_node_name system variable. Added a test case. commit140fd7adbdAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Sep 9 09:18:35 2014 -0400 MDEV-6699 : wsrep_node_name not automatically set to hostname Fixed by using hostname (glob_hostname) as default value for wsrep_node_name system variable. Added a test case. commit6748976d14Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Sep 9 13:35:39 2014 +0300 Fix test failure on rpl_statements test by not listing wsrep variable. commit8707f172e1Merge:c945233a19bf30585eafAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Sep 9 13:46:33 2014 +0400 Merge 10.1 into bb-10.1-mdev6657 commitbf30585eafAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Sep 9 13:26:23 2014 +0400 MDEV-465: Optimizer : wrong index choice: Add a testcase. commit8bd4716272Merge:26e048ffd3f8f8a59c18Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Sep 9 13:05:28 2014 +0400 Merge ../10.1-orderby-fixes into 10.1 commit47fcca0ffcAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Sep 8 21:21:37 2014 -0400 MDEV-6667 : Improved handling of wsrep-new-cluster option Code refactoring. Using mysql option handling system to handle 'wsrep-new-cluster' option. commitc0483b0029Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Sep 8 14:01:41 2014 -0400 Bumping server version. (10.0.14-galera) commit6421f5f147Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Sep 8 13:58:43 2014 -0400 Bumping server version. (5.5.40-galera) commit26e048ffd3Author: Nirbhay Choubey <nirbhay.choubey@gmail.com> Date: Mon Sep 8 13:19:20 2014 -0400 Merged sys_vars.wsrep_* tests from maria-10.0-galera tree. commit7c58dd80e5Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Sep 8 15:12:18 2014 +0300 Fix another set of test failures caused by galera merge. commitd7fd3ffb4dMerge:d3ceb934f1d161546b67Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Sep 8 09:36:15 2014 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commitd3ceb934f1Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Sep 8 09:34:03 2014 +0300 MDEV-6701: InnoDB tests fail in 10.1 Fixed test failures seen on defragment tests, innodb.innodb-wl5522-debug-zip and innodb.innodb_bug12902967. commitd161546b67Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Sep 4 01:12:49 2014 +0400 MDEV-6689: valgrind errors in view.test in 10.1 SHOW COLUMNS and SHOW KEYS commands fill IS_table_read_plan in a special way - they don't set or use lookup_field_vals member. Added a "trivial_show_command" flag that signals that lookup_field_vals has no valid data, made EXPLAIN code honor it. commit9e63cc0780Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Sep 3 18:51:02 2014 +0300 MDEV-6651: MariaDB galera cluster crashes in file row0mysql.cc line 684 DELETE FROM ports WHERE ports.id = 'f37aa3fe-ab99-4d0f-a566-6cd3169d7516' where table ports have foreign keys. Verified that current 5.5-galera is not affected and added test case to regression set. commitd7f377538fAuthor: Jan Lindström <jplindst@mariadb.org> Date: Wed Sep 3 18:25:49 2014 +0300 MDEV-6651: MariaDB galera cluster crashes in file row0mysql.cc line 684 DELETE FROM ports WHERE ports.id = 'f37aa3fe-ab99-4d0f-a566-6cd3169d7516' where table ports have foreign keys. Problem is repeatable with 10.0.12-galera but not with 10.0-13-galera. Added test case to regression set. commitc945233a19Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Sep 2 18:54:29 2014 +0400 MDEV-6657: Poor plan choice for ORDER BY key DESC optimization... The problem was caused by the following scenario: - range optimizer picks an index IDX1 which doesn't match the ORDER BY ... LIMIT clause. - test_if_skip_sort_order() decides to switch to index IDX2 which matches the ORDER BY ... LIMIT. - it runs SQL_SELECT::test_quick_select() for the second time to produce an quick select for IDX2. - However, test_quick_select() would figure that full index scan on IDX1 is still cheaper (its calculations ignore the LIMIT n). Fixed this by - passing force_quick_range=true to test_quick_select() - in test_quick_select, don't consider full index scans if the mentioned parameter is true. Numerous changes in .result files are caused by test_quick_select() being run after "early/late NULLs filtering" feature has injected NOT NULL condition. commite44751b65fAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Fri Aug 29 10:11:08 2014 +0300 Merge revision 3882 from lp:maria/maria-10.0-galera MDEV-6656: Test wsrep.variables hangs Analysis: wsrep_applier_thread shutdown signaling does not always work correctly causing a timing problem where main thread is waiting in a condition variable a signal that all worker threads to end. commitf99f573dc7Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Aug 29 09:42:13 2014 +0300 MDEV-6656: Test wsrep.variables hangs Analysis: wsrep_applier_thread shutdown signaling does not always work correctly causing a timing problem where main thread is waiting in a condition variable a signal that all worker threads to end. commit4cccd57849Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Aug 28 23:42:45 2014 -0400 MDEV-6659: mysqld --help --verbose initializes wsrep Do not initialize/load wsrep subsystem if server is started in help mode. commit5a684f8291Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Aug 28 07:01:06 2014 +0300 Fix typo. commiteff5ef77ddAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Aug 28 06:49:58 2014 +0300 Rule for configure wsrep-notify was missing. commitf8f8a59c18Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Aug 27 23:31:27 2014 +0400 Forgot one file in previous commit commitf883f3ef86Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Aug 12 14:05:35 2014 +0200 git: ignore errmsg.sys and typescript, better diff header for C/C++ files commit422b99ed87Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Aug 27 20:00:13 2014 +0300 Fix incorrect merge. commit8cd08717f6Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Aug 27 19:53:19 2014 +0300 Move galera_sst_mode test to correct location. This test tests mysqldump option. commitf1a1683309Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Aug 27 20:08:32 2014 +0400 MDEV-6384: It seems like OPTIMIZER take into account the order of indexes in the table When ORDER BY ... LIMIT check whether it should switch from index IDX1 to index IDX2, it should not ignore the fact that IDX2 may have a potential range or ref(const) access. Istead, it should calculate their costs: there is now a saved range optimizer cost and code to re-calculate what best_access_path() calculated for ref(const). /* in current cost model these two can be very different numbers unfortunately */ commitbe00e279c6Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Aug 27 18:47:33 2014 +0400 MDEV-6480: Remove conditions for which range optimizer returned SEL_ARG::IMPOSSIBLE Let range optimizer remove parts of OR-clauses for which range analysis produced SEL_TREE(IMPOSSIBLE). There is no need to remove parts of AND-clauses: either they are inside of OR (and the whole AND-clause will be removed), or the AND-clause is at the top level, in which case the whole WHERE (or ON) is always FALSE and this is a degenerate case which receives special treatment. The removal process takes care not to produce 1-way ORs (in that case we substitute the OR for its remaining member). commit6907da2341Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Aug 27 15:35:49 2014 +0300 Fix small error on LZMA compression error printout. commit4fb45aa219Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Aug 27 15:28:43 2014 +0300 Fix compiler error when WITH_WSREP is not used. commita60ea193baAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Aug 27 15:19:45 2014 +0300 Fix compiler error when WITH_WSREP is not used. commitab150128ceMerge:9534fd83ce20e20f6db6Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Aug 27 13:15:37 2014 +0300 MDEV-6247: Merge 10.0-galera to 10.1. Merged lp:maria/maria-10.0-galera up to revision 3880. Added a new functions to handler API to forcefully abort_transaction, producing fake_trx_id, get_checkpoint and set_checkpoint for XA. These were added for future possiblity to add more storage engines that could use galera replication. commit9d15afdb61Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 26 16:23:56 2014 -0400 Merged fix for MDEV-6646 from maria-5.5-galera. commitbc59e4c17fAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 26 16:14:46 2014 -0400 Switched wsrep_causal_reads ON for galera test suite. commitaece04a02cAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 26 15:56:03 2014 -0400 MDEV-6646 : global.wsrep_causal_reads no longer honored During THD initialization, the value of wsrep_causal_reads (now being exclusively handled via wsrep_sync_wait, lp:1277053) was being ignored. Fixed by updating wsrep_sync_wait appropriately. commit20e20f6db6Merge:df4dd593f2ea4103d94dAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Aug 26 15:46:19 2014 +0300 Merge branch 'bb-10.1-galera' of github.com:MariaDB/server into bb-10.1-galera commitdf4dd593f2Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Aug 6 15:39:15 2014 +0300 MDEV-6247: Merge 10.0-galera to 10.1. Merged lp:maria/maria-10.0-galera up to revision 3879. Added a new functions to handler API to forcefully abort_transaction, producing fake_trx_id, get_checkpoint and set_checkpoint for XA. These were added for future possiblity to add more storage engines that could use galera replication. commit9534fd83ceAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Aug 26 16:24:40 2014 +0400 MDEV-6634: Wrong estimates for ref(const): Update test result commitea4103d94dAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Aug 26 14:32:15 2014 +0300 Add missing test files for new configuration variables. Added a new functions to handler API to forcefully abort_transaction, producing fake_trx_id, get_checkpoint and set_checkpoint for XA. These were added for future possiblity to add more storage engines that could use galera replication. commitbb11eb82d5Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Aug 26 14:57:09 2014 +0400 MDEV-6305 - UNINIT_VAR emits code in non-debug builds Reverted workaround for gcc bug, which was fixed 3 years ago: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34772 commitfe4f467276Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Aug 26 12:32:21 2014 +0300 Merge lp:maria/maria-10.0-galera revisions 3867..3869 and 3871..3879. commitbc5c65f9b4Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Aug 25 17:03:17 2014 -0400 MDEV-6636 : Merged fixes for lp:1167368 and lp:1250805. commit9b506d4bcbAuthor: Jan Lindström <jplindst@mariadb.org> Date: Mon Aug 25 09:13:15 2014 +0300 MDEV-6602: rpl.rpl_mdev6020 fails sporadically with SIGABRT Analysis: Problem is that we execute galera code when we are actually executing asyncronoush replication. Fix: Do not execute galera code if wsrep provider is not set. commit378878e1e9Author: Sergei Petrunia <psergey@askmonty.org> Date: Sun Aug 24 12:36:51 2014 +0400 MDEV-6634: Wrong estimates for ref(const) and key IS NULL predicate IS [NOT] NULL predicate is sargable within an outer join. Range analysis only uses predicates from ON expressions, which have regular semantics (without null-complemented rows, etc). There is no reason not use IS [NOT] NULL predicates. commit62f40f49caAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Fri Aug 22 21:59:56 2014 +0300 Fix merge errors. commit4521a532f8Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Fri Aug 22 08:43:57 2014 +0300 Fix merge error. commit79180d87bbAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Aug 21 19:35:13 2014 +0300 Fix Windows compiler errors. commit21b4dec072Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Aug 21 16:08:51 2014 +0300 Review fixes. commitf1c1c04a34Author: Sergey Vojtovich <svoj@mariadb.org> Date: Tue Aug 19 15:18:18 2014 +0400 MDEV-4262 - P_S discovery Discover P_S tables automatically. Most of this patch is code clean-up: - removed tests and code responsible for P_S tables correctness verification - always return error from ha_perfschema::create() - install/upgrade scripts won't create P_S tables anymore commite7669cf607Merge:8984bef2e40c5e04f0e6Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Aug 18 10:55:01 2014 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit8984bef2e4Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Aug 18 10:52:59 2014 +0300 MDEV-6172: Monitor progress of ALTER TABLE ... ADD INDEX, ALGORITHM=INPLACE for InnoDB Added thd_progress calls to row_merge_sort to give some hint how merge sort progresses. commitdc0f1864aeAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Aug 15 18:41:36 2014 -0400 Fix for binlog tests. commitde38fcfbb1Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Aug 14 18:43:04 2014 -0400 Fix for build failure in tokudb. commitf523662cfaAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Aug 14 18:19:01 2014 -0400 Fix for some failing rpl tests. commit041e03e251Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Aug 14 01:12:05 2014 +0400 EXPLAIN FORMAT=JSON: produce used_key_parts, JSON-ish output for index_merge. commit0680eeae05Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Aug 13 11:29:13 2014 -0400 Test modifications * Added a basic test for wsrep_sync_wait system variable. * Separate innodb_load_xa tests for wsrep and non-wsrep builds. * Updated file_contents.test with correct file location * Some coding style related changes. commit9ee0dca5d9Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Aug 13 10:41:41 2014 -0400 Updated file_contents.test with correct file location. commita2d5a54374Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Aug 13 10:39:01 2014 -0400 Added a basic test for wsrep_sync_wait system variable. Also made some coding style related changes. commit0c5e04f0e6Merge:8d3a432f126b47e896c0Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Aug 13 18:07:51 2014 +0400 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit8d3a432f12Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Aug 13 18:06:53 2014 +0400 MDEV-6575: main.view --ps-protocol fails in ANALYZE code - After PREPARE is done, save the value of thd->select_number (this is what will be assigned to next select_lex object) - Restore the value at each execution of the prepared statement. commit6b47e896c0Author: Oleksandr Byelkin <sanja@mariadb.org> Date: Wed Aug 13 15:24:32 2014 +0300 Basic test of slave_run_triggers_for_rbr variable added. commit2062c9a65aAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Aug 13 09:03:28 2014 +0300 MDEV-6567: Raw debug output in the error log. Removed raw debug output when no error on OS operation has not happened. commitef4cbd8aecAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 12 18:26:45 2014 -0400 Updated WSREP_PATCH_REVNO. commit5add585539Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 12 18:23:53 2014 -0400 Merged r4014 from codership/5.5 commit305c1ae157Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 12 16:39:10 2014 -0400 Merge of innobase changes to xtradb. (r3871..3873). commit8ec02bb836Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 12 14:50:26 2014 -0400 bzr merge -c4123 codership/5.6/ (minus http://bazaar.launchpad.net/~codership/codership-mysql/5.6/revision/4122) commit857abf1481Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 12 14:05:44 2014 -0400 bzr merge -r4104..4120 codership/5.6/ commit38f048a013Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 12 12:43:56 2014 -0400 bzr merge -r4101..4103 codership/5.6/ commita9d43d70f5Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Aug 12 18:14:56 2014 +0400 EXPLAIN FORMAT=JSON: produce the 'ref' column. commit84485dbe7cAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Aug 12 15:02:09 2014 +0400 MDEV-6109: EXPLAIN JSON Add pretty-printing of possible_keys column. commit8358dd53b7Merge:e06e12f5b84105cbf4a2Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Aug 11 23:55:41 2014 -0400 bzr merge -r4346 maria/10.0 (maria-10.0.13) commite1facda416Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Aug 11 17:09:59 2014 -0400 Fix for some failing tests. commite06e12f5b8Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Aug 11 14:31:30 2014 -0400 Added 'have_innodb_disallow_writes.inc'. commite2b2bde358Author: Monty <monty@mariadb.org> Date: Sun Aug 3 15:26:47 2014 +0300 Made sql_log_slow a session variable mysqldump: - Added --log-queries to allow one to disable logging for the dump sql/log_event.cc: - Removed setting of enable_slow_log as it's not required anymore. sql/sql_parse.cc: - Set enable_slow_log to value of thd->variables.sql_log_slow as this will speed up tests if slow log is disabled. - opt_log_slow_admin_statements can now only disable slow log, not enable it. sql/sql_explain.cc: - Minor cleanup Other things: - Added sql_log_slow to system variables. - Changed opt_slow_log to global_system_variables.sql_log_slow in all files - Updated tests to reflect changes commit7375f025eeAuthor: Monty <monty@mariadb.org> Date: Sun Aug 3 15:16:56 2014 +0300 Changes for using build scripts Removed -DSECURITY_HARDENED=OFF for debug build scripts ignore configure commitb4c74e2ab4Author: Monty <monty@mariadb.org> Date: Sun Aug 3 15:12:53 2014 +0300 Change MySQL -> MariaDB inc scripts commit3bde13932eAuthor: Monty <monty@mariadb.org> Date: Sun Aug 3 15:12:10 2014 +0300 Minor cleanups, fix compiler warnings commit33d53c4c24Author: Sergei Petrunia <psergey@askmonty.org> Date: Sat Aug 9 06:37:56 2014 +0400 MDEV-6109: EXPLAIN JSON - Add first testcases - Don't overquote when printing conditions - Other small output fixes commit83f0ddc629Merge:d87ffeb4915cfd3270ecAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Sat Aug 9 01:52:54 2014 +0400 Merge 10.1 (with ANALYZE) and 10.1-explain-json commitf8420992c0Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Aug 7 18:29:20 2014 -0400 MDEV-6490: mysqldump unknown option --galera-sst-mode * Merged patches pushed to 10.0. * Additional fix in wsrep_sst_mysqldump.sh to control use of RESET MASTER and mysqldump's galera-sst-mode option based on joiner's @@log-bin value. commitd87ffeb491Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Aug 7 13:44:00 2014 +0300 MDEV-6548: Incorrect compression on LZMA. Analysis: Provided incorrect parameter to output buffer size and incorrectly determined actual payload size after compression. commit50777e26f0Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Aug 7 13:41:46 2014 +0300 Fix Windows compiler error by disabling for now the nullptr class implementation. commitf64a0c3f85Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Aug 6 19:11:55 2014 -0400 Updated WSREP_PATCH_REVNO. commitf20b1fd5e3Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Aug 6 17:55:29 2014 -0400 Merge of innobase changes to xtradb. commitb09f1f9e65Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Aug 6 15:47:17 2014 -0400 bzr merge -r4011..4013 codership-mysql/5.5 commit4788577c20Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Aug 6 15:45:53 2014 -0400 bzr merge -r3997..4010 codership-mysql/5.5 commitec91eea8dbMerge:e4e55f7968c722e5f25fAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Aug 6 14:06:11 2014 -0400 Local merge of mariadb-5.5.39 bzr merge -r4264 maria/5.5 Text conflict in sql/mysqld.cc Text conflict in storage/xtradb/btr/btr0cur.c Text conflict in storage/xtradb/buf/buf0buf.c Text conflict in storage/xtradb/buf/buf0lru.c Text conflict in storage/xtradb/handler/ha_innodb.cc 5 conflicts encountered. commit5ebb396638Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Aug 6 15:39:15 2014 +0300 MDEV-6247: Merge 10.0-galera to 10.1. Merged lp:maria/maria-10.0-galera up to revision 3867. commit6dad23f04aAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Aug 6 15:28:58 2014 +0300 MDEV-5834: Merge Kakao Defragmentation implementation to MariaDB 10.1 Merge https://github.com/kakao/mariadb-10.0 that contains Facebook's implementation for defragmentation facebook/mysql-5.6@a2d3a74 facebook/mysql-5.6@def96c8 facebook/mysql-5.6@9c67c5d facebook/mysql-5.6@921a81b facebook/mysql-5.6@aa519bd facebook/mysql-5.6@fea7d13 facebook/mysql-5.6@09b29d3 facebook/mysql-5.6@9284abb facebook/mysql-5.6@dbd623d facebook/mysql-5.6@aed55dc facebook/mysql-5.6@aad5c82 This version does not add new SQL-syntax and new handler API function. Instead optimize table is mapped to defragment table if innodb_defragment=ON, by default the feature is off. Contains changes authored by Sunguck Lee (Kakao). commit746c755d42Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 5 19:00:54 2014 -0400 MDEV-6495: local merge from maria-5.5-galera. commite4e55f7968Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Aug 5 18:55:05 2014 -0400 MDEV-6495: innodb_flush_log_at_trx_commit=0 as suggestion for galera vs =2 Updated innodb_flush_log_at_trx_commit value in cnfs as per recommendation. commit30b5a4de5dAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Jul 31 16:40:32 2014 -0400 MDEV-6492: MariaDB Galera Cluster cant use rsync sst A donor node does a flush tables and then tries to freeze innodb writes before proceeding with SST. However, innodb_disallow_writes was missing in xtradb. Merged 'InnodbFreeze' patch from maria-5.5-galera's to xtradb. Also, merged some changes missing in innobase's os0file.cc. Added a basic test case for innodb_disallow_writes system variable. commite974b56438Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Jul 31 11:31:39 2014 +0300 MDEV-6512: InnoDB: Assertion failure in thread 4537024512 in file buf0buf.cc line 2642. Analysis: innodb_compression_algorithm is a global variable and can change while we are building page compressed page. This could lead page corruption. Fix: Cache innodb_compression_algorithm on local variable before doing any compression or page formating to avoid concurrent change. Improved page verification on debug builds. commit4e3796d720Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Jul 29 06:10:18 2014 +0300 Fix compiler error on Windows. commit1f69ff4413Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Fri Jul 25 18:45:14 2014 +0300 Fix compiler error on Windows. commit56c4b016adAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Fri Jul 25 14:37:10 2014 +0300 Fiix random test failures on fil_decompress_page_2 function. Analysis: InnoDB writes also files that do not contain FIL-header. This could lead incorrect analysis on os_fil_read_func function when it tries to see is page page compressed based on FIL_PAGE_TYPE field on FIL-header. With bad luck uncompressed page that does not contain FIL-headed, the byte on FIL_PAGE_TYPE position could indicate that page is page comrpessed. Fix: Upper layer must indicate is file space page compressed or not. If this is not yet known, we need to read the FIL-header and find it out. Files that we know that are not page compressed we can always just provide FALSE. commit911c4811deAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Jul 23 12:51:51 2014 +0200 cleanup and updated test results commitbb66e66daaAuthor: Vicentiu Ciorbaru <cvicentiu@gmail.com> Date: Sun Jul 20 03:23:57 2014 +0000 Changed set_default_role_for test to clean up correctly commita3550feb49Author: Vicentiu Ciorbaru <cvicentiu@gmail.com> Date: Sun Jul 20 03:20:15 2014 +0000 Extended create_and_drop_role_invalid_user_table Added extra check for default_role column. commit5298996180Author: Vicentiu Ciorbaru <cvicentiu@gmail.com> Date: Sun Jul 20 03:14:07 2014 +0000 Fixed comment. commit64b27c734eAuthor: Vicentiu Ciorbaru <cvicentiu@gmail.com> Date: Sun Jul 13 23:57:10 2014 +0000 Added default role implementation commit43351faf2bAuthor: Vicentiu Ciorbaru <cvicentiu@gmail.com> Date: Sun Jul 13 22:22:31 2014 +0000 Added extra error messages for default role. Also fixed wording on one message. commitc55f5d1addAuthor: Vicentiu Ciorbaru <cvicentiu@gmail.com> Date: Fri May 30 17:54:13 2014 +0300 Added default_role column to mysql_system_tables commit6b9998578eMerge:47daf3b422fa0628a6acAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Jul 23 11:56:36 2014 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit47daf3b422Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Jul 23 11:55:34 2014 +0300 Fix default value for innodb_compression_algorithm to 0 (uncompressed) to avoid test failures. commitfa0628a6acAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Jul 22 19:50:47 2014 +0400 MDEV-6456: Add progress indication for "Reading tablespace information from the .ibd files" # of processed files is printed every 15 sec. commit05ff47cd4bAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jul 22 10:04:57 2014 -0400 Local merge of patch for MDEV-6377 from maria-5.5-galera. commitefdf79b447Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jul 22 09:43:42 2014 -0400 Local merge of patch for MDEV-4647 from maria-5.5-galera. commit79750be187Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jul 22 09:41:10 2014 -0400 MDEV-6377 : Test cases for wsrep system variables. commit7b69cab891Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jul 22 09:27:35 2014 -0400 MDEV-4647: Crash on setting wsep system variables to default The variables' ON_CHECK functions relied on set_var's "value" member, which is NULL for SET ... =default. Fixed by using save_result instead. Also, for many wsrep variables, pointers to their respective global variables were used to provide default values. The patch fixes this by using appropriate macros and string literals. commitdbc79ce055Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Mon Jul 21 22:21:30 2014 +0300 MDEV-6354: Implement a way to read MySQL 5.7.4-labs-tplc page compression format (Fusion-IO). Addeed LZMA and BZIP2 compression methods. commite5cea60933Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jul 21 17:27:06 2014 -0400 Local merge of patch for MDEV-3896 from maria-5.5-galera. commite3ac16d721Author: Otto Kekäläinen <otto.kekalainen@seravo.fi> Date: Sun Jul 20 20:55:44 2014 +0300 Add executable bit to scripts that are supposed to have it. More info at: https://mariadb.atlassian.net/browse/MDEV-6153?focusedCommentId=55397&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-55397 commit0dadd01750Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Jul 17 16:22:01 2014 -0400 MDEV-3896: More user-friendly cnf files in MariaDB-Galera rpm/deb packages * Added "galera" as default option group. * Updated deb/rpm server config files to include mandatory and optional settings (as comments) required to configure Galera cluster. commiteaa0fe7cf8Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jul 15 01:01:49 2014 -0400 MDEV-4728: local merge from maria-5.5-galera. commit9c3f623777Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jul 15 00:54:29 2014 -0400 MDEV-4728: MariaDB can't start while bootup Introduced safety checks to ensure mysqld_safe terminates if mktemp fails to create a valid file. commitb77fc5a343Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Sat Jul 12 18:21:29 2014 -0400 Merge of patch for MDEV#6399. commit3ce3647055Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Sat Jul 12 18:20:45 2014 -0400 MDEV#6399 - Make galera test suite run with --parallel Galera tests used default base/SST ports which led to failures due to port conflicts when run in parallel. Fixed by setting them to ones generated by mtr framework. commitb6a116cedeAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Jul 11 13:40:39 2014 -0400 Merge of patch for MDEV#5786. commitd2cd778a27Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Jul 10 12:51:34 2014 -0400 MDEV-5786: mysql_upgrade on galera replicates "alter table" on system tables With wsrep patch, binary logging is implicitly enabled. This fix makes sure that it is turned off for --skip-write-binlog by swithcing off wsrep_on. commitdc377fcbc0Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Jul 9 11:07:23 2014 -0400 Merge of patch for MDEV-6411 from maria-5.5-galera. commit40bfd20180Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Jul 9 11:04:28 2014 -0400 MDEV#6411 - Setting set @@global_wsrep_sst_auth=NULL causes crash Fixed by properly handling the NULL values. commitf98b52aba1Author: Elena Stepanova <elenst@montyprogram.com> Date: Sat Jul 5 15:20:49 2014 +0400 Increased the version number commit3d1ac12177Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Jul 4 11:59:09 2014 +0300 Add test case for https://bugs.launchpad.net/percona-xtradb-cluster/+bug/1314854 commit84b3ec1fa4Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Jul 4 11:58:14 2014 +0300 Merge -r4105..4106 from codership/5.6 commit006cb2a6f9Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Jul 4 11:41:09 2014 +0300 Merge -r4102..4103 codership/5.6/ commit8025d26dc5Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Jul 4 10:15:49 2014 +0200 remove a couple of old unused #defines commit01046e7f92Author: Oleksandr Byelkin <sanja@mariadb.org> Date: Wed Jul 2 16:18:28 2014 +0300 RBR triggers enabling in 10.1 commit04db5aeb09Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jun 30 09:04:46 2014 -0400 Bumping server version. (5.5.39-galera) commitfbf3974652Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jun 30 09:03:29 2014 -0400 Bumping server version. (10.0.13-galera) commitb7a5b71fb3Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Jun 30 14:02:54 2014 +0300 MDEV-6225: Idle replication slave keeps crashing. Analysis: Based on crashed the buffer pool instance identifier is not correct on block to be freed. Add LRU list mutex holding on functions calling free and add additional safety checks. commit4ee6bf2203Author: Sergei Golubchik <serg@mariadb.org> Date: Sun Jun 29 22:44:12 2014 +0200 deb hack: don't set CASSANDRA_DEB_FILES unless cassandra can be built commitb35c5912b6Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Sat Jun 28 13:53:18 2014 +0300 MDEV-6376: InnoDB: Assertion failure in thread 139995225970432 in file buf0mtflu.cc line 570. Analysis: Real timing bug, we should take the mutex before we try to send those shutdown messages, that would make sure that threads doing a unfinished flush (they have acquired this mutex) have time to do their work before we add shutdown messages to work queue. Currently, we just add those shutdown messages to work queue and code assumes that at flush, there is constant number of items to be processed and thus leading to assertion. commit36e86bac72Author: Sergei Petrunia <psergey@askmonty.org> Date: Fri Jun 27 15:39:44 2014 +0400 Remove out-of-date comments commitc235de12aeAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 26 22:06:41 2014 +0400 MDEV-6394: ANALYZE DELETE .. RETURNING fails with ERROR 2027 Malformed packet (now, the code) Forgot the code commit9394f2f9b0Merge:3d7eeb6307c6d29cd30dAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 26 22:04:04 2014 +0400 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit3d7eeb6307Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 26 22:03:13 2014 +0400 MDEV-6394: ANALYZE DELETE .. RETURNING fails with ERROR 2027 Malformed packet - Add support for DELETE .. RETURNING statement in ANALYZE code. commitc6d29cd30dMerge:3e5994868dbe885ebe8cAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Jun 26 20:47:08 2014 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit3e5994868dAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Thu Jun 26 20:45:27 2014 +0300 MDEV-6392: Change innodb_have_lzo and innodb_have_lz4 as a static variables and reduce the number of ifdef's commitbe885ebe8cAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 26 20:12:18 2014 +0400 Code cleanup, more tests. commit7ed27e1b8eAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Jun 26 12:11:12 2014 -0400 Fix for some failing tests. commitc6be74458fAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 26 19:09:23 2014 +0400 MDEV-6398: ANALYZE UPDATE does not populate r_rows - In print_explain_row(), do not forget to print r_rows. - Switch Explain_update from using its own counters to re-using Table_access_tracker. - Make ANALYZE UPDATE code structure uniform with ANALYZE DELETE. commita787edd7e6Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 26 18:32:18 2014 +0400 MDEV-6395: Make ANALYZE UPDATE/DELETE handle the degenerate query plans. commit12d6f89b07Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 26 15:55:25 2014 +0400 MDEV-6393: ANALYZE SELECT crashes ... Don't try printing EXPLAIN if we had an error. commitb7d10e5687Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Jun 26 12:46:33 2014 +0200 MDEV-5730 enhance security using special compilation options add a comment commitda4f8269bfAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 16 21:39:09 2014 +0200 MDEV-5730 enhance security using special compilation options -Wl,-z,relro,-z,now -pie -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 commit6c0e3ef450Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 16 21:30:48 2014 +0200 cmake cleanup: use MY_CHECK_AND_SET_COMPILER_FLAG. move MY_CHECK_C_COMPILER_FLAG and MY_CHECK_CXX_COMPILER_FLAG to a separate file, introduce MY_CHECK_AND_SET_COMPILER_FLAG, use it where possible. commitafa4c36ca0Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 16 21:24:30 2014 +0200 cmake: prefer INSTALL(PROGRAMS over INSTALL(FILES commit6c9dd841cbAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 16 22:16:21 2014 +0200 remove unused sql/examples commitb95ec13553Author: Alexey Botchkov <holyfoot@montyprogram.com> Date: Thu Jun 26 11:37:24 2014 +0500 Revert "MDEV-12 OpenGIS: create required tables: GeometryColumns, related views." This reverts commit0bf9fd8929. commit648b957f42Merge:0bf9fd892968bf3c5052Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 26 10:48:08 2014 +0400 Merge branch 'bb-10.1-explain-analyze' into 10.1 commit68bf3c5052Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 26 10:43:58 2014 +0400 Code cleanup commit18d5a748f1Author: Sergei Petrunia <psergey@askmonty.org> Date: Thu Jun 26 01:22:50 2014 +0400 MDEV-406: ANALYZE $stmt: Make multi-table UPDATE/DELETE work, code cleanup. commit0bf9fd8929Author: Alexey Botchkov <holyfoot@montyprogram.com> Date: Thu Jun 26 00:46:21 2014 +0500 MDEV-12 OpenGIS: create required tables: GeometryColumns, related views. Scripts added that create OpenGIS-required views and tables they're based upon. commitaa22471633Merge:5893ae0b81787ec31778Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Jun 25 21:00:24 2014 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 Conflicts: storage/xtradb/handler/ha_innodb.cc commit4a7cacda58Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jun 25 20:47:54 2014 +0400 MDEV-406: ANALYZE $stmt: fix "explain UPDATE view problem". commit5893ae0b81Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Jun 25 19:04:44 2014 +0300 Fix test failure when trying to set compression algorithm to 3 commit9e1075eea0Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Jun 25 11:22:01 2014 -0400 Follow-up patch for lp:1312618 to fix a segfault. commit3da81ab97fAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jun 25 18:35:30 2014 +0400 MDEV-406: ANALYZE $stmt: more testcases, fix memory leak commit424d5de89dMerge:787ec31778b561a98a87Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jun 25 16:46:42 2014 +0400 Merge bb-10.1-explain-analyze into 10.1 commitb561a98a87Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jun 25 16:01:09 2014 +0400 MDEV-406: ANALYZE $stmt: add some tests for joins commit7711999d8bAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jun 25 15:15:38 2014 +0400 MDEV-406: ANALYZE $stmt: add support for BNL join buffering commit3bca01930aAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Wed Jun 25 08:46:54 2014 +0300 MDEV-6361: innodb_compression_algorithm configuration variable can be set to unsupported value. MDEV-6350: Excessive unnecessary memory allocation at InnoDB/XtraDB startup if LZO is installed. commitc039d9667eAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Jun 25 00:45:12 2014 -0400 Fixed a typo and updated mysqld--help test result. commitc3cfb6910aAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Jun 24 23:58:13 2014 +0400 MDEV-406: ANALYZE $stmt: Scans that never executed will have r_rows=NULL commit06a87d77e6Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Jun 24 23:38:49 2014 +0400 Fix compile on Windows: use rint() instead of round(). commit1dd5d31c73Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Jun 24 22:21:34 2014 +0400 MDEV-406: ANALYZE $stmt: fix order_by.test In JOIN_TAB::update_explain_data(), take into account that - the table that may have pre-sorted is the first non-const table - Tables that are eliminated by table elimination are marked as const tables, but are not present in the Explain data structures commitc08de06246Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Jun 24 19:41:43 2014 +0400 MDEV-406: ANALYZE $stmt: get ANALYZE work for subqueries - "ANALYZE $stmt" should discard select's output, but it should still evaluate the output columns (otherwise, subqueries in select list are not executed) - SHOW EXPLAIN's code practice of calling JOIN::save_explain_data() after JOIN::exec() is disastrous for ANALYZE, because it resets all counters after the first execution. It is stopped = "Late" test_if_skip_sort_order() calls explicitly update their part of the query plan. = Also, I had to rewrite I_S optimization to actually have optimization and execution stages. commit9a0b80c968Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jun 23 19:14:28 2014 -0400 MDEV#5747: wsrep system variables not listed alphabetically Some wsrep system variables contain uppercase letters in their names, as a result of which they seemed out of order after sorting. Fixed by using case-insensitive string comparison function to perform sorting. commit787ec31778Author: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 23 12:09:00 2014 +0200 MDEV-6248 GUI-friendly cmake options to enable/disable plugins * Introduce a set of PLUGIN_xxx cmake options with values NO, STATIC, DYNAMIC, AUTO, YES (abort if plugin is not compiled) * Deprecate redundant and ambiguous WITH_xxx, WITH_PLUGIN_xxx, WITH_xxx_STORAGE_ENGINE, WITHOUT_xxx, WITHOUT_PLUGIN_xxx, WITHOUT_xxx_STORAGE_ENGINE * Actually check whether a plugin is disabled (DISABLED keyword was always present, but it was ignored until now). * Support conditionally disabled plugins - keyword ONLY_IF * Use ONLY_IF for conditionally skipping plugins, instead of doing MYSQL_ADD_PLUGIN conditionally as before. Because if MYSQL_ADD_PLUGIN isn't done at all, PLUGIN_xxx=YES cannot work. commitda9bb66b02Author: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 17 10:59:40 2014 +0200 cmake GUI cleanup mark path-related variables (AIO_LIBRARY, ODBC_LIBRARY, ODBC_INCLUDE_DIR, Thrift_LIBS, Thrift_INCLUDE_DIRS, CRYPTO_LIBRARY, OPENSSL_LIBRARIES, OPENSSL_ROOT_DIR, OPENSSL_INCLUDE_DIR) as advanced - paths are automatically discovered by cmake. mark few choice variables (ENABLED_LOCAL_INFILE, WITHOUT_SERVER, DISABLE_SHARED) as not advanced - they are user choices, not automatically configured values. remove unused BACKUP_TEST variable. commit242e7f958dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon Jun 23 16:23:51 2014 +0200 MDEV-4549 [PATCH] Clean up code working with ACL tables * enum values to index different ACL tables, instead of hard-coded numbers (even different in diffent functions). * move TABLE_LIST initialization into open_grant_tables() and use it everywhere * change few my_bool's to bool's commitb9a4569bb4Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jun 23 10:18:52 2014 -0400 Updated sys_vars.all_vars result file. commitb5a2600e4bAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jun 23 09:37:46 2014 -0400 Empty revision to trigger build on buildbot. commitf321d3e5f1Author: Sergei Golubchik <serg@mariadb.org> Date: Sat Jun 21 08:56:49 2014 +0200 main.temp_table_frm failure on fulltest (--embedded, when TMPDIR=/tmp) use more restrictive --list_files to hide the usual /tmp garbage commitce6a63ec41Author: Sergei Golubchik <serg@mariadb.org> Date: Fri Jun 20 11:34:24 2014 +0200 MDEV-4260 Don't create frm files for temporary tables * Don't write frm for tmp tables * pass frm image down to open_table_uncached, when possible * don't use truncate-by-recreate for temp tables - cannot recreate without frm, and delete_all_rows is faster anyway commitcc5b3998b6Author: Sergei Golubchik <serg@mariadb.org> Date: Wed Jun 18 11:53:42 2014 +0200 remove HTON_FLUSH_AFTER_RENAME (BDB-ism, unused for years) commitfb8818c1afAuthor: Sergei Golubchik <serg@mariadb.org> Date: Tue Jun 17 17:57:18 2014 +0200 Fix CMakeLists.txt for cmake Ninja generator commit02034e4218Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Jun 19 21:55:19 2014 -0400 Merging fix for MDEV#6296 from maria-5.5-galera. commit97779a2ef0Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Jun 19 18:48:20 2014 -0400 bzr merge -r4091..4101 codership/5.6/ commita76a6601ecMerge:0f5522c44f0c64cd83ebAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Jun 19 13:12:38 2014 -0400 bzr merge -rtag:mariadb-10.0.12 maria/10.0 commitdc64ba2187Author: Sergei Golubchik <serg@mariadb.org> Date: Thu Jun 19 12:02:23 2014 +0200 MDEV-6137 better help for SET/ENUM sysvars Auto-generate the allowed list of values for enum/set/flagset options in --help output. But don't do that when the help text already has them. Also, remove lists of values from help strings of various options, where they were simply listed without any additional information. commit0f5522c44fAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Jun 18 10:19:18 2014 -0400 MDEV#6316: (post-fix) Using C-style comments in mysqldump. commit0cb7c19fbeAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed Jun 18 15:00:58 2014 +0200 update sys_vars.innodb_compression_algorithm_basic to pass it checked that the default is lz4. Which only worked on systems that had lz4 and did not have lzo. Now it checks for the default to be zlib, which works on systems that has neither lz4 or lzo. Like our package builders in buildbot. This is intentional, we don't want introduce additional dependencies (lz4, lzo) for our packages just yet. This can (and will) be reconsidered, and this test can (and will) be updated again. commit5f02051f07Merge:89e0514150cf1a09e42fAuthor: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Jun 17 11:33:50 2014 +0300 Merge branch '10.1' of github.com:MariaDB/server into 10.1 commit89e0514150Author: Jan Lindström <jan.lindstrom@skysql.com> Date: Tue Jun 17 08:40:54 2014 +0300 Fixed test failure introduced by adding a new dynamic configuration variable innodb_compression_algorithm. Removed unnecessary test for removed configuration variable. commit1fbb70559bAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jun 16 14:55:14 2014 -0400 MDEV#6316: Fix mysqldump SST method to transfer binlog state to the joiner In mysqldump SST, if Galera nodes are started with --log-bin and -log-slave-updates, the GTID sequence increases as the dump is played on the joiner, leaving behind the donor. This patch introduces a new mysqldump option --galera-sst-mode, which if enabled, would a) Add command to set off binary logging (log_bin=OFF). b) Add command to set @@global.gtid_binlog_state to that of donor. This will help in keeping the GTIDs consistent post-SST across the nodes. commit20279b0473Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jun 16 10:32:21 2014 -0400 Bumping the revision number. commit581b889771Author: Sergei Petrunia <psergey@askmonty.org> Date: Mon Jun 16 13:34:03 2014 +0400 Update analyze_stmt.result after the last commit commitc7ad886a70Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Sun Jun 15 13:53:43 2014 -0400 MDEV#6296: runtime adjustment of wsrep_slave_threads creates threads but never removes them When wsrep_slave_threads is changed at runtime, the old "change" value is not taken into account and thus successive SETs can make wsrep_slave_threads value inconsistent with the actual number of applier threads present. commitcf1a09e42fAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Jun 14 22:15:52 2014 +0200 MDEV-6107 merge default_tmp_storage_engine Adapt default_tmp_storage_engine implementation from mysql-5.6 New feature (as compared to 5.6), default_tmp_storage_engine=NULL means that temporary tables will use default_storage_engine value. This makes the behavior backward compatible. commit2edcf8f9ffAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun Jun 15 12:19:33 2014 +0200 .gitignore ninja files commit24133e654dAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sat Jun 14 18:24:22 2014 +0200 fix bison warnings (clash <NONE> != <>) commitf61f36b386Merge:2caeda442555b010233aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri Jun 13 16:10:25 2014 +0200 Merge branch '10.0' into 10.1 Conflicts: CMakeLists.txt VERSION Modified: .gitignore commit85032e36c6Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Jun 11 17:13:03 2014 -0400 Modified patch for lp:1310875. commitadc6bd15d5Merge:b441c510a793cc06b20cAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jun 10 18:41:53 2014 -0400 Merged changeset from codership-mysql/5.5. * bzr merge -r3980..3984 codership-mysql/5.5 * bzr merge -r3985..3997 codership-mysql/5.5 * Fixed a segfault. * Modified wsrep.variables test & fixed a warning in mtr script. commit93cc06b20cAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jun 10 18:31:07 2014 -0400 Fixed a warning in mtr script. Updated wsrep.variables test. commit1410785e8aAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jun 10 17:35:44 2014 -0400 Fix for a segfault. commitc29cbac2ebAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jun 10 17:00:32 2014 -0400 bzr merge -r3985..3997 codership/5.5 commit90ead99572Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jun 10 16:33:57 2014 -0400 bzr merge -r3980..3984 codership/5.5 commitb441c510a7Merge:d3b2e780d66d75570e99Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Jun 10 16:04:26 2014 -0400 bzr merge -rtag:mariadb-5.5.38 maria/5.5 commit2357871a21Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jun 9 16:13:30 2014 -0400 Fix for a debian build failure (cherry-picked from 10.0:r4231). commitd3b2e780d6Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Jun 6 13:49:10 2014 -0400 Updated default load option groups. commitcc66ae6aaeAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Jun 6 13:27:15 2014 -0400 MDEV#6317: Fix rsync SST method to transfer binlog state to the joiner * Merged changes to transfer last binlog file from codership/5.6. * Updated load default option groups. commit1ebc055f1bAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Jun 5 23:40:32 2014 -0400 Modified mtr script to skip inclusion of 'galera' test suites if galera library is not specified or found. commit68deb11a36Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Jun 5 23:31:00 2014 -0400 Modified mtr script to skip inclusion of 'galera' test suites if galera library is not specified or found. commit2caeda4425Author: Sergei Petrunia <psergey@askmonty.org> Date: Wed Jun 4 14:43:05 2014 +0400 Amend "make distclean" message to mention "git clean -Xdf" commit917b22393fAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue Jun 3 19:04:59 2014 +0400 MDEV-406: ANALYZE $stmt - Testcase for ANALYZE UNION - Provide r_rows for union result. commit5621aa3230Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue Jun 3 17:59:01 2014 +0400 MDEV-406: ANALYZE $stmt - Support tracking for UNIONs, temporary-table based ORDER BYs, and both. commit97d8323210Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jun 2 22:45:41 2014 -0400 Fix for wsrep_sst_xtrabackup-v2.sh script. commit6fc646ef2fAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Jun 2 08:26:42 2014 -0400 Fixed a typo in debian control file. commit26fa9e8294Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu May 29 21:03:10 2014 -0400 Added rsync to galera server's debian/rpm dependency list. commitd939fad231Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu May 29 21:02:17 2014 -0400 Added rsync to galera server's rpm dependency list. commit707f378a13Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu May 29 15:39:29 2014 -0400 Added rsync to galera server's debian dependency list. commit7e85cfb50fAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 28 00:46:21 2014 -0400 MDEV#6266: Changing password fails on galera cluster Added a check to skip ER_PASSWORD_ANONYMOUS_USER in case the SET PASSWORD was executed by wsrep applier thread. commit5cfd3270ecAuthor: Sergei Petrunia <psergey@askmonty.org> Date: Tue May 27 21:04:45 2014 +0400 MDEV-6109: EXPLAIN JSON - First code, "EXPLAIN FORMAT=JSON stmt" and "ANALYZE FORMAT=JSON stmt" work for basic queries. Complex constructs (e.g subqueries, etc) not yet supported. - No test infrastructure yet commit0925ab9d88Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue May 27 20:16:51 2014 +0400 MDEV-406: ANALYZE $stmt -Add analyze_stmt.test/result commiteaba1ba4a5Author: Sergei Petrunia <psergey@askmonty.org> Date: Tue May 27 20:13:17 2014 +0400 Re-commit in git: MDEV-406: ANALYZE $stmt - Ported the old patch to new explain code - New SQL syntax (ANALYZE $stmt) - ANALYZE UPDATE/DELETE is now supported (because EXPLAIN UPDATE/DELETE is supported) - Basic counters are calculated for basic kinds of queries (still need to see what happens with join buffer, ORDER BY...LIMIT queries, etc) commitc73cd2a595Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue May 27 11:04:42 2014 -0400 s/#if/#ifdef commit8d37bd48c7Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue May 27 10:11:42 2014 -0400 Fixing a typo s/connection_tcpwrap_errors/connection_errors_tcpwrap, causing build to fail when HAVE_LIBWRAP is enabled. commit7487f6b397Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue May 27 09:07:19 2014 -0400 Removing rsync from the debian build dependency list. commitef7e173404Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue May 27 09:06:04 2014 -0400 Removing rsync from the debian build dependency list. commit1e702f3d20Author: Sergei Golubchik <serg@mariadb.org> Date: Tue May 27 14:29:05 2014 +0200 don't include <linux/falloc.h> when it's not really needed commit5a61516afdMerge:ac4d78432e6a85b10dcbAuthor: Sergei Golubchik <serg@mariadb.org> Date: Mon May 26 21:14:33 2014 +0200 Merge remote-tracking branch 'origin/10.1' into 10.1-serg-merge commit6a85b10dcbMerge:1016ee9d774e68fafad4Author: Sergei Golubchik <sergii@pisem.net> Date: Mon May 26 21:11:53 2014 +0200 merge the compilation fixes from 10.0-FusionIO commit4e68fafad4Author: Sergei Golubchik <sergii@pisem.net> Date: Mon May 26 20:42:06 2014 +0200 compilation failure on Win64 cannot use &ulint_var (where ulint == unsigned __int64) where (ulong *) is expected (in uncompress() and in "%lu") commit8eaa1d90a4Author: Sergei Golubchik <sergii@pisem.net> Date: Mon May 26 20:41:10 2014 +0200 use ENUM not ULONG for innodb-compression-algorithm command-line option commit5035495108Author: Sergei Golubchik <sergii@pisem.net> Date: Mon May 26 20:31:03 2014 +0200 compilation failure on Windows VS doesn't like #ifdefs inside a macro expansion. move them outside commit7e7e1bf8aaAuthor: Sergei Golubchik <sergii@pisem.net> Date: Mon May 26 20:27:14 2014 +0200 don't include the file that 1) not present everywhere 2) not used anyway commit9ad97c4b1eAuthor: Sergei Golubchik <sergii@pisem.net> Date: Mon May 26 20:26:51 2014 +0200 temporarily disable lzo compression commit45d389fb84Author: Sergei Golubchik <sergii@pisem.net> Date: Mon May 26 20:26:04 2014 +0200 lzo.cmake: don't use the same symbol for two different tests commitac4d78432eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun May 25 17:20:15 2014 +0200 more files in .gitignore commiteef1201bccAuthor: Sergei Golubchik <serg@mariadb.org> Date: Sun May 25 17:17:50 2014 +0200 set version to 10.1.0 commitc2b9d993e3Merge:a85186d7ab1016ee9d77Author: Sergei Golubchik <serg@mariadb.org> Date: Sun May 25 10:18:07 2014 +0200 Merge branch '10.1' of bzr::/usr/home/serg/Abk/mysql into 10.1 commit86e73576ddAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Sun May 25 00:23:17 2014 -0400 Setting the "Standards-Version" in Debian control file back to 3.8.3. commitbd5ca5e609Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Sun May 25 00:18:26 2014 -0400 MDEV#6211: MariaDB-Galera-server uses 'socat', but 'socat' is not in the dependency list Added socat, grep, gawk, iproute, coreutils, findutils to the dependency list. commit0f10b12b1cAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Sun May 25 00:07:25 2014 -0400 MDEV#6211: MariaDB-Galera-server uses 'socat', but 'socat' is not in the dependency list Added socat, grep, gawk, iproute, coreutils, findutils to the dependency list. commit1016ee9d77Merge:105060e307edf1fbd25bAuthor: Jan Lindström <jplindst@mariadb.org> Date: Sat May 24 21:37:21 2014 +0300 Merge 10.0 -> 10.1 commita85186d7abAuthor: Sergei Golubchik <serg@mariadb.org> Date: Fri May 23 16:40:10 2014 +0200 split README into the actual README and third-party licenses commita8e1fa173eAuthor: Sergei Golubchik <serg@mariadb.org> Date: Thu May 22 11:08:14 2014 +0200 fix file_contents to pass with git commit3e48269f2aAuthor: Sergei Golubchik <serg@mariadb.org> Date: Wed May 21 15:30:06 2014 +0200 git support in cmake files commit05df71abd9Author: Sergei Golubchik <serg@mariadb.org> Date: Wed May 21 14:50:01 2014 +0200 remove support for per-plugin bzr repositories we don't have closed-source plugins commit91128dd9f3Author: Sergei Golubchik <serg@mariadb.org> Date: Sat May 24 12:14:06 2014 +0200 remove now-obsolete "5.5+5.6 merge" TODO file commitc39a10bba3Author: Sergei Golubchik <serg@mariadb.org> Date: Sat May 24 12:13:03 2014 +0200 add .gitignore commit6d460760ebAuthor: Jan Lindström <jplindst@mariadb.org> Date: Fri May 23 08:20:43 2014 +0300 Fix compiler warnings. commit105060e307Author: Jan Lindström <jplindst@mariadb.org> Date: Fri May 23 08:10:54 2014 +0300 Fix compiler warnings. commitab4947463eAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu May 22 18:31:04 2014 -0400 Merging changes from maria-5.5-galera and some test fixes. bzr merge -r3479..3493 maria-5.5-galera commit76c6cd0337Author: Jan Lindström <jplindst@mariadb.org> Date: Thu May 22 21:05:35 2014 +0300 Fixed compiler error if LZO is not installed. commit192790e0e9Author: Jan Lindström <jplindst@mariadb.org> Date: Thu May 22 21:03:26 2014 +0300 Fix compiler error if LZO is not installed. commita64daceb59Author: Jan Lindström <jplindst@mariadb.org> Date: Thu May 22 19:48:34 2014 +0300 Fixed compiler errors caused by merge error. commitff3f63c31fAuthor: Jan Lindström <jplindst@mariadb.org> Date: Thu May 22 19:01:41 2014 +0300 Fix compiler errors caused by merge error. commitb5cdc5adcfAuthor: Jan Lindström <jplindst@mariadb.org> Date: Thu May 22 16:31:31 2014 +0300 Fix some compiler warnings and small errors on code. commitd12dbe77e2Merge:9d399c9f35972a14b59aAuthor: Jan Lindström <jplindst@mariadb.org> Date: Thu May 22 14:24:00 2014 +0300 MDEV-6246: Merge 10.0.10-FusionIO to 10.1. commit0bf3ed12a5Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 21 18:10:43 2014 -0400 bzr merge -r4089..4091 codership/5.6 commit0b98d2fd2aAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 21 17:07:17 2014 -0400 bzr merge -r4065..4088 codership/5.6 commit0903e2b744Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 21 16:03:58 2014 -0400 Fix for a segfault. commit645d402544Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 21 15:16:15 2014 -0400 Fix for a build failure. commit81a85ad8d7Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 21 15:04:13 2014 -0400 bzr merge -r3985..3991 codership/5.5 commit99df0fbad5Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 21 14:32:57 2014 -0400 bzr merge -r3968..3984 codership/5.5 (non-Innodb changes only). commit8a6f4e198aAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 21 12:09:31 2014 -0400 Updated wsrep.variables result. commit8597170772Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 21 11:59:33 2014 -0400 Added test for MDEV#4953. commit2f90221ad4Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 21 11:23:59 2014 -0400 Fixed a segfault issue by initializing thd's system_thread_info in wsrep applier threads, introduced by MDEV#6156. commit086af8367eMerge:558995ad841170a54060Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed May 21 11:09:55 2014 -0400 bzr merge -r4209 maria/10.0. commit972a14b59aAuthor: Jan Lindström <jplindst@mariadb.org> Date: Fri May 16 15:30:13 2014 +0300 Code cleanup after review. commit9d399c9f35Author: Jan Lindström <jplindst@mariadb.org> Date: Tue May 13 13:28:57 2014 +0300 MDEV-6075: Allow > 16K pages on InnoDB This patch allows up to 64K pages for tables with DYNAMIC, COMPACT and REDUNDANT row types. Tables with COMPRESSED row type allows still only <= 16K page size. Note that single row size must be still <= 16K and max key length is not affected. commit50d1e45cd4Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon May 12 12:45:02 2014 -0400 MDEV#5925: New mariadb-galera-test packages Added logic for generation of 'galera' test packages. commit558995ad84Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon May 12 12:14:27 2014 -0400 MDEV#5942 (Issue 1), MDEV#5903 Updated MYSQL_ADD_PLUGIN cmake macro so that for wsrep builds (WITH_WSREP), components not specified explicitly under CPACK_COMPONENTS_ALL does not get packaged. This is to avoid generation of extra packages for wsrep (galera) build. commit00b6fff2e7Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu May 8 14:45:00 2014 -0400 MDEV#6206: wsrep_slave_threads subtracts from max_connections Decoupled wsrep thread count from connection count. By doing so, the number of wsrep threads (applier/rollbacker) would no longer affect the threads_connected status variable and thus maximum allowable user connections limit would be @@max_connections. Also introduced a new status variable 'wsrep_thread_count' to hold the number of wsrep applier/rollbacker threads. Added a test case. commit0eb84da147Merge:b186575fc04a84ee1c25Author: Sergey Petrunya <psergey@askmonty.org> Date: Thu May 8 13:09:15 2014 +0400 Merge 10.0 -> 10.1 commit93a403bf1dAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Sat May 3 23:53:19 2014 -0400 Fix for build failure when WITH_WSREP=OFF. commit5ef55e2c1bAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Sat May 3 12:58:40 2014 -0400 Added galera, wsrep suites to the default mtr suite list. commit68a0f28defAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Sat May 3 09:18:11 2014 -0400 MDEV-6204: wsrep_sst_rsync timeout when lsof is not installed * Added a check for lsof * Added rsync & lsof to debian dependency list. * Merged r3982 from codership-mysql/wsrep-5.5. commit3061aa4eadAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu May 1 19:19:48 2014 -0400 MDEV-6196 MTR: Do not hardcode path for libgalera_smm.so Introduced an environment variable WSREP_PROVIDER to point to the galera library. Updated the tests. commitbdeb847e9bAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Apr 30 15:40:00 2014 -0400 MDEV-6192 [Warning] Failed to load slave replication state from table mysql.gtid_slave_pos: 1286: Unknown storage engine 'InnoDB' Removed 'loose-innodb' option from mysqld booststrap command in debian post-installation script. commit4515a6d31eAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Apr 28 10:33:22 2014 -0400 MDEV#6148 : Updating auto_increment_offset_func.result. commitd6afa8004eAuthor: Jan Lindström <jplindst@mariadb.org> Date: Mon Apr 28 07:52:41 2014 +0300 Fixed small error on compression failure error text. commit29466e2c85Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Apr 25 18:23:14 2014 -0400 * Adding wsrep_sst_xtrabackup-v2 to deb server files * Updated .bzrignore commitf36e3d0dabAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Apr 25 16:14:22 2014 -0400 MDEV#6148 : Updating test result. commit98519db341Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Apr 25 10:58:51 2014 -0400 MDEV#6171: Fix error message for split-brain Using my_message() (instead of my_error()) to send error message to the client. commit2ab559023aAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Apr 24 22:52:07 2014 -0400 Fixing file paths in @TOKUDB_DEB_FILES@. commitb186575fc0Merge:0fcddbc2ae010971a761Author: Igor Babaev <igor@askmonty.org> Date: Wed Apr 23 23:14:29 2014 -0700 Merge 10.0->10.1 commit2d340f9a67Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Apr 23 19:23:11 2014 +0300 Fixed bug on free buffer space calculation when LZO is used. Fixed bug on function call when InnoDB plugin is used. commit1950457c14Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Apr 21 21:45:19 2014 -0400 MDEV#6148 main.flush_read_lock fails due to conflicting read lock TOI was being attempted even when WSREP_ON was not enabled (off). So, with FTWRL in place TOI later gets aborted & thus the failure. Fixed by adding a check to skip TOI if wsrep is not enabled. commitb981c7a927Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Apr 18 19:16:46 2014 -0400 Updated WSREP_PATCH_REVNO. commitdee153c1b8Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Apr 18 16:56:44 2014 -0400 * Removed unnecessary duplicate script files. * Updated failing mtr tests. commit11324465e0Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Apr 18 07:51:52 2014 +0300 Merge lp:maria/5.5 up to mariadb-5.5.37 revision 4148. commit43a9e65547Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Apr 17 14:10:22 2014 -0400 MDEV#6132: yum update for MGC-10.0 fails (10.0.7 -> 10.0.10) Fixed the incorrect sed command. commit271ea3c86eMerge:2f46e5b9fc41a2ca5c16Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Apr 17 08:22:54 2014 +0300 Merge lp:maria/10.0 up to mariadb-10.0.10 revision 4140. commitb11be05255Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Apr 16 13:04:03 2014 -0400 MDEV#6079: xtrabackup SST failing with maria-10.0-galera Added logic to skip changing of case for wsrep status variable names. commit2f46e5b9fcAuthor: Jan Lindström <jplindst@mariadb.org> Date: Wed Apr 16 16:55:36 2014 +0300 MDEV-6070: FusionIO: Failure to create a table with ATOMIC_WRITES option leaves the database in inconsistent state, Analysis: Problem was that atomic writes variable had incorrect type on same places leading to fact that e.g. OFF option was not regognized. Furthermore, some error check code was missing from both InnoDB and XtraDB engines. Finally, when table is created we have already created the .ibd file and if we can't set atomic writes it stays there. Fix: Fix atomic writes variable type to ulint as it should be. Fix: Add proper error code checking on os errors on both InnoDB and XtraDB Fix: Remove the .idb file when atomic writes can't be enabled to a new table. commitfa18dc3944Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Apr 16 13:08:29 2014 +0300 Merge lp:codership-mysql/5.5 -r3961..3980. commit150e88e8c9Merge:983366e0ee142c20eda9Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Apr 16 12:13:43 2014 +0300 Merge from lp:maria/5.5 to maria-5.5.37 release revision 4154. commiteec6222a89Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Apr 15 22:31:08 2014 -0400 Adding wsrep_sst_xtrabackup-v2 to the list of files in mariadb-galera-server package. commitdf1ee18c27Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Apr 15 22:16:11 2014 -0400 Fix for build failure. commit99838736bcAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Apr 15 14:27:45 2014 -0400 MDEV#6098 mysqldump sst fails on maria-10.0-galera * Removed the unnecessary call to wsrep_cleanup_progress_file, which was returning code 1 and eventually causing SST to fail. * Also initialized the unused WSREP_SST_OPT_CONF to avoid error message. commit13c73c31c3Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Apr 15 14:28:25 2014 +0300 Added support for LZO compression method. Removed: innodb_use_lz4 configuration parameter Added: innodb_compression_algorithm configuration parameter 0 = no compression, 1 = ZLIB, 2 = LZ4, 3 = LZO Fixed issue with incorrect trim calculations commit24ad467d7fAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Apr 11 13:20:13 2014 -0400 MDEV#6077 : mysqldump sst fails on maria-10.0-galera * As @@have_csv has been removed from 10.0, this patch uses I_S instead to check for the availablilty of CSV engine. * Fixed the client version. commit4a6f27ad16Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Apr 10 23:27:08 2014 -0400 Removing unnecessary extra copies of wsrep_sst_xxx scripts. commit3afc413112Merge:ba7f73f0679d911608f1Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Apr 9 13:50:06 2014 -0400 Local merge (mariadb-galera-10.0.10). commit9d911608f1Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Apr 9 12:25:47 2014 -0400 Fixes for some test failures. commit4213263101Merge:9d2e90f37941a2ca5c16Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Apr 8 10:36:34 2014 -0400 Merging mariadb-10.0.10. * bzr merge -rtag:mariadb-10.0.10 maria/10.0. commitba7f73f067Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Apr 2 22:35:12 2014 -0400 * Merging fix for lp:1224775 * Removing duplicate code commit88765c3b4dAuthor: Jan Lindström <jplindst@mariadb.org> Date: Sat Mar 29 16:51:28 2014 +0200 Disable failing test cases that fail because of upstream. commitf4defb0b7bAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sat Mar 29 13:34:50 2014 +0200 References: lp:1299430 - initial support for tokudb replication in master-slave model commit9d2e90f379Merge:02ba2bfdb4a500865c13Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Mar 28 08:26:08 2014 -0400 Merged revision 3471, 3472 & 3473 from maria-5.5-galera. commit3b61030dc1Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Mar 28 08:42:53 2014 +0200 Fix error on innodb_mtflush_threads parameter. commit02ba2bfdb4Merge:09e3094945c5f7486654Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Mar 27 16:26:00 2014 -0400 Merging revision from codership-mysql/5.5 (r3928..3968) and codership-mysql/5.6 (r4021..4065). - Also contains fixes for some build failures. commita500865c13Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Mar 27 16:22:57 2014 -0400 Merged revision 3471, 3472 & 3473 from maria-5.5-galera. commit43c6c2ac77Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Mar 27 08:22:29 2014 -0400 Merged r3468 from maria-5.5-galera. commit7fd382f117Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Mar 27 08:17:24 2014 -0400 Merged r3466 from maria-5.5-galera. commit0b92fe9c18Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Mar 27 12:21:16 2014 +0200 Fixed windows compiler errors. commit8fb80a58bfAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Mar 27 10:56:11 2014 +0200 References lp:1280896 - merged the fix from wsrep-5.6 skipping secondary index dupkey checks for applier commitcd8c3b74bdMerge:f761835b5c5027338039Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Mar 27 10:00:30 2014 +0200 Fix bug https://code.launchpad.net/~laurynas-biveinis/percona-server/bug1295268 (Inadequate background LRU flushing for write workloads with InnoDB compression). If InnoDB compression is used and the workload has writes, the following situation is possible. The LRU flusher issues an LRU flush request for an instance. buf_do_LRU_batch decides to perform unzip_LRU eviction and this eviction might fully satisfy the request. Then buf_flush_LRU_tail checks the number of flushed pages in the last iteration, finds it to be zero, and wrongly decides not to flush that instance anymore. Fixed by maintaining unzip_LRU eviction counter in struct flush_counter_t variables, and checking it in buf_flush_LRU_tail when deciding whether to stop flushing the current instance. Fix provided by: Laurynas Biveinis (Percona) Added test cases for new configuration files to get mysql-test-run suite sys_vars to pass. Fix some small errors. commit5027338039Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Mar 27 09:35:24 2014 +0200 Fix bug https://code.launchpad.net/~laurynas-biveinis/percona-server/bug1295268 (Inadequate background LRU flushing for write workloads with InnoDB compression). If InnoDB compression is used and the workload has writes, the following situation is possible. The LRU flusher issues an LRU flush request for an instance. buf_do_LRU_batch decides to perform unzip_LRU eviction and this eviction might fully satisfy the request. Then buf_flush_LRU_tail checks the number of flushed pages in the last iteration, finds it to be zero, and wrongly decides not to flush that instance anymore. Fixed by maintaining unzip_LRU eviction counter in struct flush_counter_t variables, and checking it in buf_flush_LRU_tail when deciding whether to stop flushing the current instance. Added test cases for new configuration files to get mysql-test-run suite sys_vars to pass. Fix some small errors. commit09e3094945Merge:c509f48b8e71dafbf9c2Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Mar 26 15:17:51 2014 -0400 Merging wsrep specific changes from InnoDB to xtradb (r3683..3808). commitc509f48b8eMerge:7b57c5ea6f90e4f7f9d3Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Mar 26 14:32:51 2014 -0400 Merging mariadb-10.0.9. * bzr merge -rtag:mariadb-10.0.9 maria/10.0. commit90e4f7f9d3Merge:586fab72f05b7cab8219Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Mar 26 14:27:24 2014 -0400 * bzr merge -rtag:mariadb-10.0.9 maria/10.0 * Fix for post-merge build failures. commitc5f7486654Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Mar 26 14:13:12 2014 -0400 bzr merge -r4062..4065 codership/5.6 commit71dafbf9c2Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Mar 26 14:04:50 2014 -0400 Merging InnoDB changes to xtradb (r3783..3808). commitb5871a51e9Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Mar 26 11:12:38 2014 -0400 * bzr merge -r4027..4061 codership/5.6 * Merged Innodb changes to xtradb commit7d892f69a5Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Mar 25 23:13:30 2014 -0400 bzr merge -r4021..4026 codership-mysql/5.6. commit0a6924a3f3Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Mar 25 17:02:57 2014 -0400 Updated WSREP_PATCH_REVNO. commit899f9801d4Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Mar 25 17:01:05 2014 -0400 bzr merge -r3946..3968 codership/5.5 commitf761835b5cAuthor: Jan Lindström <jplindst@mariadb.org> Date: Tue Mar 25 21:31:27 2014 +0200 Fix candidate for XtraDB and row compressed tables. commit3088d52c20Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Mar 25 14:42:15 2014 -0400 bzr merge -r3933..3945 codership/5.5 (Non-InnoDB changes only). commit3c0b3babd9Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Mar 25 13:39:12 2014 -0400 bzr merge -r3928..3932 codership/5.5 commit586fab72f0Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Mar 24 16:40:24 2014 -0400 Merging deb/rpm script changes from maria-5.5-galera. commita81f8fd580Author: Jan Lindström <jplindst@mariadb.org> Date: Sat Mar 22 11:30:03 2014 +0200 Fix test cases to contain new status variables introduced. commit6a756b3a44Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Mar 21 15:46:36 2014 +0200 Code cleanup: Removed some unnecessary outputs from standard builds (available on special builds UNIV_PAGECOMPRESS_DEBUG and UNIV_MTFLUSH_DEBUG). Added a new status variable compress_pages_page_compression_error to count possible compression errors. commit983366e0eeAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Mar 20 18:33:23 2014 -0400 MDEV#5903 mariadb-galera tree builds too many rpm packages Modified the components list to make sure that only server package gets generated. commit7b57c5ea6fAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Mar 20 16:03:20 2014 +0200 References: https://mariadb.atlassian.net/browse/MDEV-5908 - moved releasing of wsrep THD mutex and thd->awake later, so that wsrep->abort_pre_commit() is guaranteed to run for a thread which is still in conflict state commit4154f3aa05Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Mar 14 17:54:53 2014 -0400 Modified debian scripts to make galera packages self-contained. commit8a99be643cAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Mar 14 17:52:55 2014 -0400 Modified debian scripts to make galera packages self-contained. commitff0f41974cAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Mar 13 11:56:37 2014 -0400 Debian script fixes. commitd395440d0fAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Mar 13 11:51:31 2014 -0400 Debian script fixes. commit3ea72a2ba9Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Mar 12 14:47:38 2014 +0200 Removed options innodb_compress_index_pages and innodb_trim_pct. Both are unnecessary. There is a lot more index pages than there is normal pages. Earlier all pages were compressed and this provided best performance and compression ratio. Added status variable to show how many non index pages are written. commit57ba177dafAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Mar 11 23:12:18 2014 -0400 MDEV#5812 Memory leaks while running mysqld in bootstrap mode Added calls to deinit functions at appropriate places. commit0fcddbc2aeAuthor: Jan Lindström <jplindst@mariadb.org> Date: Tue Mar 11 13:49:52 2014 +0200 Added multi-key unique test case. commit4e02c2fe56Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Mar 11 13:40:29 2014 +0200 MDEV-5335: Force PK option. Added a new dynamic configuration variable innodb_force_primary_key default off. If option is true, create table without primary key or unique key where all keyparts are NOT NULL is not accepted. Instead an error message is printed. Variable value can be changed with set global innodb_force_primary_key = <value>. commite7df30b8ddMerge:c556b9d8175b7cab8219Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Mar 11 07:57:54 2014 +0200 Merge lp:maria/10.0 up to revision 4040 = MariaDB 10.0.9 RC commitc556b9d817Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Mar 7 08:20:43 2014 +0200 Changed so that innodb_compress_index pages means that if true also index pages are compressed if false index pages are not compressed. Fixed small output error when page_compression_level was incorrectly given. commit67cb55c51dMerge:3a4b8879e5b95c8ce530Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Mar 7 07:42:28 2014 +0200 Merge lp:maria/10.0 up to revision 4032 (10.0.9). commit653ef22336Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Mar 6 18:44:16 2014 -0500 MDEV#5687: Maria doesn't shutdown following upgrade to 5.5.35-galera Restored patch for MDEV#4136 and added a test. commit27c09524ebAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Mar 4 22:10:28 2014 -0500 MDEV#5790 : SHOW GLOBAL STATUS LIKE does not show the correct list of variables when using "_" Fixed the type for offending "wsrep", wrongly set to SHOW_SIMPLE_FUNC. Added a test case. commit3a4b8879e5Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Mar 4 20:12:32 2014 +0200 Set index page page compression on by default and remove innodb_trim_pct as it is not used/implemented. commitd64fa1d651Merge:7322270a055ec49e6452Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Mar 4 18:56:18 2014 +0200 Additional merge to lp:maria/10.0 commit7322270a05Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Mar 4 17:14:08 2014 +0200 Set actual compressed page size also on read code path to buffer pool so that we can later use it to avoid unnecessary trim operations. commitfd38dca5d5Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Mar 3 18:14:29 2014 +0200 Fixed a hang. The core issues is with the heap-thrashing by the individual queue's. Tried to minimize memory allocation from heap whenever it is unnecessary. commit81318f04c8Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Mar 3 15:51:54 2014 +0200 Yet more windows fixes. commite656a8a927Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Mar 3 15:43:38 2014 +0200 Fix windows os_file_write. commitb8e0bc3a67Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Mar 3 15:26:58 2014 +0200 Additional windows fixes. commit6cde211d8dAuthor: Jan Lindström <jplindst@mariadb.org> Date: Mon Mar 3 15:15:00 2014 +0200 Fix typo. commitec45160e3bAuthor: Jan Lindström <jplindst@mariadb.org> Date: Mon Mar 3 15:02:39 2014 +0200 Fix windows compiler erros. commitbe50724d89Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Mar 3 14:45:45 2014 +0200 Fix compiler error on windows. commit96100d6652Merge:b67892cf594b3cf4aa26Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Mar 3 14:27:56 2014 +0200 Merge: lp:maria/10.0 latest. commitb67892cf59Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Mar 3 12:34:33 2014 +0200 Turn all new features off by default. commit689aaab0f8Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Feb 28 23:15:35 2014 -0500 MDEV#5552 Deadlock when inserting NULL column value in column with UNIQUE index References: lp:1276424 commitc3a2394641Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Feb 28 13:56:08 2014 -0500 * Merged revisions 3945, 3946..3950, 3951..3961 from codership-mysql/5.5. * Merged changes in innobase to xtradb. * Updated WSREP_PATCH_REVNO. commite667c0f926Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Feb 28 09:05:36 2014 +0200 Fix compiler error. commitc88a0d48c6Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Feb 28 08:53:09 2014 +0200 Temporal fix for flush thread hang. Added option to disable multi-threaded flush with innodb_use_mtflush = 0 option, by default multi-threaded flush is used. Updated innochecksum tool, still it does not support new checksums. commit87910f7d30Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Feb 27 17:56:28 2014 -0500 MDEV#5759 Init script contains syntax error Fixed the init script. commitb620e7368fAuthor: Jan Lindström <jplindst@mariadb.org> Date: Wed Feb 26 19:00:24 2014 +0200 Small fixes to work_item handling. commitae6e1548cbMerge:e36fe045c0ff2e82f4a1Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Feb 25 17:49:41 2014 -0500 Merge from maria/5.5 (-rtag:mariadb-5.5.36). commite36fe045c0Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Tue Feb 25 13:13:39 2014 -0500 Added MTR support for galera. * include/galera_cluster.inc : Configures galera cluster with 2 nodes. * include/galera_init.inc : Opens named connection with all the nodes. * include/galera_end.inc : Closes all the connections. * include/galera_connect.inc : Opens a named connection with a single node. * include/galera_diff.inc : Runs a specified SQL query on all the nodes and diffs the output. commit24235e99d8Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Feb 25 13:15:55 2014 +0200 Fixed memory leak on queue nodes by using local memory heap on normal execution and global memory heap on shutdown. Added a funcition to get work items from queue without waiting and additional info when there is no work to do for a extended periods. commit38471a6d6aAuthor: Jan Lindström <jplindst@mariadb.org> Date: Fri Feb 21 12:51:03 2014 +0200 Remove incorrect trim_len calculation. We have already alligned actual page data write. commit3c77143017Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Feb 21 10:20:18 2014 +0200 Write size was not correctly alligned to SECT_SIZE. This lead to situation where trim corrupted the database. Fixed the issue and added temporal guards against unalligned write/trim. commit6e3fc511c4Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Feb 20 13:49:50 2014 -0500 MDEV #5682 : Incompatible galera / mariadb-galera-server version on Debian Updated galera package version to >=25.2 in Debian/Ubuntu control files. commitfc86a1f4afAuthor: unknown <sanja@montyprogram.com> Date: Thu Feb 20 09:28:18 2014 +0200 Make tokudb working with 10.1 commit5de274c43bAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Wed Feb 19 13:59:10 2014 -0500 Fixed install_macros.cmake to set the correct destination for documentation. commit24bc0314c2Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Feb 19 20:25:55 2014 +0200 Removed unnecessary memory initialization of page compressed buffer and added guard against unalligned trim size. commit25318038a9Author: Jan Lindström <jplindst@mariadb.org> Date: Sat Feb 15 09:51:06 2014 +0200 Fixed hang seen on TPC-C measure phase. We should not use timedwait on threads waiting for a job. They should sleep and let other threads to their work. At shutdown, we know that we put "work" and that is handled as soon as possible. commite6a7a3804dAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Feb 14 17:03:44 2014 -0500 * mysqld_safe could not start server as it failed trying to perform wsrep position recovery. Fixed by correcting the erroneous mysqld command by properly quoting it. * Merged the changes made to Ubuntu rules in previous revision to Debian rules. commit8e476e6cbeAuthor: Nirbhay Choubey <nirbhay@skysql.com> Date: Fri Feb 14 11:38:46 2014 -0500 MDEV#5534: mysql_tzinfo_to_sql generates wrong query mysql_tzinfo_to_sql tries to set wsrep_replicate_myisam as SESSION variable, while its a GLOBAL-only system variable, and thus the resulting sql would fail to load. Fixed by changing the scope to GLOBAL in the SET command. Also added following include files to facilitate testing : * include/have_wsrep.inc * include/not_wsrep.inc * include/have_wsrep_enabled.inc commitcae21c52f6Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Feb 14 15:02:26 2014 +0200 Fix timing on queues, this could clearly lead to starvation. commit9564537cb1Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Thu Feb 13 09:33:04 2014 -0500 Fixes in debian distribution files. commit9c614665eeAuthor: Jan Lindström <jplindst@mariadb.org> Date: Thu Feb 13 12:35:37 2014 +0200 Fixed compiler warnings. commitdfc2950356Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Feb 13 12:23:55 2014 +0200 Fixed small issue with dictionary. commitd17ecff410Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Feb 13 09:13:56 2014 +0200 Fixed issue on data dictionary corruption. Fixed issue on multi-threaded flush at shutdown. Removed unnecessary startup option innodb_compress_pages. Added a new startup option innodb_mtflush_threads, default 8. commitda927da04dAuthor: Jan Lindström <jplindst@mariadb.org> Date: Wed Feb 12 18:00:03 2014 +0200 Fixed issue on atomic writes and system tables. Atomic writes can be used also on system tables but not per table. commit1fa19bf777Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Feb 12 12:52:34 2014 +0200 Fixed issue on atomic writes setup and atomic blobs setup on system tables. commitf6ad325883Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Feb 12 10:55:45 2014 +0200 Code cleanup. Removed those questions that are now addressed. commit184e302ab4Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Feb 12 07:09:06 2014 +0200 Fix compiler error if lz4 is not found on the system. commitfa9f5f63e9Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Feb 11 20:05:09 2014 +0200 Removed unnecessary files and set lz4 under HAVE_LZ4 compiler option using cmake find_library. Fixed bunch of compiler warnings. commitb0ad00df27Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Feb 11 15:03:42 2014 +0200 MDEV-5644: Assertion failure during lock_cancel_waiting_and_release. Analysis: In wsrep case there is two transactions possible trx and conflicting lock owning transaction. Code was handling trx mutexin correctly but not for c_lock->trx case. Fixed by taking clock-trx mutex when needed and releasing trx mutex if it is taken at lower levels. commite0f0f5f6d0Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Feb 10 23:54:18 2014 -0500 Reverting the change erroneously got introduced during merge. commit65f2f289d1Author: Nirbhay Choubey <nirbhay@skysql.com> Date: Mon Feb 10 09:22:24 2014 -0500 MDEV#5626 : Cannot install InnoDB/XtraDB plugin (undefined symbol: wsrep_md5_update) Refactored wsrep's md5 related code so that Innodb/xtradb no longer relies on mysys_ssl for md5 implementation. commitaaf3063d0dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Feb 7 09:14:43 2014 -0500 Dummy empty revision (to trigger bb). commita5cf3a800eAuthor: Jan Lindström <jplindst@mariadb.org> Date: Fri Feb 7 15:31:31 2014 +0200 Merged latest mt-flush code to xtradb. Cleaned up thread statistic output code. commit18353c6a4dAuthor: Jan Lindström <jplindst@mariadb.org> Date: Thu Feb 6 17:49:55 2014 +0200 Fixed issue on file space extension. File space should be extended from current offset to desired size if posix_fallocate is used. commit7f3950a2aeAuthor: Jan Lindström <jplindst@mariadb.org> Date: Thu Feb 6 17:25:26 2014 +0200 Moved mt-flush code to buf0mtflu.[cc|h] and cleaned it up. This is for InnoDB. commit195e08940eAuthor: Sergey Petrunya <psergey@askmonty.org> Date: Thu Feb 6 00:14:15 2014 +0400 Change version number to 10.1 commit921d87d47cAuthor: Jan Lindström <jplindst@mariadb.org> Date: Wed Feb 5 15:32:29 2014 +0200 Fixed issue on xtradb shutdown merge error. Multi-threaded flush threads where not shut down properly. commit4cb029b38bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Feb 5 00:28:11 2014 -0500 * Merged the missing revision 3934 from codership-mysql/5.5 (missed in the last merge). * Merged changes from Innodb to xtradb. * Updated WSREP_PATCH_REVNO commit862b034488Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Feb 4 20:08:59 2014 +0200 Fixed compiler errors. commit55fab3dbf4Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Feb 4 14:52:02 2014 +0200 Fixed issue on atomic writes on startup, removed incorrect assert. Fixed issue on file space extend when posix_fallocate is used. Merged second iteration of multi-threaded flush code. commit7ca53d9479Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Feb 3 22:55:46 2014 -0500 Merging revisions 3934..3944 from codership-mysql/5.5. commit324544ea64Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Feb 3 17:14:38 2014 -0500 Fix for main.commit test. commit8c5d5bc5deAuthor: Jan Lindström <jplindst@mariadb.org> Date: Mon Feb 3 10:08:15 2014 +0200 Fixed merge error on InnoDB page compression level handling. Merged page compression feature to XtraDB storage engine. Added feature where page compression can use lz4 compression method (innodb_use_lz4, default OFF). commit4d254ef4f2Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jan 30 20:27:01 2014 -0500 * Fixed debian dist file names. * Fixed failing test results. * Updated tztime.cc (lp:1161432). commit30b6b39d0bAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jan 30 19:08:00 2014 -0500 Updating test result. commit4a6be51f78Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jan 30 12:45:38 2014 -0500 * Merged revisions: 3431, 3435..3457, 3459, 3460 from maria-5.5-galera. * Fixed Debian/Ubuntu dist files. * Fixed some compiler warnings. commitecc2c96c9dMerge:d2c72da6106b6d40fa6cAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Wed Jan 29 19:00:43 2014 -0500 Merge of maria/5.5 into maria-5.5-galera. bzr merge -r tag:mariadb-5.5.35 maria/5.5 commit5b6a4f25a5Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Jan 29 08:54:17 2014 +0200 Fixed issue on wsrep_kill_victim mutexing order error. Furthermore, fixed merge errors found on mysql-test suite testing. commit86d470386bAuthor: Jan Lindström <jplindst@mariadb.org> Date: Tue Jan 28 09:48:51 2014 +0200 Fixed issue with extra status lines Wsrep_local_bf_aborts at SHOW GLOBAL STATUS LIKE 'x'; where x != wsrep_local_bf_aborts by changing it as SHOW_SIMPLE_FUNC from SHOW_FUNC. commitfebe99ec8dMerge:58ce55134f02765f4c61Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Jan 27 13:00:36 2014 +0200 Merge lp:maria/10.0 10.0.7 revision 3961 commitd43afb8828Merge:d0f77b836102765f4c61Author: Jan Lindström <jplindst@mariadb.org> Date: Sat Jan 25 11:02:49 2014 +0200 Merge MariaDB-10.0.7 revision 3961. commitd2c72da610Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jan 23 15:57:47 2014 -0500 The bzr revision visible in @@version_comment should represent the last merged revision from codership branch and not the revision of the MGC tree itself. Fixed by adding a cmake variable to hold the revision number of last merged revision from codership branch. commitd0f77b8361Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Jan 20 12:17:31 2014 +0200 Fixed issue with retrying autocommitted transactions. We might need to clean up the explain structure in this case. commitcaa1b783bdAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Fri Jan 17 13:55:09 2014 +0200 Fixed one compiler warning in wsrep_applier.cc commita8dbf680e6Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Fri Jan 17 13:28:43 2014 +0200 Added missing files commit58ce55134fAuthor: Jan Lindström <jplindst@mariadb.org> Date: Mon Jan 13 15:02:31 2014 +0200 Removed some unnecessary assertions to debug build and enhanced the page_compression and page_compression_level fetch. commitec8257216eAuthor: Jan Lindström <jplindst@mariadb.org> Date: Fri Jan 10 12:11:36 2014 +0200 Enhancement: Change atomic_writes table option to enum type. Now every file can either use atomic writes, not use it or use default. SYNTAX: ATOMIC_WRITES=['DEFAULT','ON','OFF'] Idea here is to be able to define innodb_doublewrite = 1 but with following rules: ATOMIC_WRITES='DEFAULT' - if innodb_use_atomic_writes = 1, we do not write to doublewrite buffer the changes if innodb_use_atomic_writes = 0, we write to doublewrite buffer ATOMIC_WRITES='ON' - do not write to doublewrite buffer ATOMIC_WRITES='OFF' - write to doublewrite buffer Note that doublewrite buffer can't be used if innodb_doublewrite = 0. commit9d5c3731beAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jan 9 23:22:10 2014 -0500 Fixes for some compiler warnings. commit31eaa90a6eAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Jan 9 14:54:57 2014 -0500 Merging revision 3839..3932 from codership-mysql/5.5. commit2b5a0a2280Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Jan 9 12:33:29 2014 +0200 Feature: In first write if we trim we set write_size to actual bytes written and rest of the page is trimmed. In following writes there is no need to trim again if write_size only increases because rest of the page is already trimmed. If actual write size decreases we need to trim again. Need to research if this can happen frequently enough to make any effect. commite80f2468b4Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Jan 9 08:30:09 2014 +0200 Fixed issues with atomic writes and compressed pages. Temporal solution: In directFS using atomic writes we must use posix_fallocate to extend the file because pwrite past end of file fails but when compression is used the file pages must be physically initialized with zeroes, thus after file extend with posix_fallocate we still write empty pages to file. commitf6a196555eAuthor: Jan Lindström <jplindst@mariadb.org> Date: Fri Dec 20 08:59:34 2013 +0200 Temporally disable posix_fallocate on os_file_set_size because currently Fusion-io SSD drive does not support setting file size without fysically writing pages with zeroes when fallocate with PUCH_HOLE is used. Added additional error message if atomic write setup does not succeed. commitf023715fe8Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Dec 20 06:50:58 2013 +0200 Need to disable fast file extension with posix_fallocate for Fusion-io currently. commit9ba590930aAuthor: Jan Lindström <jplindst@mariadb.org> Date: Thu Dec 19 18:04:26 2013 +0200 Atomic writes require also atomic_blobs. Add that missing flag to dictionary setting and from there it will be stored to table space. commit5e55d1ced5Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Dec 19 14:36:38 2013 +0200 Changes for Fusion-io multi-threaded flush, page compressed tables and tables using atomic write/table. This is work in progress and some parts are at most POC quality. commit088c069462Author: Sergei Golubchik <sergii@pisem.net> Date: Wed Dec 11 21:09:18 2013 +0100 fix debian builds commitea6f92662cAuthor: Jan Lindström <jplindst@mariadb.org> Date: Wed Dec 11 10:45:49 2013 +0200 MDEV-5430: Debian MariaDB-Galera packages do not get built in buildbot [Part 4] Missed one file name change. commit92a15782f9Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Dec 11 09:38:21 2013 +0200 MDEV-5428: Debian MariaDB-Galera packages do not get built in buildbot [Part 3] Missed one lintian rule. commit48e83ba6f7Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Dec 10 22:11:42 2013 -0500 * Updated auto_increment_xxx_func.result to reflect the changes made by https://bugs.launchpad.net/codership-mysql/+bug/587170 * Fix for some compiler errors/warnings. commite1ed3dcebfAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Tue Dec 10 11:30:23 2013 -0500 MDEV#5407, MDEV#5386, MVED#4222 Problem: As, wsrep_provider is dynamic and can accept a valid provider while server is running. Patch for #4222 wrongly skips the initialization of binlog plugin during server start, when wsrep provider is not specified. In wsrep build, if opt_log_bin is not provided, we still init binlog with wsrep_emulate_bin_log ON. Fix: This patch fixes #4222 by adding a check to return from binlog_savepoint_set without proceeding further if wsrep_on is OFF/false. This patch also fixes MDEV#5407 and reverts changes pushed for MDEV#5386 (no longer valid). commit3ad45220bcAuthor: Jan Lindström <jplindst@mariadb.org> Date: Tue Dec 10 17:45:02 2013 +0200 Additional name fixes. commit170c3c2b21Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Dec 10 10:34:41 2013 +0200 MDEV-5423: Debian MariaDB-Galera packages do not get built in buildbot [Part 2] Fix: Server name is mariadb-galera-5.5 commitded756c90dAuthor: Jan Lindström <jplindst@mariadb.org> Date: Tue Dec 10 10:14:43 2013 +0200 MDEV-5408: Crash in mariadb-wsrep during plugin load at startup Analysis: If wsrep_provider is not specified ("none") the wsrep is not initialized. Fix: Add additional guard not to call wsrep->post_rollback if wsrep_provider is not specified. commit3df2aa9458Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Dec 5 19:22:00 2013 +0200 MDEV-5385: Debian MariaDB-Galera packages do not get built in buildbot Analysis: File names were incorrect for distribution files. Fix: Fixed file names to be same as in 5.5. commitaf2bb9de9dAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Dec 7 12:30:53 2013 -0500 Fix for a failing test. commit8acebe6d63Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Thu Dec 5 10:59:18 2013 -0500 MDEV#5384: Update init script in MariaDB Cluster Reduced the sleep time to 10secs. commitf41ee56df7Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Dec 5 14:53:22 2013 +0200 MDEV-5386: Server crashes in thd_get_ha_data on maria-5.5-galera tree while running 'check testcase before test Analysis: In Galera binlog is not enabled by default in case when wsrep provider is not specified. In this case we should not call thd->binlog_flush_pending_rows_event(TRUE). Fix: Added a additional guard on galera not to call binlog function if wsrep provider is not specified and binlog is not enabled. commit329fb58656Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Dec 4 18:49:40 2013 +0200 MDEV-5385: Debian MariaDB-Galera packages do not get built in buildbot Added missing .in files and updated CMakeLists.txt to contain galera specific files. commited26f70126Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Dec 4 13:46:28 2013 +0200 MDEV-443: Galera: Server crashes on flushing tables for SST if started with character_set_server utf16 or utf32 or ucs2, and with wsrep_sst_method=rsync Analysis: In SST Galera directly calls parser using current client character set. Similarly in BF Galera uses client character set to apply. However, there are character sets that are not currently supported by the parser. Fix: If currenct client character set is one of those that is not supported by the parser, temporally set character set to latin1 before we enter parser and restore it after we have parsed. commiteea69c57b2Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Dec 4 13:42:17 2013 +0200 Fixed additional problem with kernel_mutex. Kernel mutex is also held on lock_rec_other_has_conflicting that will also call (eventually) wsrep_innobase_kill_one_trx. Added a new parameter have_kernel_mutex to mark do we already own kernel mutex or not. commit496e22cf3bMerge:45f484b83826f56089c7Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Dec 4 10:32:43 2013 +0200 merge with MariaDB 5.6 bzr merge lp:maria --rtag:mariadb-10.0.6 and a number of fixes to make this buildable. Run also few short multi-master high conflict rate tests, with no issues commit9379edb63dAuthor: Jan Lindström <jplindst@mariadb.org> Date: Mon Dec 2 08:58:06 2013 +0200 MDEV-4227: Galera server should stop crashing on setting binlog_format STATEMENT Analysis: Currently you can set binlog_format to STATEMENT or MIXED even when they are not really supported by galera. Fix: Produce an error message if binlog_format is set to STATEMENT or MIXED and wsrep_on = ON. Added a test case for this. commit730466b328Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Sat Nov 30 07:46:53 2013 -0500 MDEV#4138: Galera: mysqld_safe doesn't pass on wsrep_provider to mysqld In mysqld_safe script, during the processing of command line options, the supplied wsrep_provider option was not getting appended to the set of mysqld options. Hence, wsrep plugin would never receive the path for wsrep provider. Fixed by adding logic to append the wsrep_provider option to the set of mysqld options. commite4f5e49cd6Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Nov 29 13:03:00 2013 -0500 MDEV#4109: Galera: Valgrind warnings "blocks are still reachable" in wsrep_init_startup on MTR tests The initialization & de-initialization of wsrep plugin is solely controlled by wsrep_on system variable. Now, as wsrep_on is ON by default, the plugin gets initialized during server start. However, there would be a leakage in case wsrep_on is turned off before plugin's deinitialization (while server is shutting down) takes place, in which case the deinit routine will not be invoked. In this particular case, wsrep_on is turned off as no wsrep provider has been specified & thus the valgrind warnings. Fixed by introducing a flag which tracks and now controls the (de|)initialization of the wsrep plugin instead on wsrep_on. Added necessary asserts. main.connect [ pass ] 16534 valgrind_report [ pass ] commit6271c06a73Author: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Nov 29 12:50:31 2013 -0500 MDEV-4222: Assertion `( ((global_system_variables.wsrep_on) && (thd && thd->variables.wsrep_on)) && wsrep_emulate_bin_log) || mysql_bin_log .is_open()' fails on SAVEPOINT with disabled wsrep_provider As wsrep_on system variable is ON by default the binlog handlerton is implicitly enabled during the server initialization phase. Later, while wsrep plugin is getting initialized, wsrep_on in corrected & turned OFF in case wsrep provider is not specified (leaving binlog in ON state!). This leads to the reported assertion. Fixed by adding another check for wsrep provider before binlog is enabled. Added a test case. commit62bd131d06Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Nov 29 12:27:05 2013 +0200 MDEV-4235: Galera: Assertion `0' fails in tdc_remove_table on creating a trigger Analysis: There is two different THD's using the same table. Fix: In galera brute force (BF) exclusive locks are cancelled. Thus other threads could access the same table. Added additional check if this is the case, then we should not assert here. commit45f484b838Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Nov 27 22:20:32 2013 +0200 fixes for wsrep-5.5 merges commit447b19a3bfAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Nov 27 14:45:32 2013 +0200 Ported all remaining storage/innobase changes from lp:codership-mysql/5.6, up tp revision #4021 This is same level as wsrep_25.1 milestone Note: stotage/xtaradb is not upgraded yet commit21bb5cdfb5Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Nov 27 08:43:46 2013 +0200 MDEV-4223: Galera: InnoDB assertion failure !mutex_own(mutex) in file sync0sync.ic line 207 Analysis: Code acquired kernel_mutex when calling wsrep_innobase_kill_one_trx. However, functions below also might take kernel mutex thus the assertion. Fix: Acquire kernel_mutex only for lock_cancel_waiting_and_release where it is really needed. commit964234412bAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Nov 27 01:10:29 2013 +0200 diffed in fix in #3953 from lp:codership-mysql/5.6 commitae8f0eb1eeAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Nov 27 00:54:21 2013 +0200 diffed in the fix from revision #3937 from lp:codership-mysql/5.6 commit9b16346e84Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Nov 27 00:44:10 2013 +0200 bzr merge -c 3921 lp:codership-mysql/5.6 commitb098b7a84cAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Nov 27 00:18:44 2013 +0200 bzr merge -r3904..3928 lp:codership-mysql/5.5 This is now otherwise on level wsrep-25.9, but storage/innobase has not been fully merged wsrep-5.5 is not good source for that, so we probably have to cherry pick innodb changes from wsrep-5.6 commit6422d276faAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Nov 26 22:09:14 2013 +0200 bzr merge -r3895..3903 lp:codership-mysql/5.5 This is just before 5.5.34 merge in wsrep-5.5 branch commit480753972aAuthor: Jan Lindström <jplindst@mariadb.org> Date: Tue Nov 26 20:32:38 2013 +0200 MDEV-4233: Galera: assertion: (lock->trx)->wait_lock == lock fails in file lock0lock.c line 796 Analysis: Assertion means that InnoDB transaction lock queue is not correctly set. Reason seams to be the fact that wrong lock is cancelled. Fix: We have selected c_lock to be cancelled. Thus we should cancel and release lock that is waiting for this lock i.e. c_lock->trx->wait_lock. commit4a11e84414Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Nov 26 17:03:14 2013 +0200 merge from lp:codership-mysql/5.5 rev #3895 commita2594e96f7Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Nov 26 16:48:30 2013 +0200 Merges from lp:codership-mysql/5.5 up to rev #3893, this changes to wsrep API #24 commit88f0e0ebeeAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Mon Nov 25 12:40:08 2013 -0500 MDEV-4108 Compilation warnings with RelWithDebInfo only present in the Galera tree Fix for some compiler warnings. commit071edcfea0Merge:4f85baab95160236f880Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Nov 25 17:14:08 2013 +0200 Merge with MariaDB 5.5.34. commit4f85baab95Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Nov 25 14:04:49 2013 +0200 Merged revisions 3931--3942 from from lp:~codership/codership-mysql/5.5-23. ------------------------------------------------------------ revno: 3942 committer: Seppo Jaakola <seppo.jaakola@codership.com> branch nick: wsrep-5.5-23 timestamp: Thu 2013-11-07 17:37:10 +0200 message: References: lp:1248921 - checking if index is foreign earlier to adhere to lat ch order protocol ------------------------------------------------------------ revno: 3941 fixes bug: https://launchpad.net/bugs/1248908 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Thu 2013-11-07 14:31:04 +0200 message: References lp:1248908 - Fixed access to trx sys header Pass trx sys header as argument for trx_sys_update_wsrep_checkpoint() and trx_sys_update_mysql_binlog_offset() to avoid successive calls to trx_sysf_get(). ------------------------------------------------------------ revno: 3940 fixes bug: https://launchpad.net/bugs/1244100 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Tue 2013-11-05 15:31:12 +0200 message: References lp:1244100 - assign value for check_purge before return ------------------------------------------------------------ revno: 3939 fixes bug: https://launchpad.net/bugs/1247978 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Tue 2013-11-05 01:01:36 +0200 message: References lp:1247978 - force release transactional MDL locks if wsrep is on a nd no active transaction at the end of mysql_execute_command() ------------------------------------------------------------ revno: 3938 committer: Vladislav Klyachin <vladislav.klyachin@codership.com> branch nick: 5.5-23 timestamp: Sun 2013-11-03 20:48:06 +0400 message: References lp:1232789 - fix FLUSH STATUS zeroes up wsrep_cluster_size and wsre p_local_index ------------------------------------------------------------ revno: 3937 5kB/s - committer: Vladislav Klyachin <vladislav.klyachin@codership.com> branch nick: 5.5-23 timestamp: Sun 2013-11-03 17:06:31 +0400 message: References lp:587170 - reset auto_increment_* vars to defaults for TOI operati ons ------------------------------------------------------------ revno: 3936 committer: Vladislav Klyachin <vladislav.klyachin@codership.com> branch nick: 5.5-23 timestamp: Sun 2013-11-03 00:10:45 +0400 message: References lp:1072839 - fix for memory leaks with wsrep variables ------------------------------------------------------------ revno: 3935 committer: Seppo Jaakola <seppo.jaakola@codership.com> branch nick: wsrep-5.5-23 timestamp: Wed 2013-10-30 14:34:32 +0200 message: References: lp:1246257 - skipping replication for CREATE TEMPORARY TABLE LIKE. .. constructs ------------------------------------------------------------ revno: 3934 6kB/s \ fixes bug: https://launchpad.net/bugs/1241760 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Mon 2013-10-28 11:01:53 +0200 message: References lp:1241760 - save thd->db to wsrep_thd_shadow before replay ------------------------------------------------------------ revno: 3933 fixes bug: https://launchpad.net/bugs/1206129 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Sun 2013-10-27 18:15:12 +0200 message: References lp:1206129 - check binlog_hton->commit() return value, call wsrep_p ost_commit() instead of wsrep_cleanup_transaction() ------------------------------------------------------------ revno: 3932 fixes bug: https://launchpad.net/bugs/1244661 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Sun 2013-10-27 13:14:02 +0200 message: References lp:1244661 - added wsrep_register_hton() to trans_rollback_implicit () ------------------------------------------------------------ revno: 3931 fixes bug: https://launchpad.net/bugs/1244667 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Sun 2013-10-27 11:08:49 +0200 message: References lp:1244667 - restore thd->server_status after replay commit0e248e62bdAuthor: Jan Lindström <jplindst@mariadb.org> Date: Mon Nov 25 11:09:48 2013 +0200 Merged revisions 2925--3929 from from lp:~codership/codership-mysql/5.5-23 ------------------------------------------------------------ revno: 3929 [merge] fixes bug: https://launchpad.net/bugs/1243150 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Wed 2013-10-23 20:05:01 +0300 message: 8kB/s - References lp:1243150 - initial wsrep hton cleanups * Removed wsrep_seqno_changed boolean * wsrep_cleanup_transaction() is now called explicitly whenever it is clear that transaction has come to an end * wsrep_trans_cache_is_empty() now checks from cache_mngr recardless of command type * Separated call to wsrep->post_commit() to own function, called from transaction.cc whenever appropriate * wsrep_thd_is_brute_force() now investigates only thd->wsrep_exec_mode * More comments and debug time assertions * Debug code to check that wsrep position stored in InnoDB is monotinically increasing. Enabled with UNIV_DEBUG ------------------------------------------------------------ revno: 3928 fixes bug: https://launchpad.net/bugs/1237889 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Tue 2013-10-22 22:01:20 +0300 message: References lp:1237889 - reverting fix in r3926, it broke crash recovery ------------------------------------------------------------ revno: 3927 fixes bug: https://launchpad.net/bugs/1240040 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Tue 2013-10-15 14:46:15 +0300 message: References lp:1240040 - added WSREP_MYSQL_DB as a key for DROP VIEW ------------------------------------------------------------ revno: 3926 fixes bug: https://launchpad.net/bugs/1237889 committer: Teemu Ollakka <teemu.ollakka@codership.com> branch nick: 5.5-23 timestamp: Thu 2013-10-10 14:22:58 +0300 message: References lp:1237889 - register wsrep hton only if thd->wsrep_exec_mode == LO CAL_STATE ------------------------------------------------------------ revno: 3925 fixes bug: https://launchpad.net/bugs/1235635 committer: Alexey Yurchenko <alexey.yurchenko@codership.com> branch nick: 5.5-23 timestamp: Sat 2013-10-05 18:03:06 +0300 message: References lp:1235635 - fixed the warning by initializing c_lock to NULL. commiteb29ce250aAuthor: Nirbhay Choubey <nirbhay@mariadb.com> Date: Fri Nov 22 14:30:00 2013 -0500 MDEV-3895 Version naming for MariaDB-Galera builds This patch fixes both the reported issues : (1) Included '-wsrep' to the server version information. > select @@version; +-----------------------------+ | @@version | +-----------------------------+ | 5.5.33a-MariaDB-wsrep-debug | +-----------------------------+ (2) The @@version_comment would no longer have XXXX in the wsrep version information in case cmake couldn't determine the current bzr revision. commit2b4183f10bAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Nov 6 00:29:37 2013 +0200 bzr merge -r3890..3891 lp:codership-mysql/5.5 commit9129c8f1d3Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Nov 6 00:02:22 2013 +0200 bzr merge -r3889..3890 lp:codership-mysql/5.5 commiteec8297107Author: Jan Lindström <jplindst@mariadb.org> Date: Tue Oct 15 12:03:57 2013 +0300 Fixed performance schema instrumentation on galera and added correct mutexing when cancelling waiting trx on InnoDB commit1a34a56a9fAuthor: Jan Lindström <jplindst@mariadb.org> Date: Mon Oct 14 11:54:27 2013 +0300 Fix incorrect merge commit8da8c60d0dAuthor: Jan Lindström <jplindst@mariadb.org> Date: Fri Oct 11 16:51:26 2013 +0300 Fix temporary table search commit37b3d94477Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Fri Oct 11 12:28:13 2013 +0300 Merge fix for DDL handling commita0c8679416Author: Jan Lindström <jplindst@mariadb.org> Date: Mon Oct 7 20:18:58 2013 +0300 Added correct mutexing on trx handling. commitf222e7d471Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon Oct 7 11:35:19 2013 +0300 Merge fixes, now at level 3430 in mariadb-galera-5.5 commit61bda9a2f0Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon Oct 7 09:43:19 2013 +0300 Merged revisions 3425..3430 from mariadb-galera-5.5 commit255e20a175Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon Oct 7 08:57:23 2013 +0300 Merged revisions 3418..3424 from mariadb-galera-5.5 commit06a7eeb992Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon Oct 7 00:18:26 2013 +0300 Merged revisions 3411..3417 from mariadb-galera-5.5 commit337fdb80f3Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sun Oct 6 23:59:20 2013 +0300 Merged revisions 3409..3411 from mariadb-galera-5.5 commit089f10feb4Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sun Oct 6 23:54:18 2013 +0300 Merged #3909 from mariadb-galera-5.5 commit20afd6b1c3Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Oct 1 00:28:54 2013 +0300 References lp:587170 - merged fix in from wsrep-5.5-23 branch This branch is now in position 3924 in wsrep-5.5-23 commit4e00dd6861Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon Sep 30 23:14:31 2013 +0300 References: lp:1233353 - releasing explicit MDL locks for BF aborted transactions commit239dcdaa90Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sun Sep 29 23:53:10 2013 +0300 References lp:1232890 - Rows_log_event type cast only for row events commit370a67679cAuthor: Sergei Golubchik <sergii@pisem.net> Date: Fri Sep 27 22:32:49 2013 +0200 revert the change for auto-rpm-packages for plugins. galera tree should only build galera-server package commitdecd08408bAuthor: Jan Lindström <jplindst@mariadb.org> Date: Fri Sep 27 17:07:44 2013 +0300 Fix merge error. commit6a65223193Merge:8ad1b5b10828ec372744Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Sep 27 13:48:58 2013 +0300 mariadb-5.5.33a merge commit8ad1b5b108Author: Jan Lindström <jplindst@mariadb.org> Date: Fri Sep 27 13:01:14 2013 +0300 Updated test results because of new system variables and a new lock variable. commitac5d1d761aAuthor: Jan Lindström <jplindst@mariadb.org> Date: Thu Sep 26 17:51:01 2013 +0300 Merged revisions 3916--3921 from lp:~codership/codership-mysql/5.5-23 ------------------------------------------------------------ revno: 3921 fixes bug: https://launchpad.net/bugs/1228149 committer: Alexey Yurchenko <alexey.yurchenko@codership.com> branch nick: 5.5-23 timestamp: Mon 2013-09-23 18:29:42 +0300 message: References lp:1228149 - fixing typos. ------------------------------------------------------------ revno: 3920 committer: Vladislav Klyachin <vladislav.klyachin@codership.com> branch nick: 5.5-23 timestamp: Fri 2013-09-20 15:43:18 +0400 message: References lp:1201893 - remove setenv("WSREP_LOG_DIR") from ha_innodb.cc ------------------------------------------------------------ revno: 3919 tags: wsrep_23.7.6 fixes bug: https://launchpad.net/bugs/1087368 committer: Alexey Yurchenko <alexey.yurchenko@codership.com> branch nick: 5.5-23 timestamp: Thu 2013-09-19 06:00:43 +0300 message: References lp:1087368 - fix to preserve the order of options in case --wsrep-new-cluster is i n the middle of option list ------------------------------------------------------------ revno: 3918 committer: Alexey Yurchenko <alexey.yurchenko@codership.com> branch nick: 5.5-23\ timestamp: Wed 2013-09-18 23:22:55 +0300 message: bumped wsrep patch version number to 7.6 ------------------------------------------------------------ revno: 3917 committer: Vladislav Klyachin <vladislav.klyachin@codership.com> branch nick: 5.5-23 timestamp: Wed 2013-09-18 20:11:39 +0400 message: References lp:1218944 - wsrep_sst_rsync now recognizes log_group_home_dir ------------------------------------------------------------ revno: 3916 fixes bug: https://launchpad.net/bugs/1224775 committer: Alexey Yurchenko <alexey.yurchenko@codership.com> branch nick: 5.5-23 timestamp: Sun 2013-09-15 21:29:57 +0300 message: References lp:1224775 - reworked wsrep_recover to create temporary log file in $DATADIR. Plus cleaned up that function slightly. commitc72126e043Author: Jan Lindström <jplindst@mariadb.org> Date: Thu Sep 26 16:43:49 2013 +0300 Merge revisions 3907--3914 from lp:~codership/codership-mysql/5.5-23 ------------------------------------------------------------ revno: 3914 3kB/s | committer: Vladislav Klyachin <vladislav.klyachin@codership.com> branch nick: 5.5-23 timestamp: Thu 2013-09-12 15:00:46 +0400 message: References lp:1217653 - fix index-id evaluation of FOREIGN KEY, when referenced table without PRIMARY KEY ------------------------------------------------------------ revno: 3913 committer: Vladislav Klyachin <vladislav.klyachin@codership.com> branch nick: 5.5-23 timestamp: Wed 2013-09-11 13:58:02 +0400 message: References lp:1217653 - fix index-id evaluation of FOREIGN KEY, when referenced table without PRIMARY KEY ------------------------------------------------------------ revno: 3912 committer: Seppo Jaakola <seppo.jaakola@codership.com> branch nick: wsrep-5.5-23 timestamp: Fri 2013-09-06 13:13:48 +0300 message: References: lp:1212955 - releasing MDL after failed BEGIN and "SET AUTOCOMMIT" ------------------------------------------------------------ revno: 3911 committer: Seppo Jaakola <seppo.jaakola@codership.com> branch nick: wsrep-5.5-23 timestamp: Wed 2013-09-04 10:52:31 +0300 message: References: lp:1123233 - avoiding to set wsrep_seqno_changed for replaying transactions Note, also missing transactions don't declare seqno_changed anymore. Earlier they would have caused crash at wsrep_cleanup_transaction phase. ------------------------------------------------------------ revno: 3910 [merge] committer: Vladislav Klyachin <vladislav.klyachin@codership.com> branch nick: 5.5-23 timestamp: Tue 2013-09-03 15:27:02 +0400 message: References lp:1049599 - expose desync functionality to the client ------------------------------------------------------------ revno: 3909 committer: Seppo Jaakola <seppo.jaakola@codership.com> branch nick: wsrep-5.5-23 timestamp: Tue 2013-09-03 09:41:08 +0300 message: References: lp:1123233 - rollback for transaction which has not appended key information ------------------------------------------------------------ revno: 3908 committer: Vladislav Klyachin <vladislav.klyachin@codership.com> branch nick: 5.5-23 timestamp: Sun 2013-09-01 13:29:12 +0400 message: lp:1201893 - fix command for default IP address ------------------------------------------------------------ revno: 3907 committer: Seppo Jaakola <seppo.jaakola@codership.com> branch nick: wsrep-5.5-23 timestamp: Thu 2013-08-29 12:16:42 +0300 message: References: lp:1212955 - releasing transactional MDL locks after commit failures (e.g. certification failure). commitbfbb0ff3bcAuthor: Jan Lindström <jplindst@mariadb.org> Date: Thu Sep 26 14:10:47 2013 +0300 Fixed merge error on rollback to savepoint commit745239fd29Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Sep 25 10:42:05 2013 +0300 After merge fixes commit77fae5af00Author: Sergei Golubchik <sergii@pisem.net> Date: Thu Sep 19 09:21:17 2013 +0200 updated test results commit427daab74fAuthor: Sergei Golubchik <sergii@pisem.net> Date: Wed Sep 18 20:55:58 2013 +0200 fix broken (after merge) galera deb packaging commitc3d635bdc3Author: Sergei Golubchik <sergii@pisem.net> Date: Wed Sep 18 14:59:51 2013 +0200 cmake error on osx commit909775a762Merge:39f82b4e6e6d06ccbe53Author: Sergei Golubchik <sergii@pisem.net> Date: Wed Sep 18 12:00:23 2013 +0200 mariadb-5.5.33 merge commit9c85ced30dAuthor: Jan Lindström <jplindst@mariadb.org> Date: Mon Sep 9 10:38:58 2013 +0300 Merge fix. commit0880db5640Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Sep 4 09:54:40 2013 +0300 Fix merge error commit6e8bfb0b26Author: Jan Lindström <jplindst@mariadb.org> Date: Wed Sep 4 08:47:05 2013 +0300 Fixed merge errors and XA prepare commitba3ff50ab2Merge:81739d308fc8b87ca16fAuthor: Jan Lindström <jplindst@mariadb.org> Date: Tue Sep 3 17:50:36 2013 +0300 Merge 10.0 to galera-10.0 commit39f82b4e6eAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Aug 27 23:40:49 2013 +0300 References: MDEV-4953 Calling ha_start_of_new_statement() for all table handlers under partition engine. This will enable innodb transactions to be declared as read/write. commitf68a7611d1Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Aug 27 09:06:04 2013 +0300 References lp:1216904 - guaranteeing native "create table like.." processing when running without wsrep provider Merged the fix from lp:~codership/codership-mysql/5.5-23, rev 3906 commitc942889d41Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Fri Aug 23 12:21:00 2013 +0300 References: lp:1206129 - Merged revision 3904 from lp:~codership/codership-mysql/5.5-23 enable LOAD DATA transaction splitting Added new global variable: wsrep_load_data_splitting to control if splitting is wanted or not commitfca065f95cAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Aug 21 17:17:30 2013 +0300 Merged with lp:~codership/codership-mysql/5.5-23, up to revision 3903 commit2db87f6516Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Aug 21 16:37:22 2013 +0300 References MDEV-4404 - Added log message to catch information of log event corruption commit4222b2520bMerge:551ad1cf6fc7973615e7Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Aug 21 16:34:31 2013 +0300 Merge with mariadb 5.5: bzr merge lp:maria/5.5 --rtag:mariadb-5.5.32 commit551ad1cf6fAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Aug 7 00:17:16 2013 +0300 Merged FreeBSD compatibility changes (up to revision 3893 in lp:~codership/codership-mysql/5.5-23) commit7cf10ddf8cAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon Aug 5 18:01:05 2013 +0300 References lp:1208493 https://mariadb.atlassian.net/browse/MDEV-4830 Enabling slave applier thread to send COND_thread_count commit81739d308fAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Jul 16 12:09:38 2013 +0300 Initial fixes after mariadb 10 merge, basic replication works now commitdb0cfba638Merge:0a9216835fa057b50490Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sat Jul 13 13:30:03 2013 +0300 Merged with lp:maria revision #3766 commit0a9216835fAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sat Jul 13 13:01:13 2013 +0300 Initial merge result with mariaDB 10: lp:maria commit93ed851cc6Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Jun 20 21:51:11 2013 +0300 References lp:1193079 - bumped wsrep version to 7.5 commit862c6b219eAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Jun 19 10:35:40 2013 +0300 References lp:1191778 - merged xtrabackup SST fixes from PXC commit6793d7f114Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sun Jun 16 20:38:02 2013 +0300 References lp:1134892 - WSREP_DEBUG_PRINT was left on by mistake commit1c09bbfe3dAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sat Jun 15 16:16:38 2013 +0300 References lp:1087368 - merged fix from wsrep-5.5 branch. Note this is compatible only with new wsrep provider #23 libraries, which understand 'bootstrap' address in connecting. commit527ce30cf3Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sat Jun 15 16:15:45 2013 +0300 References: MDEV-4572 - merge with lp:codership-mysql/5.5-23 revisions 3874..3878 commit7d2a0e9da4Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sat Jun 15 16:15:17 2013 +0300 References lp:1108035 - merged fix from http://bazaar.launchpad.net/~percona-core/percona-xtradb-cluster/release-5.5.31/revision/394 commit3fa8559debAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Fri Jun 14 22:01:18 2013 +0500 MDEV-4656 MariaDB-Galera deb packages cannot be built, expected files are missing. Kristian changed the install directory for these files to share/mysql. (that was changeset 3334.1.345 Fix wrong install location for DEB supportfiles.) But dist/mariadb-galera-server.files weren't changed accordingly. Here we fix them. commit4107af8810Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Jun 13 10:22:37 2013 +0300 References: lp:1182441 - merged fix from revision: http://bazaar.launchpad.net/~percona-core/percona-xtradb-cluster/release-5.5.31/revision/416 commitb0d30e234eAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Jun 13 09:55:28 2013 +0300 References lp:1169326 - merged fix from LP wsrep-5.5-23 Now at revision 3874 in lp:~codership/codership-mysql/5.5-23 commitbf9d5b7f64Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Jun 13 09:49:48 2013 +0300 References: lp:1134892 MDEV-4624 - merged fix from LP wsrep-5.5-23 commit71509626d2Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Jun 13 09:44:34 2013 +0300 References: lp:1187526 - merged fix from wsrep-5.5-23 commit7e0db6be56Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Jun 12 17:07:48 2013 +0500 MDEV-4600 mariadb-galera-server-5.5 on ubuntu has no dependency to galera while debian has. dependency on galera added to the Ubuntu packaging script. commitf37231cf46Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon May 27 23:03:08 2013 +0300 References: MDEV-3924 lp:1088267 - merged fix from lp:codership-mysql commit24fd60895bAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon May 27 22:51:22 2013 +0300 References lp:1012138 - merged fix from lp:codership-mysql commitbd0eae595fMerge:9d1546fe2ccb246b20d6Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sun May 26 11:26:58 2013 +0300 References: MDEV-4572 - merge with mariaDB 5.5.31 bzr merge lp:maria/5.5 -rtag:mariadb-5.5.31 Text conflict in cmake/cpack_rpm.cmake Text conflict in debian/dist/Debian/control Text conflict in debian/dist/Ubuntu/control Text conflict in sql/CMakeLists.txt Conflict adding file sql/db.opt. Moved existing file to sql/db.opt.moved. Conflict adding file sql/db.opt.moved. Moved existing file to sql/db.opt.moved.moved. Text conflict in sql/mysqld.cc Text conflict in support-files/mysql.spec.sh 8 conflicts encountered. commit9d1546fe2cAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sat May 25 12:22:57 2013 +0300 References: MDEV-4572 - merge with lp:codership-mysql/5.5-23 revisions 3858..3867 commit48af4be62aMerge:e95fdb74ab421c885446Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Fri May 24 15:29:01 2013 +0300 References: MDEV-4572 - merge with mariaDB 5.5.30 commite95fdb74abAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue May 21 00:10:35 2013 +0300 merged in revisions 3853..3857 from lp:codership-mysql/5.5-23 commit3e841b77e0Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Mar 26 16:40:02 2013 +0200 References: MDEV-4328 - avoiding race condition for wsrep_format_desc access commit972acdb164Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Mar 5 00:01:20 2013 +0200 References: lp:1144911 - merged fix for prepared statement processing from upstream. Merged fix is revision 3853 in lp:~codership/codership-mysql/5.5-23 commit4174f1a474Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon Mar 4 23:01:36 2013 +0200 References: MDEV-4211 - appended format description event for TOI replication write set, FD carries binlog checksum algorithm commit7ba8b2ae49Author: Elena Stepanova <elenst@montyprogram.com> Date: Sun Mar 3 03:22:48 2013 +0400 MDEV-4232 : percona.innodb_sys_index fails due to a wrong version_comment commit55da5f1fbfAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sat Mar 2 12:23:08 2013 +0200 References: lp:1136303 - adapting wsrep status variable usage according to wsrep provider version 2.2 behavior commit3af84bb473Author: Daniel Bartholomew <daniel@gandalf> Date: Thu Feb 28 21:25:56 2013 -0500 Removed the obsolete instructions from the MySQL 5.1 manual. Instead provide a link to https://kb.askmonty.org/en/compiling-mariadb-from-source/ commit797482cc54Author: Daniel Bartholomew <daniel@gandalf> Date: Thu Feb 28 21:25:04 2013 -0500 Added a MariaDB Galera Cluster section to the beginning of the README. commit518ced3a78Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Feb 26 22:19:54 2013 +0200 References: https://bugs.launchpad.net/codership-mysql/+bug/1084702 https://bugs.launchpad.net/percona-xtradb-cluster/+bug/1019473 Merged revisions 3851-3852 from lp:~codership/codership-mysql/5.5-23 commit2b0f16c577Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Feb 26 01:03:21 2013 +0200 References: https://mariadb.atlassian.net/browse/MDEV-4179 https://bugs.launchpad.net/codership-mysql/+bug/1130888 https://bugs.launchpad.net/codership-mysql/+bug/1019473 Merged revisions 3847-3850 from lp:~codership/codership-mysql/5.5-23 commit68154e62b1Author: Elena Stepanova <elenst@montyprogram.com> Date: Mon Feb 25 23:05:31 2013 +0400 MDEV-4202: innodb.innodb-autoinc fails due to missing wsrep-specific variable in the result file commit91cd73104fAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Feb 21 10:16:47 2013 +0200 References https://mariadb.atlassian.net/browse/MDEV-4185 - thread terminate was blocked for non-wsrep threads commit7144f7f2d1Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Sun Feb 17 00:22:40 2013 +0200 References https://mariadb.atlassian.net/browse/MDEV-4176 Avoiding ha_kill_query for aborts initiated by replicator commit2a6aa0a312Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Fri Feb 15 15:51:02 2013 +0200 References https://mariadb.atlassian.net/browse/MDEV-4136 Fixes to stop wsrep replicator when thread pool scheduler is in use commit53f5ea2431Author: Sergei Golubchik <sergii@pisem.net> Date: Thu Feb 7 19:01:19 2013 +0100 restore changes that were lost in the merge commit3f847afe4cAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Feb 7 17:40:32 2013 +0200 References: MDEV-4142 Merged revision 3846 from lp:codership-mysql/5.5-23 commitf64a2c9970Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Feb 6 00:46:10 2013 +0200 wsrep build scripts commit96baf431afAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Feb 6 00:10:54 2013 +0200 References lp:1115708 - merged innodb wsrep changes to xtradb between revisions 3809...3845 commite51a884e9cAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Feb 5 22:48:40 2013 +0200 References lp:1115708 - merged with wsrep branch, revision 3845 bzr merge -r3840..3845 lp:~codership/codership-mysql/5.5-23 commit18c97eea5cMerge:d5dc568f9bbfd179e8edAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Feb 5 20:19:47 2013 +0200 References lp:1115708 - merged with lp:mariadb/5.5 revision 3657 commitd5dc568f9bAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Feb 5 19:20:47 2013 +0200 fixes for the merge with codership-mysql, revision 3839 commit800fa186e3Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Feb 5 17:54:42 2013 +0200 merged with codership-mysql up to revision 3839 bzr merge -r3810..3839 lp:codership-mysql/5.5 commit9da9a242faAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Feb 5 16:54:50 2013 +0200 remerging wsrep files from lp:codership-mysql commitf2837a3b33Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Feb 5 16:49:51 2013 +0200 remerging wsrep files from lp:codership-mysql commite0c6a87b99Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Feb 5 15:48:54 2013 +0200 re-merging wsrep files from lp:codership-mysql commitdb74958229Author: Elena Stepanova <elenst@ubuntu11.home> Date: Mon Feb 4 00:30:15 2013 +0400 MDEV-508 - wsrep revno can be either a number or XXXX, test should be able to handle both commitc40abe9df0Author: Elena Stepanova <elenst@ubuntu11.home> Date: Sun Feb 3 04:03:08 2013 +0400 MDEV-508 (Wrong MTR result files in MariaDB-Galera) commitffc82ab606Author: Sergei Golubchik <sergii@pisem.net> Date: Thu Dec 20 12:34:37 2012 +0100 update test cases and results commitb52dfd71b5Merge:c194027f224df29fef36Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Thu Dec 13 18:01:50 2012 +0400 merging. commitc194027f22Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Thu Dec 13 17:48:46 2012 +0400 MDEV-507 Galera Deb/RPM packages. Add new wsrep-related files to the DEB packages. commit4df29fef36Merge:fc6cd855e97c5f62a313Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Fri Nov 30 13:36:29 2012 +0200 References: lp:1066784 - Merged with MariaDB 5.5.28a bzr merge -r tag:mariadb-5.5.28a lp:maria/5.5 ...no conflicts commit28d9d0c7a8Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Thu Nov 29 14:50:52 2012 +0400 MDEV-3893 mariadb-galera-server deb package cannot be installed on a mysql-free machine. Fixed templates for messages. commitfc6cd855e9Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Nov 28 17:38:32 2012 +0200 References: lp:1066784 - Merged revisions 3810-3827 from lp:codership-mysql commitfe01881668Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Wed Nov 28 17:15:46 2012 +0400 MDEV-507 deb/rpm packages for Galera. Ubuntu 'control' file fixed. commit8ef2eb4454Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Nov 27 16:32:01 2012 +0400 MDEV 507 deb/rpm packages for galera builds. lindian-overrides files fixed. commit30be3f7f12Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Tue Nov 27 16:22:10 2012 +0400 MDEV-507 deb/rpm packages for galera builds. If settings are not suitable for the WSREP, just turn it off and keep working. commitab6d729816Author: Alexey Botchkov <holyfoot@askmonty.org> Date: Mon Nov 19 13:01:38 2012 +0400 MDEV-507 deb/rpm packages for galera builds. Debian packaging, part II. Changes in the set of package-related files. Some were removed, some renamed, as we only keep the mariadb-galera-server package. commitc9c458fa6eAuthor: Alexey Botchkov <holyfoot@askmonty.org> Date: Sun Nov 18 18:07:02 2012 +0400 MDEV 507 deb/rpm packages for galera builds. Debian/Ubuntu packages fixed. The mariadb-server-5.5 and mariadb-server packages became mariadb-galera-server-5.5 and mariadb-galera-server respectively. The rest of packages are removed from the build. This patch reflects only files that were changed. Second part of this patch has only file renaming/deletions. commit9b47a442b5Merge:ef6f9a8250797082ca71Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Oct 24 23:13:43 2012 +0300 References lp:1066784 - bzr merge lp:maria/5.5 (rev: 3562) commitef6f9a8250Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Oct 23 22:38:11 2012 +0300 References lp:1066784 merged with patch: bzr diff lp:codership-mysql/5.5 -r3795..3809 commit20df56c100Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Sep 20 09:35:22 2012 +0300 References lp:1051808 lp:1049024 https://mariadb.atlassian.net/browse/MDEV-541 patched with: bzr diff lp:codership-mysql/5.5 -r3794..3795 commit6475ef7db3Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Sep 19 00:23:06 2012 +0300 References lp:1052668 - DBUG macro issue in start_wsrep_THD merged fix from upstream: bzr diff lp:codership-mysql/5.5 -r3793..3794 commit42b69efd5dAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Sep 18 22:49:13 2012 +0300 References lp:1051808 - merged with lp:codership-mysql 5.5.27 based trunk patched with: bzr diff lp:codership-mysql/5.5 -r3790..3793 commit076f2f322eAuthor: Sergei Golubchik <sergii@pisem.net> Date: Mon Sep 17 17:42:14 2012 +0200 really disable embedded server in galera builds commit456b01b09bAuthor: Sergei Golubchik <sergii@pisem.net> Date: Mon Sep 17 15:33:19 2012 +0200 MDEV-507 deb/rpm packages for galera builds rpm part: only build the server rpm, not client or shared or anything else commit7b791250a1Merge:f4862acfc36f94b5c76dAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon Sep 17 12:31:38 2012 +0300 References lp:1051808 - merged with lp:maria/5.5 bzr merge lp:maria/5.5 ... Text conflict in CMakeLists.txt Text conflict in sql/mysqld.cc Text conflict in sql/sql_class.h Text conflict in sql/sql_truncate.cc 4 conflicts encountered. commitf4862acfc3Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon Sep 17 12:06:39 2012 +0300 References lp:1051808 - merged with lp:codership-mysql 5.5.27 based trunk merged xtradb storage engine part commit0892c7ec5dAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Mon Sep 17 11:34:57 2012 +0300 References lp:1051808 - merged with lp:codership-mysql 5.5.27 based trunk patched with: bzr diff lp:codership-mysql/5.5 -r3779..3790 commit5f76c15a3bAuthor: Sergei Golubchik <sergii@pisem.net> Date: Sat Sep 8 09:51:16 2012 +0200 MDEV-507 deb/rpm packages for galera builds rpm part. commit02abef584cAuthor: Vladislav Vaintroub <wlad@montyprogram.com> Date: Tue Sep 4 22:13:46 2012 +0200 Fixes for galera build - compile with WITH_WSREP on - fix package name commit8e84b9e740Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Aug 30 12:22:37 2012 +0300 Merged in change sets 3772-3779 from lp:codership-mysql/5.5 commitebfa24b1d2Merge:1fd2e10736a7123f5075Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Aug 9 01:47:21 2012 +0300 References lp:1034621 - Merge up to mysql-5.5.25 level merged codership-mysql/5.5 revisions: bzr diff -r3759..3767 merged codership-mysql/5.5 revisions: bzr diff -r3768..3771 commit1fd2e10736Author: jani <jani@work> Date: Mon Jul 23 11:15:59 2012 +0300 New version of mysqld_multi. Building Galera tree fully first time in buildbot commitf97e67ffaaAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Wed Jun 13 00:23:32 2012 +0300 References lp:1011983 Merged from codership-mysql/5.5 revision 3758 commitb96af9a3abMerge:33ffe0dd299892ace475Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Jun 12 16:34:18 2012 +0300 references lp:1011983 Merged latest MariaDB development in: bzr merge lp:maria/5.5 => Text conflict in CMakeLists.txt Text conflict in sql/handler.h Text conflict in support-files/CMakeLists.txt 3 conflicts commit33ffe0dd29Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Tue Jun 12 10:55:11 2012 +0300 References lp:1011983 Merged from codership-mysql/5.5 changes revisions 3743-3756 commit609388fcfdAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Apr 26 20:18:30 2012 +0300 Merged changes from lp:codership-mysql up to rev 3743 -r3725..3737 -r3738..3740 -r3741..3743 commite001516351Merge:f96fd3f40fb6ad03cde9Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Apr 26 13:59:35 2012 +0300 Merge with mariaDB 5.5.23: bzr merge lp:maria/5.5 commitf96fd3f40fAuthor: Seppo Jaakola <seppo.jaakola@codership.com> Date: Thu Apr 26 13:09:06 2012 +0300 Added wsrep specific files commit2fc1ec4356Author: Seppo Jaakola <seppo.jaakola@codership.com> Date: Fri Apr 13 01:33:24 2012 +0300 Initial push of codership-wsrep API implementation for MariaDB. Merge of: lp:maria/5.5, #3334: http://bazaar.launchpad.net/~maria-captains/maria/5.5/revision/3334 lp:codership-mysql/5.5, #3725: http://bazaar.launchpad.net/~codership/codership-mysql/wsrep-5.5/revision/3725
364 lines
15 KiB
C++
364 lines
15 KiB
C++
/*************** Valblk H Declares Source Code File (.H) ***************/
|
|
/* Name: VALBLK.H Version 2.1 */
|
|
/* */
|
|
/* (C) Copyright to the author Olivier BERTRAND 2005-2014 */
|
|
/* */
|
|
/* This file contains the VALBLK and derived classes declares. */
|
|
/***********************************************************************/
|
|
|
|
/***********************************************************************/
|
|
/* Include required application header files */
|
|
/* assert.h is header required when using the assert function. */
|
|
/* block.h is header containing Block global declarations. */
|
|
/***********************************************************************/
|
|
#ifndef __VALBLK__H__
|
|
#define __VALBLK__H__
|
|
#include "value.h"
|
|
|
|
/***********************************************************************/
|
|
/* Utility used to allocate value blocks. */
|
|
/***********************************************************************/
|
|
DllExport PVBLK AllocValBlock(PGLOBAL, void*, int, int, int, int,
|
|
bool, bool, bool);
|
|
const char *GetFmt(int type, bool un = false);
|
|
|
|
/***********************************************************************/
|
|
/* DB static external variables. */
|
|
/***********************************************************************/
|
|
extern MBLOCK Nmblk; /* Used to initialize MBLOCK's */
|
|
|
|
/***********************************************************************/
|
|
/* Class MBVALS is a utility class for (re)allocating VALBLK's. */
|
|
/***********************************************************************/
|
|
class MBVALS : public BLOCK {
|
|
//friend class LSTBLK;
|
|
friend class ARRAY;
|
|
public:
|
|
// Constructors
|
|
MBVALS(void) {Vblk = NULL; Mblk = Nmblk;}
|
|
|
|
// Methods
|
|
void *GetMemp(void) {return Mblk.Memp;}
|
|
PVBLK Allocate(PGLOBAL g, int type, int len, int prec,
|
|
int n, bool sub = false);
|
|
bool ReAllocate(PGLOBAL g, int n);
|
|
void Free(void);
|
|
|
|
protected:
|
|
// Members
|
|
PVBLK Vblk; // Pointer to VALBLK
|
|
MBLOCK Mblk; // The memory block
|
|
}; // end of class MBVALS
|
|
|
|
typedef class MBVALS *PMBV;
|
|
|
|
/***********************************************************************/
|
|
/* Class VALBLK represent a base class for variable blocks. */
|
|
/***********************************************************************/
|
|
class VALBLK : public BLOCK {
|
|
public:
|
|
// Constructors
|
|
VALBLK(void *mp, int type, int nval, bool un = false);
|
|
|
|
// Implementation
|
|
int GetNval(void) {return Nval;}
|
|
void SetNval(int n) {Nval = n;}
|
|
void *GetValPointer(void) {return Blkp;}
|
|
void SetValPointer(void *mp) {Blkp = mp;}
|
|
int GetType(void) {return Type;}
|
|
int GetPrec(void) {return Prec;}
|
|
void SetCheck(bool b) {Check = b;}
|
|
void MoveNull(int i, int j)
|
|
{if (To_Nulls) To_Nulls[j] = To_Nulls[j];}
|
|
virtual void SetNull(int n, bool b)
|
|
{if (To_Nulls) {To_Nulls[n] = (b) ? '*' : 0;}}
|
|
virtual bool IsNull(int n) {return To_Nulls && To_Nulls[n];}
|
|
virtual bool IsNullable(void) {return Nullable;}
|
|
virtual void SetNullable(bool b);
|
|
virtual bool IsUnsigned(void) {return Unsigned;}
|
|
virtual bool Init(PGLOBAL g, bool check) = 0;
|
|
virtual int GetVlen(void) = 0;
|
|
virtual PSZ GetCharValue(int n);
|
|
virtual char GetTinyValue(int n) = 0;
|
|
virtual uchar GetUTinyValue(int n) = 0;
|
|
virtual short GetShortValue(int n) = 0;
|
|
virtual ushort GetUShortValue(int n) = 0;
|
|
virtual int GetIntValue(int n) = 0;
|
|
virtual uint GetUIntValue(int n) = 0;
|
|
virtual longlong GetBigintValue(int n) = 0;
|
|
virtual ulonglong GetUBigintValue(int n) = 0;
|
|
virtual double GetFloatValue(int n) = 0;
|
|
virtual char *GetCharString(char *p, int n) = 0;
|
|
virtual void ReAlloc(void *mp, int n) {Blkp = mp; Nval = n;}
|
|
virtual void Reset(int n) = 0;
|
|
virtual bool SetFormat(PGLOBAL g, PCSZ fmt, int len, int year = 0);
|
|
virtual void SetPrec(int p) {}
|
|
virtual bool IsCi(void) {return false;}
|
|
|
|
// Methods
|
|
virtual void SetValue(short, int) {assert(false);}
|
|
virtual void SetValue(ushort, int) {assert(false);}
|
|
virtual void SetValue(int, int) {assert(false);}
|
|
virtual void SetValue(uint, int) {assert(false);}
|
|
virtual void SetValue(longlong, int) {assert(false);}
|
|
virtual void SetValue(ulonglong, int) {assert(false);}
|
|
virtual void SetValue(double, int) {assert(false);}
|
|
virtual void SetValue(char, int) {assert(false);}
|
|
virtual void SetValue(uchar, int) {assert(false);}
|
|
virtual void SetValue(PCSZ, int) {assert(false);}
|
|
virtual void SetValue(const char *, uint, int) {assert(false);}
|
|
virtual void SetValue(PVAL valp, int n) = 0;
|
|
virtual void SetValue(PVBLK pv, int n1, int n2) = 0;
|
|
virtual void SetMin(PVAL valp, int n) = 0;
|
|
virtual void SetMax(PVAL valp, int n) = 0;
|
|
virtual void Move(int i, int j) = 0;
|
|
virtual int CompVal(PVAL vp, int n) = 0;
|
|
virtual int CompVal(int i1, int i2) = 0;
|
|
virtual void *GetValPtr(int n) = 0;
|
|
virtual void *GetValPtrEx(int n) = 0;
|
|
virtual int Find(PVAL vp) = 0;
|
|
virtual int GetMaxLength(void) = 0;
|
|
bool Locate(PVAL vp, int& i);
|
|
|
|
protected:
|
|
bool AllocBuff(PGLOBAL g, size_t size);
|
|
void ChkIndx(int n);
|
|
void ChkTyp(PVAL v);
|
|
void ChkTyp(PVBLK vb);
|
|
|
|
// Members
|
|
PGLOBAL Global; // Used for messages and allocation
|
|
MBLOCK Mblk; // Used to allocate buffer
|
|
char *To_Nulls; // Null values array
|
|
void *Blkp; // To value block
|
|
bool Check; // If true SetValue types must match
|
|
bool Nullable; // True if values can be null
|
|
bool Unsigned; // True if values are unsigned
|
|
int Type; // Type of individual values
|
|
int Nval; // Max number of values in block
|
|
int Prec; // Precision of float values
|
|
}; // end of class VALBLK
|
|
|
|
/***********************************************************************/
|
|
/* Class TYPBLK: represents a block of typed values. */
|
|
/***********************************************************************/
|
|
template <class TYPE>
|
|
class TYPBLK : public VALBLK {
|
|
public:
|
|
// Constructors
|
|
TYPBLK(void *mp, int size, int type, int prec = 0, bool un = false);
|
|
|
|
// Implementation
|
|
virtual bool Init(PGLOBAL g, bool check);
|
|
virtual int GetVlen(void) {return sizeof(TYPE);}
|
|
virtual char GetTinyValue(int n) {return (char)Typp[n];}
|
|
virtual uchar GetUTinyValue(int n) {return (uchar)Typp[n];}
|
|
virtual short GetShortValue(int n) {return (short)Typp[n];}
|
|
virtual ushort GetUShortValue(int n) {return (ushort)Typp[n];}
|
|
virtual int GetIntValue(int n) {return (int)Typp[n];}
|
|
virtual uint GetUIntValue(int n) {return (uint)Typp[n];}
|
|
virtual longlong GetBigintValue(int n) {return (longlong)Typp[n];}
|
|
virtual ulonglong GetUBigintValue(int n) {return (ulonglong)Typp[n];}
|
|
virtual double GetFloatValue(int n) {return (double)Typp[n];}
|
|
virtual char *GetCharString(char *p, int n);
|
|
virtual void Reset(int n) {Typp[n] = 0;}
|
|
|
|
// Methods
|
|
using VALBLK::SetValue;
|
|
virtual void SetValue(PCSZ sp, int n);
|
|
virtual void SetValue(const char *sp, uint len, int n);
|
|
virtual void SetValue(short sval, int n)
|
|
{Typp[n] = (TYPE)sval; SetNull(n, false);}
|
|
virtual void SetValue(ushort sval, int n)
|
|
{Typp[n] = (TYPE)sval; SetNull(n, false);}
|
|
virtual void SetValue(int lval, int n)
|
|
{Typp[n] = (TYPE)lval; SetNull(n, false);}
|
|
virtual void SetValue(uint lval, int n)
|
|
{Typp[n] = (TYPE)lval; SetNull(n, false);}
|
|
virtual void SetValue(longlong lval, int n)
|
|
{Typp[n] = (TYPE)lval; SetNull(n, false);}
|
|
virtual void SetValue(ulonglong lval, int n)
|
|
{Typp[n] = (TYPE)lval; SetNull(n, false);}
|
|
virtual void SetValue(double fval, int n)
|
|
{Typp[n] = (TYPE)fval; SetNull(n, false);}
|
|
virtual void SetValue(char cval, int n)
|
|
{Typp[n] = (TYPE)cval; SetNull(n, false);}
|
|
virtual void SetValue(uchar cval, int n)
|
|
{Typp[n] = (TYPE)cval; SetNull(n, false);}
|
|
virtual void SetValue(PVAL valp, int n);
|
|
virtual void SetValue(PVBLK pv, int n1, int n2);
|
|
virtual void SetMin(PVAL valp, int n);
|
|
virtual void SetMax(PVAL valp, int n);
|
|
virtual void Move(int i, int j);
|
|
virtual int CompVal(PVAL vp, int n);
|
|
virtual int CompVal(int i1, int i2);
|
|
virtual void *GetValPtr(int n);
|
|
virtual void *GetValPtrEx(int n);
|
|
virtual int Find(PVAL vp);
|
|
virtual int GetMaxLength(void);
|
|
|
|
protected:
|
|
// Specialized functions
|
|
static ulonglong MaxVal(void);
|
|
TYPE GetTypedValue(PVAL vp);
|
|
TYPE GetTypedValue(PVBLK blk, int n);
|
|
|
|
// Members
|
|
TYPE* const &Typp;
|
|
const char *Fmt;
|
|
}; // end of class TYPBLK
|
|
|
|
/***********************************************************************/
|
|
/* Class CHRBLK: represent a block of fixed length strings. */
|
|
/***********************************************************************/
|
|
class CHRBLK : public VALBLK {
|
|
public:
|
|
// Constructors
|
|
CHRBLK(void *mp, int size, int type, int len, int prec, bool b);
|
|
|
|
// Implementation
|
|
virtual bool Init(PGLOBAL g, bool check);
|
|
virtual int GetVlen(void) {return Long;}
|
|
virtual PSZ GetCharValue(int n);
|
|
virtual char GetTinyValue(int n);
|
|
virtual uchar GetUTinyValue(int n);
|
|
virtual short GetShortValue(int n);
|
|
virtual ushort GetUShortValue(int n);
|
|
virtual int GetIntValue(int n);
|
|
virtual uint GetUIntValue(int n);
|
|
virtual longlong GetBigintValue(int n);
|
|
virtual ulonglong GetUBigintValue(int n);
|
|
virtual double GetFloatValue(int n);
|
|
virtual char *GetCharString(char *p, int n);
|
|
virtual void Reset(int n);
|
|
virtual void SetPrec(int p) {Ci = (p != 0);}
|
|
virtual bool IsCi(void) {return Ci;}
|
|
|
|
// Methods
|
|
using VALBLK::SetValue;
|
|
virtual void SetValue(PCSZ sp, int n);
|
|
virtual void SetValue(const char *sp, uint len, int n);
|
|
virtual void SetValue(PVAL valp, int n);
|
|
virtual void SetValue(PVBLK pv, int n1, int n2);
|
|
virtual void SetMin(PVAL valp, int n);
|
|
virtual void SetMax(PVAL valp, int n);
|
|
virtual void Move(int i, int j);
|
|
virtual int CompVal(PVAL vp, int n);
|
|
virtual int CompVal(int i1, int i2);
|
|
virtual void *GetValPtr(int n);
|
|
virtual void *GetValPtrEx(int n);
|
|
virtual int Find(PVAL vp);
|
|
virtual int GetMaxLength(void);
|
|
|
|
protected:
|
|
// Members
|
|
char* const &Chrp; // Pointer to char buffer
|
|
PSZ Valp; // Used to make a zero ended value
|
|
bool Blanks; // True for right filling with blanks
|
|
bool Ci; // True if case insensitive
|
|
int Long; // Length of each string
|
|
}; // end of class CHRBLK
|
|
|
|
/***********************************************************************/
|
|
/* Class STRBLK: represent a block of string pointers. */
|
|
/* Currently this class is used only by the DECODE scalar function */
|
|
/* and by the MyColumn function to store date formats. */
|
|
/***********************************************************************/
|
|
class STRBLK : public VALBLK {
|
|
public:
|
|
// Constructors
|
|
STRBLK(PGLOBAL g, void *mp, int size, int type);
|
|
|
|
// Implementation
|
|
virtual void SetNull(int n, bool b) {if (b) {Strp[n] = NULL;}}
|
|
virtual bool IsNull(int n) {return Strp[n] == NULL;}
|
|
virtual void SetNullable(bool) {} // Always nullable
|
|
virtual bool Init(PGLOBAL g, bool check);
|
|
virtual int GetVlen(void) {return sizeof(PSZ);}
|
|
virtual PSZ GetCharValue(int n) {return Strp[n];}
|
|
virtual char GetTinyValue(int n);
|
|
virtual uchar GetUTinyValue(int n);
|
|
virtual short GetShortValue(int n);
|
|
virtual ushort GetUShortValue(int n);
|
|
virtual int GetIntValue(int n);
|
|
virtual uint GetUIntValue(int n);
|
|
virtual longlong GetBigintValue(int n);
|
|
virtual ulonglong GetUBigintValue(int n);
|
|
virtual double GetFloatValue(int n) {return atof(Strp[n]);}
|
|
virtual char *GetCharString(char *, int n) {return Strp[n];}
|
|
virtual void Reset(int n) {Strp[n] = NULL;}
|
|
|
|
// Methods
|
|
using VALBLK::SetValue;
|
|
virtual void SetValue(PCSZ sp, int n);
|
|
virtual void SetValue(const char *sp, uint len, int n);
|
|
virtual void SetValue(PVAL valp, int n);
|
|
virtual void SetValue(PVBLK pv, int n1, int n2);
|
|
virtual void SetMin(PVAL valp, int n);
|
|
virtual void SetMax(PVAL valp, int n);
|
|
virtual void Move(int i, int j);
|
|
virtual int CompVal(PVAL vp, int n);
|
|
virtual int CompVal(int i1, int i2);
|
|
virtual void *GetValPtr(int n);
|
|
virtual void *GetValPtrEx(int n);
|
|
virtual int Find(PVAL vp);
|
|
virtual int GetMaxLength(void);
|
|
|
|
// Specific
|
|
void SetSorted(bool b) {Sorted = b;}
|
|
|
|
protected:
|
|
// Members
|
|
PSZ* const &Strp; // Pointer to PSZ buffer
|
|
bool Sorted; // Values are (semi?) sorted
|
|
}; // end of class STRBLK
|
|
|
|
/***********************************************************************/
|
|
/* Class DATBLK: represents a block of time stamp values. */
|
|
/***********************************************************************/
|
|
class DATBLK : public TYPBLK<int> {
|
|
public:
|
|
// Constructor
|
|
DATBLK(void *mp, int size);
|
|
|
|
// Implementation
|
|
virtual bool SetFormat(PGLOBAL g, PCSZ fmt, int len, int year = 0);
|
|
virtual char *GetCharString(char *p, int n);
|
|
|
|
// Methods
|
|
using TYPBLK<int>::SetValue;
|
|
virtual void SetValue(PCSZ sp, int n);
|
|
|
|
protected:
|
|
// Members
|
|
PVAL Dvalp; // Date value used to convert string
|
|
}; // end of class DATBLK
|
|
|
|
/***********************************************************************/
|
|
/* Class PTRBLK: represent a block of char pointers. */
|
|
/* Currently this class is used only by the ARRAY class to make and */
|
|
/* sort a list of char pointers. */
|
|
/***********************************************************************/
|
|
class PTRBLK : public STRBLK {
|
|
friend class ARRAY;
|
|
friend PVBLK AllocValBlock(PGLOBAL, void *, int, int, int, int,
|
|
bool, bool, bool);
|
|
protected:
|
|
// Constructors
|
|
PTRBLK(PGLOBAL g, void *mp, int size) : STRBLK(g, mp, size, TYPE_PCHAR) {}
|
|
|
|
// Implementation
|
|
|
|
// Methods
|
|
using STRBLK::SetValue;
|
|
using STRBLK::CompVal;
|
|
virtual void SetValue(PCSZ p, int n) {Strp[n] = (char*)p;}
|
|
virtual int CompVal(int i1, int i2);
|
|
|
|
protected:
|
|
// Members
|
|
}; // end of class PTRBLK
|
|
|
|
#endif // __VALBLK__H__
|
|
|