Commit graph

9401 commits

Author SHA1 Message Date
Rich Prohaska
9f324de94d #212 binlog row replication turns the insert ignore optimization off 2014-04-14 17:23:06 -04:00
Rich Prohaska
e7e91ab6bb #202 allow non-null AND null key index cursor operations 2014-04-14 15:11:31 -04:00
Olivier Bertrand
213ecbbb4f - In info, the file length sometimes could not be caculated because the
catalog data path had not been set. This was added into ha_connect::info.
modified:
  storage/connect/ha_connect.cc

- All the functions querying table options could return information from the wrong
  table when several CONNECT tables were used in the same query (for instance joined
  together) This was because they belonged to the catalog class that is shared between
  all tables in the same query. They have been moved from the catalog class to the
  TABDEF/RELDEF class that is attached to each table. This was a major potential bug.
modified:
  storage/connect/catalog.h
  storage/connect/filamvct.cpp
  storage/connect/filamzip.cpp
  storage/connect/mycat.cc
  storage/connect/mycat.h
  storage/connect/reldef.cpp
  storage/connect/reldef.h
  storage/connect/tabdos.cpp
  storage/connect/tabfmt.cpp
  storage/connect/tabmul.cpp
  storage/connect/tabmysql.cpp
  storage/connect/taboccur.cpp
  storage/connect/tabodbc.cpp
  storage/connect/tabpivot.cpp
  storage/connect/tabsys.cpp
  storage/connect/tabtbl.cpp
  storage/connect/tabutil.cpp
  storage/connect/tabvct.cpp
  storage/connect/tabwmi.cpp
  storage/connect/tabxcl.cpp
  storage/connect/tabxml.cpp
  storage/connect/xindex.cpp

- Prepare indexing of MYSQL/ODBC tables (as does FEDERATED) (Not implemented yet)
modified:
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/mycat.cc
  storage/connect/mycat.h

- Typo
modified:
  storage/connect/plgdbutl.cpp
2014-04-14 14:26:48 +02:00
Rich Prohaska
cb41cf0db1 #194 fix gcc 4.8 warnings 2014-04-13 14:40:54 -04:00
andrew
8bc1fa7344 MDEV-3037 - make build work on Windows 64 2014-04-11 21:09:18 +09:30
andrew
b03e2393b9 MDEV-5996 - regression test result 2014-04-11 21:07:49 +09:30
Arun Kuruvila
92351c831f Description: When we execute a correlated subquery on an
archive table which is using an auto increment column, the
server hangs. In order to recover the mysqld process, it
has to be terminated abnormally using SIGKILL. The problem
is observed in mysql-5.5.
Bug #18065452 "PREPARING" STATE HOGS CPU WITH ARCHIVE
               + SUBQUERY

Analysis: This happens because the server is trapped inside
an infinite loop in the function,
"subselect_indexsubquery_engine::exec()". This function
resolves the correlated suquery by doing an index lookup
for the appropriate engine. In  case of archive engine,
after reaching the end of records, "table->status" is not
set to STATUS_NOT_FOUND. As a result the loop is not 
terminated.

Fix: The "table->status" is set to STATUS_NOT_FOUND when
the end of records is reached.
2014-04-10 11:10:31 +05:30
Rich Prohaska
da5e2a19e6 #206 compile without partition storage engine 2014-04-09 07:45:15 -04:00
Rich Prohaska
38b95830b5 #206 support mariadb 10.0.10 alter compression table attribute 2014-04-08 15:24:06 -04:00
Olivier Bertrand
be1ee90b44 - Add the "skipcol" option to Pivot tables.
modified:
  storage/connect/ha_connect.cc
  storage/connect/tabpivot.cpp
  storage/connect/tabpivot.h
2014-04-08 18:18:02 +02:00
Rich Prohaska
5b3f63c0d0 #209 add variable to control table empty algorithm 2014-04-08 11:15:28 -04:00
Olivier Bertrand
16893bc076 - Add index read previous capacity.
modified:
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/xindex.cpp

- Optimize retrieving numeric values in scan_record. Was previously
  translating numeric values to character representation back and forth.
modified:
  storage/connect/ha_connect.cc
  storage/connect/mysql-test/connect/r/xml.result

- Modify Pivot table creation to avoid reading the entire source table
  when making columns from Discovery. MDEV-6024
modified:
  storage/connect/tabpivot.cpp
2014-04-08 11:15:08 +02:00
Rich Prohaska
fb30dc2667 #208 debug create temp table and transactions 2014-04-07 16:58:51 -04:00
Rich Prohaska
4a88423538 #133 dont overlock key ranges for unique secondary keys 2014-04-07 13:34:58 -04:00
andrew
97954225ae MDEV-5996 - fix odd behaviour of some combinations of table and database names 2014-04-07 22:16:02 +09:30
Olivier Bertrand
cc7a08c941 - Commit various changes
added:
  storage/connect/mysql-test/connect/r/alter_xml.result
  storage/connect/mysql-test/connect/t/alter_xml.test
modified:
  storage/connect/myconn.cpp
  storage/connect/mysql-test/connect/r/alter.result
  storage/connect/mysql-test/connect/t/alter.test
  storage/connect/tabdos.cpp
2014-04-07 00:23:37 +02:00
Olivier Bertrand
b43e82dce6 - Make memory allocation of VALBLK's more flexible (can be allocated
normally when too big to be suballocated) to handle big results.
modified:
  storage/connect/valblk.cpp
  storage/connect/valblk.h

- Add system variable connect_work_size giving the size of the CONNECT
  work area used for memory allocation.
modified:
  storage/connect/ha_connect.cc
  storage/connect/plugutil.c
  storage/connect/user_connect.cc
2014-04-05 19:26:32 +02:00
Olivier Bertrand
d95e797c92 - FIX MDEV-6019 and MDEV-6021
Exhausted memory cause un-prepared long jump
  Issue proper message when PIVOT column is nullable
modified:
  storage/connect/mysql-test/connect/r/pivot.result
  storage/connect/mysql-test/connect/t/pivot.test
  storage/connect/plgdbsem.h
  storage/connect/tabpivot.cpp

- Prepare adding index_prev (not used yet)
modified:
  storage/connect/plgdbsem.h
  storage/connect/xindex.cpp
  storage/connect/xindex.h
2014-04-04 01:28:34 +02:00
Rich Prohaska
22bf01e7f5 #209 add tokudb_open_table_check_empty session variable to enable/disable may_table_be_open 2014-04-03 11:21:00 -04:00
andrew
965bebcdaf Update test suite results after fixing MDEV-5891 2014-04-02 23:06:35 +10:30
andrew
316aef5b7f Add test case for selecting from unpopulated table 2014-04-02 23:06:05 +10:30
andrew
a4a78e3c33 Fix for MDEV-5891 - ensure select on empty backing table works. 2014-04-02 23:02:32 +10:30
andrew
f77539092d Merged latest trunk 2014-04-02 22:18:43 +10:30
Olivier Bertrand
3f361af7ce - FIX MDEV-5989 (max(indexed) doesn't work)
By implementing index_last
modified:
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/xindex.cpp

- Adding the TYPE_BIN Connect internal type
  (not tested and not used yet)
modified:
  storage/connect/global.h
  storage/connect/value.cpp
  storage/connect/value.h
2014-04-01 18:14:57 +02:00
Thirunarayanan B
0df90f2a6f Bug #17858679 TOO MANY TIMES OF MEMSET DECREASE
THE PERFORMANCE UNDER HEAVY INSERT
	Fixing the build problem in 5.5.
2014-04-01 11:36:58 +05:30
Thirunarayanan B
5541d7c656 Bug #17858679 TOO MANY TIMES OF MEMSET DECREASE
THE PERFORMANCE UNDER HEAVY INSERT
Problem:
	There are three memset call to allocate memory for system fields
in each insert.

Solution:
	Instead of calling it in 3 times, we can combine it into
one memset call. It will reduce the CPU usage under heavy insert.

	Approved by Marko rb-4916
2014-04-01 10:46:13 +05:30
Rich Prohaska
dc9ed4c5fe #205 build tokudb with webscalesql-5.6 2014-03-31 11:05:45 -04:00
Rich Prohaska
a77a73fd32 #204 print compression status variables 2014-03-31 08:57:42 -04:00
Olivier Bertrand
b1ae834165 - Fix using ~ in file name on Linux
modified:
  storage/connect/osutil.c
  storage/connect/plugutil.c
  
- Fix using fmt uninitialized in Tabcolumns
modified:
  storage/connect/tabutil.cpp

- Suppress gcc warning
modified:
  storage/connect/ha_connect.cc
2014-03-31 01:20:35 +02:00
Olivier Bertrand
fe3cbcdffa - Add system variables type_conv and conv_size. This addresses the eventual
conversion from TEXT to VARCHAR  in PROXY and MYSQL tables.
modified:
  storage/connect/ha_connect.cc
  storage/connect/myconn.cpp
  storage/connect/myconn.h
  storage/connect/myutil.cpp
  storage/connect/tabmysql.cpp
  storage/connect/tabutil.cpp

- Add the xmap system variable addressing whether file mapping should be used
  to handle indexing.
modified:
  storage/connect/CMakeLists.txt
  storage/connect/ha_connect.cc
  storage/connect/xindex.cpp
  storage/connect/xindex.h

- Do take care of ~ in Linux version of _fullpath (not tested yet)
modified:
  storage/connect/osutil.c
2014-03-30 22:52:54 +02:00
Sergei Golubchik
41a2ca5c16 10.0-connect merge 2014-03-29 17:32:46 +01:00
Sergei Golubchik
5c5834b091 *never* put anything with side-effects in an assert() -
asserts can be conditionally compiled out.
2014-03-29 17:31:08 +01:00
Olivier Bertrand
bdbe7430bc - Make local MySQL connection default to unix socket on Linux or enable
to use named pipe on Windows by specifying the host as '.'
  This addresses MDEV-5952.
modified:
  storage/connect/myconn.cpp

- Clean some unused code
modified:
  storage/connect/connect.cc
  storage/connect/connect.h
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
2014-03-27 19:07:17 +01:00
Sergei Golubchik
9bf8a68577 disable connect tests for --embedded 2014-03-27 13:25:02 +01:00
Sergei Golubchik
933c3a5e5b compilation failure on windows 2014-03-27 12:17:53 +01:00
Kentoku SHIBA
e105d8bcc5 fix for building error 2014-03-25 10:39:12 +09:00
Kentoku SHIBA
1a846b3cab Spider 3.2 2014-03-25 05:39:33 +09:00
Kentoku SHIBA
89441877e7 fix for MariaDB 10.0.9 2014-03-25 05:38:08 +09:00
Kentoku SHIBA
487a064783 fix invalid memory access 2014-03-25 05:36:22 +09:00
Kentoku SHIBA
4d980a4701 delete all rows type 2014-03-25 05:34:57 +09:00
Kentoku SHIBA
d1ceb97adf lock tables 2014-03-25 05:33:41 +09:00
Kentoku SHIBA
da522fc1cd fix for MariaDB 10.0.8 2014-03-25 05:32:12 +09:00
Kentoku SHIBA
d3e54d2b3c add information for MariaDB 2014-03-25 05:25:47 +09:00
Kentoku SHIBA
f41f5f742f use handler no where clause 2014-03-25 05:24:16 +09:00
Kentoku SHIBA
a99b54cf1f dry access 2014-03-25 05:22:28 +09:00
Kentoku SHIBA
088b981e2a fix bg mrr crash 2014-03-25 05:15:55 +09:00
Kentoku SHIBA
3a931cdc5f casual search 2014-03-25 05:14:10 +09:00
Kentoku SHIBA
7d74d0f6d8 bgs for show records 2014-03-25 05:12:36 +09:00
Kentoku SHIBA
74195f40b4 current date 2014-03-25 05:10:40 +09:00
Kentoku SHIBA
5b07977ac6 update in trigger 2014-03-25 05:09:21 +09:00
Kentoku SHIBA
33fc4f5192 add sendsql to error log 2014-03-25 05:05:04 +09:00
Kentoku SHIBA
9ef119679d direct aggregate with index merge 2014-03-25 05:02:59 +09:00
Kentoku SHIBA
51040beb6e handler clause 2014-03-25 05:00:34 +09:00
Kentoku SHIBA
120b635366 mariadb direct update 2014-03-25 04:59:24 +09:00
Kentoku SHIBA
1a7853ce5c fix assersion failure at recovering 2014-03-25 04:51:28 +09:00
Kentoku SHIBA
53372af2c1 fix crash at using spider_copy_tables() 2014-03-25 04:49:51 +09:00
Kentoku SHIBA
993dd378b7 fix for MariaDB 10.0.7 building errors 2014-03-25 04:48:23 +09:00
Kentoku SHIBA
4e9e561549 log spider warnings 2014-03-25 04:46:43 +09:00
Kentoku SHIBA
24db691dd7 add new xa naming rule 2014-03-25 04:45:34 +09:00
Kentoku SHIBA
7d9342be70 add version variables 2014-03-25 04:43:43 +09:00
Kentoku SHIBA
987f0a91cb copy tables with internal xa 2014-03-25 04:42:40 +09:00
Kentoku SHIBA
b7938cceee scale for registering xid 2014-03-25 04:40:46 +09:00
Kentoku SHIBA
92fb1f3b6a MDEV-5299 crash at using show index 2014-03-25 04:39:17 +09:00
Kentoku SHIBA
20e144a667 fix crash at using mysqldump 2014-03-25 04:35:56 +09:00
Kentoku SHIBA
f2a5353966 find temporary table 2014-03-25 04:34:15 +09:00
Kentoku SHIBA
27772bd776 partition auto increment init 2014-03-25 04:32:22 +09:00
Kentoku SHIBA
004ea5171c bka and count 2014-03-25 04:31:11 +09:00
Kentoku SHIBA
b7bb65d549 fix for MariaDB 10.0.6 building error 2014-03-25 04:29:52 +09:00
Kentoku SHIBA
ad54787d55 append group by for no order by 2014-03-25 04:26:48 +09:00
Kentoku SHIBA
b5ebf1e29b fix line endings 2014-03-25 04:23:24 +09:00
Kentoku SHIBA
356a665bc9 internal xa 2014-03-25 04:17:18 +09:00
Kentoku SHIBA
01d129489c crash if data node down before commit 2014-03-25 04:14:30 +09:00
Kentoku SHIBA
d64c82517d Spider 3.1 2014-03-25 04:11:00 +09:00
Kentoku SHIBA
954e650356 temporary reverting for merging Spider 2014-03-25 04:09:43 +09:00
Olivier Bertrand
f26be8cae2 - Work in progress
modified:
  storage/connect/filter.h
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/mysql-test/connect/r/alter.result
  storage/connect/mysql-test/connect/r/xml.result
2014-03-23 18:49:19 +01:00
Michael Widenius
9aac546872 MDEV-5930 Server crashes in thd_get_ha_data on CREATE OR REPLACE TABLE
mysql-test/r/create_or_replace.result:
  More tests for create or replace
mysql-test/t/create_or_replace.test:
  More tests for create or replace
sql/log.cc:
  Don't use binlog_hton if binlog is not enabmed
sql/sql_base.cc:
  We have to call restart_trans_for_tables also if tables where not locked with LOCK TABLES.
  If not, we will get a crash in TokuDB
sql/sql_insert.cc:
  Don't call binlog_reset_cache() if we don't have binary log open
sql/sql_table.cc:
  Don't log to binary log if not open
  Better test if we where using create or replace ... select
storage/tokudb/mysql-test/tokudb_mariadb/r/create_or_replace.result:
  More tests for create or replace
storage/tokudb/mysql-test/tokudb_mariadb/t/create_or_replace.test:
  More tests for create or replace
2014-03-23 18:39:10 +02:00
Michael Widenius
39e6083e35 MDEV-5818: MySQL WL#6145: Separate the dependence of DATA DIRECTORY from symbolic links
Copied relevant test cases and code from the MySQL 5.6 tree
Testing of my_use_symdir moved to engines.


mysql-test/r/partition_windows.result:
  Updated result file
mysql-test/suite/archive/archive_no_symlink-master.opt:
  Testing of symlinks with archive
mysql-test/suite/archive/archive_no_symlink.result:
  Testing of symlinks with archive
mysql-test/suite/archive/archive_no_symlink.test:
  Testing of symlinks with archive
mysql-test/suite/archive/archive_symlink.result:
  Testing of symlinks with archive
mysql-test/suite/archive/archive_symlink.test:
  Testing of symlinks with archive
sql/log_event.cc:
  Updated comment
sql/partition_info.cc:
  Don't test my_use_symdir here
sql/sql_parse.cc:
  Updated comment
sql/sql_table.cc:
  Don't test my_use_symdir here
sql/table.cc:
  Added more DBUG_PRINT
storage/archive/ha_archive.cc:
  Give warnings for index_file_name and if we can't use data directory
storage/myisam/ha_myisam.cc:
  Give warnings if we can't use data directory or index directory
2014-03-23 17:00:29 +02:00
Olivier Bertrand
a0266bbdae - Should fix valgrind diag on uninitialized value
modified:
  storage/connect/tabdos.cpp

- Separate alter.test in two to take care of unsupported LIBXML2
added:
  storage/connect/mysql-test/connect/r/alter_xml.result
  storage/connect/mysql-test/connect/t/alter_xml.test
modified:
  storage/connect/mysql-test/connect/r/alter.result
  storage/connect/mysql-test/connect/t/alter.test
2014-03-23 15:50:39 +01:00
Sergei Golubchik
707dd6b9e9 MDEV-5943 'show table status' does not immediately show tokudb tables
MDEV-5839 TokuDB tables not properly cleaned on DROP DATABASE

TokuDB does not support discover_table_names() and writes no files
in the database directory, so automatic filename-based
discover_table_names() doesn't work either. So, it must force .frm
file to disk in ::create()
2014-03-26 22:32:15 +01:00
Sergei Golubchik
06bdc441f0 update tokudb tests for 10.0 2014-03-26 22:31:17 +01:00
Sergei Golubchik
10740939eb 5.5 merge 2014-03-26 22:25:38 +01:00
Michael Widenius
ded448d1d0 MDEV-5905: Creating tmp. memory table kills the server
The reason was that a couple of variables that hold number of rows that was used to calculate buffers was uint and caused an overflow.

Fixed by changing variables that could hold number of rows from uint to ulong and also added a cast for this test.

include/heap.h:
  Reorder to get better alignment. Changed variables that could hold number of rows from uint to ulong
mysql-test/suite/heap/heap.result:
  Added test case
mysql-test/suite/heap/heap.test:
  Added test case
mysql-test/suite/plugins/t/server_audit.test:
  Added sleep as we want to have disconnect logged before we try a new connect
storage/heap/ha_heap.cc:
  Changed variables that could hold number of rows from uint to ulong
  Limit number of rows to 4G  (as most of the variables that holds rows are ulong anyway)
  reset records_changed when key_stat_version is changed to not cause increments for every row changed
storage/heap/ha_heap.h:
  changed records_changed to ulong as this can get big
storage/heap/hp_create.c:
  Changed variables that could hold number of rows from uint to ulong
  Added cast (fixed the original bug)
storage/heap/hp_delete.c:
  Changed variables that could hold number of rows from uint to ulong
storage/heap/hp_open.c:
  Removed not needed cast
storage/heap/hp_write.c:
  Changed variables that could hold number of rows from uint to ulong
support-files/compiler_warnings.supp:
  Removed extra : from supression
2014-03-26 21:58:27 +02:00
Sergei Golubchik
c73a0638c2 remove append_escaped(), use String::append_for_single_quote() instead 2014-03-26 09:41:52 +01:00
Sergei Golubchik
525c3c2435 TokuDB: make the default value for the table compression= attribute to come
from the variable @@session.tokudb_row_format
2014-03-26 09:33:54 +01:00
Sergei Golubchik
1b468ca675 MDEV-5815 MySQL BUG#11751736: DROP DATABASE STATEMENT SHOULD REMOVE .OLD SUFFIX FROM DATABASE DIRECTORY
Delete .OLD and .TMD files when a MyISAM table is dropped.
Same for Aria.

sql/sql_db.cc:
  dead code - *.TMD cannot be deleted from here.
2014-03-26 09:32:54 +01:00
Sergei Golubchik
c11c64e972 MDEV-5822 TokuDB fails to compile without partition storage engine 2014-03-24 20:01:55 +01:00
Sergei Golubchik
c18fb72e71 tokudb: make compression=TOKUDB_ZLIB the default (instead of TOKUDB_UNCOMPRESSED)
for new tables
2014-03-24 20:01:50 +01:00
Olivier Bertrand
f48d76620a - Include last source modifs
modified:
  storage/connect/filamtxt.cpp
  storage/connect/ha_connect.cc
  storage/connect/tabxml.cpp
2014-03-22 09:07:47 +01:00
Olivier Bertrand
81ce7da7a7 - Resolving conflicts
modified:
  storage/connect/block.h
  storage/connect/colblk.cpp
  storage/connect/connect.cc
  storage/connect/csort.h
  storage/connect/filamap.cpp
  storage/connect/filamdbf.cpp
  storage/connect/filamfix.cpp
  storage/connect/filamtxt.cpp
  storage/connect/filamzip.cpp
  storage/connect/ha_connect.cc
  storage/connect/mycat.cc
  storage/connect/myconn.cpp
  storage/connect/myutil.cpp
  storage/connect/osutil.c
  storage/connect/plgdbsem.h
  storage/connect/plgdbutl.cpp
  storage/connect/plugutil.c
  storage/connect/reldef.cpp
  storage/connect/tabcol.cpp
  storage/connect/tabfmt.cpp
  storage/connect/tabmysql.cpp
  storage/connect/tabodbc.cpp
  storage/connect/tabpivot.cpp
  storage/connect/tabvct.cpp
  storage/connect/user_connect.cc
  storage/connect/valblk.cpp
  storage/connect/value.cpp
  storage/connect/xindex.cpp
2014-03-22 08:57:32 +01:00
Olivier Bertrand
21d9c5824b - Fix bug MDEV-5928
modified:
  storage/connect/tabxml.cpp
2014-03-21 23:58:11 +01:00
Olivier Bertrand
70e865cc19 - Remove 2 compile warnings
modified:
  storage/connect/ha_connect.cc
2014-03-21 22:47:40 +01:00
Olivier Bertrand
8a633c9447 - Fix bug MDEV-5919. Was because doing fseek of a stream closed by another thread.
modified:
  storage/connect/filamtxt.cpp

- Fix a bug causing a re-open table not being reset.
modified:
  storage/connect/ha_connect.cc
2014-03-21 22:24:54 +01:00
Sergei Golubchik
f17831fa74 MDEV-5817 MySQL BUG#11825482: Broken key length calculation for btree index
just as in 5.6 fix - copy the correct null-handling code from MyISAM
2014-03-21 14:36:49 +01:00
unknown
b352969118 MDEV-5914: Parallel replication deadlock due to InnoDB lock conflicts
Due to how gap locks work, two transactions could group commit together on the
master, but get lock conflicts and then deadlock due to different thread
scheduling order on slave.

For now, remove these deadlocks by running the parallel slave in READ
COMMITTED mode. And let InnoDB/XtraDB allow statement-based binlogging for the
parallel slave in READ COMMITTED.

We are also investigating a different solution long-term, which is based on
relaxing the gap locks only between the transactions running in parallel for
one slave, but not against possibly external transactions.
2014-03-21 13:30:55 +01:00
Jan Lindström
affe1731a1 MDEV-5830: Assertion failure mutex_get_waiters(mutex) == 0 at shutdown.
Analysis: XtraDB merge regression, at the end of mutex_spin_wait before goto mutex_loop
there is missing  

if (prio_mutex) { 
	os_atomic_decrement_ulint(&prio_mutex->high_priority_waiters, 1); 
}

Hence we get unbalanced waiter count.

Thanks to Laurynas Biveinis for finding this.
2014-03-21 08:39:04 +02:00
Olivier Bertrand
0449abe070 - FIX MDEV-5918
modified:
  storage/connect/ha_connect.cc
2014-03-21 02:40:27 +01:00
Rich Prohaska
000f5143c3 #200 handle errors when writing cardinality data 2014-03-20 12:45:32 -04:00
Olivier Bertrand
7b400a088d - MRR + Block Indexing
modified:
  storage/connect/array.h
  storage/connect/catalog.h
  storage/connect/colblk.cpp
  storage/connect/colblk.h
  storage/connect/connect.cc
  storage/connect/connect.h
  storage/connect/domdoc.h
  storage/connect/filamap.cpp
  storage/connect/filamap.h
  storage/connect/filamdbf.h
  storage/connect/filamfix.cpp
  storage/connect/filamfix.h
  storage/connect/filamtxt.cpp
  storage/connect/filamtxt.h
  storage/connect/filamvct.cpp
  storage/connect/filamvct.h
  storage/connect/filamzip.cpp
  storage/connect/filamzip.h
  storage/connect/filter.cpp
  storage/connect/filter.h
  storage/connect/global.h
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/myconn.h
  storage/connect/plgcnx.h
  storage/connect/plgdbsem.h
  storage/connect/plgdbutl.cpp
  storage/connect/plugutil.c
  storage/connect/preparse.h
  storage/connect/reldef.cpp
  storage/connect/reldef.h
  storage/connect/tabcol.h
  storage/connect/tabdos.cpp
  storage/connect/tabdos.h
  storage/connect/tabfix.cpp
  storage/connect/tabfmt.cpp
  storage/connect/tabfmt.h
  storage/connect/table.cpp
  storage/connect/tabmysql.cpp
  storage/connect/tabmysql.h
  storage/connect/taboccur.h
  storage/connect/tabodbc.h
  storage/connect/tabsys.h
  storage/connect/tabtbl.h
  storage/connect/tabutil.h
  storage/connect/tabvct.cpp
  storage/connect/tabvct.h
  storage/connect/tabwmi.h
  storage/connect/tabxml.h
  storage/connect/user_connect.cc
  storage/connect/user_connect.h
  storage/connect/valblk.cpp
  storage/connect/valblk.h
  storage/connect/value.cpp
  storage/connect/value.h
  storage/connect/xindex.cpp
  storage/connect/xindex.h
  storage/connect/xobject.cpp
  storage/connect/xobject.h
  storage/connect/xtable.h
2014-03-20 12:05:47 +01:00
Sergey Vojtovich
e4fde57712 MDEV-5864 - Reduce usage of LOCK_open: TABLE_SHARE::tdc.free_tables
Let TABLE_SHARE::tdc.free_tables, TABLE_SHARE::tdc.all_tables,
TABLE_SHARE::tdc.flushed and corresponding invariants be protected by
per-share TABLE_SHARE::tdc.LOCK_table_share instead of global LOCK_open.
2014-03-20 11:11:13 +04:00
Jan Lindström
8250824a12 Remove assertions now that the actual bug has been repeated. 2014-03-20 09:32:37 +02:00
Jan Lindström
a60f227c04 Better to use ut_ad macro. 2014-03-19 19:35:42 +02:00
Jan Lindström
a092a40334 MDEV-5830: Assertion failure mutex_get_waiters(mutex) == 0 at shutdown. 2014-03-19 17:23:38 +02:00
Olivier Bertrand
31560c448a - FIX MDEV-5890 and MDEV-5900
modified:
  storage/connect/filamtxt.cpp
  storage/connect/ha_connect.cc
2014-03-19 15:45:21 +01:00
Sergei Golubchik
1fa1ea0f2d MDEV-5404 Can't free data returned by mariadb_dyncol_unpack on windows
add mariadb_dyncol_unpack_free()
2014-03-19 09:58:18 +01:00
Sergei Golubchik
948056c535 MDEV-5787 Server crashes in in row_mysql_convert_row_to_innobase on CREATE .. SELECT
XtraDB: don't accept MYSQL_TYPE_NULL as a column type
2014-03-19 09:57:57 +01:00
Sergei Golubchik
94c97e5b68 update plugins' maturity levels:
old plugins get STABLE
newer plugins get GAMMA
those that had bugs recently get BETA
2014-03-19 09:56:46 +01:00
Jan Lindström
cdf6d3ec04 MDEV-5949: Performance of XtraDB slows down significantly on long benchmarks
when compressed tables are used.

Analysis: Number of flushed pages is incorrectly calculated at
buf_do_LRU_batch. This leads to problem when utility function
flushes dirty blocks from the end of the flush list of
all buffer pool instances in a loop until enough pages are flushed
or time limit is reached. As number of flushed pages is incorrectly
calculated, the loop mostly try to flush until time limit is
reached because the number of pages limit is not reached.

Fix: Fix the calculation of flushed pages (very short). This fix
was provided by Alexey Stroganov (Percona).
2014-03-26 15:17:12 +02:00
Olivier Bertrand
db77e64351 - Suppress call to PROFILE_End in connect_done_func that causes Signal 11 on Linux
modified:
  storage/connect/ha_connect.cc
2014-03-19 02:25:28 +01:00
Rich Prohaska
daddc85f76 #195 merge mariadb 10.0.9 2014-03-18 19:18:40 -04:00
Olivier Bertrand
6b63c5b247 - FIX PIVOT bug MDEV-5869 caused by using fop (field option ptr) when NULL.
modified:
  storage/connect/ha_connect.cc

- Suppress the use of connect.in by adding the connect_xtrace system variable.
modified:
  storage/connect/ha_connect.cc

- Make column length, varchar, and temporal column types recognized in discovery
  when using SRCDEF,or PIVOT.
modified:
  storage/connect/ha_connect.cc
  storage/connect/myconn.cpp
  storage/connect/myutil.cpp
  storage/connect/plgdbsem.h

- Avoid (rare) crash when using DECIMAL type. (buf was too small)
modified:
  storage/connect/tabfmt.cpp
  storage/connect/tabmysql.cpp
  storage/connect/tabodbc.cpp
  storage/connect/tabpivot.cpp
  storage/connect/valblk.cpp
  storage/connect/value.cpp

- General cleaning of unused code, standardize tracing, and update version number
modified:
  storage/connect/block.h
  storage/connect/colblk.cpp
  storage/connect/connect.cc
  storage/connect/csort.h
  storage/connect/filamap.cpp
  storage/connect/filamdbf.cpp
  storage/connect/filamfix.cpp
  storage/connect/filamzip.cpp
  storage/connect/ha_connect.cc
  storage/connect/mycat.cc
  storage/connect/myconn.cpp
  storage/connect/mysql-test/connect/r/alter.result
  storage/connect/mysql-test/connect/r/xml.result
  storage/connect/myutil.cpp
  storage/connect/osutil.c
  storage/connect/plgdbsem.h
  storage/connect/plgdbutl.cpp
  storage/connect/plugutil.c
  storage/connect/reldef.cpp
  storage/connect/tabcol.cpp
  storage/connect/tabfmt.cpp
  storage/connect/tabmysql.cpp
  storage/connect/tabodbc.cpp
  storage/connect/tabpivot.cpp
  storage/connect/tabvct.cpp
  storage/connect/user_connect.cc
  storage/connect/valblk.cpp
  storage/connect/value.cpp
  storage/connect/xindex.cpp
2014-03-18 19:25:50 +01:00
Sergei Golubchik
99a0b5464d merge ft-index and ft-engine as of 7.1.5 2014-03-18 09:02:57 +01:00
Sergei Golubchik
5ad18f1236 percona-server-5.5.36-34.0 2014-03-17 17:41:54 +01:00
Jan Lindström
f1ca1f37c9 MDEV-5878: Failing assertion: mutex_own(mutex) with innodb_use_fallocate=ON.
Analysis: This was merge error on file fil0fil.cc. fil_system mutex was taken twice because of this.

Fix: Remove unnecessary mutex_enter and fixed the issue with slow posix_fallocate usage.
2014-03-17 15:49:41 +02:00
Rich Prohaska
ff1be5d961 #198 add tokudb_backtrace to help debug handler interface bugs 2014-03-12 10:28:57 -04:00
Olivier Bertrand
d67ad26b33 - Adding files needed for block indexing
added:
  storage/connect/array.cpp
  storage/connect/array.h
  storage/connect/blkfil.cpp
  storage/connect/blkfil.h
  storage/connect/filter.cpp
  storage/connect/filter.h
2014-03-10 18:59:36 +01:00
Olivier Bertrand
e5729127b8 - NOTE: an experimental implementation of MRR was done but not kept
in this version. Sure enough, it never caused any improvement in
  the execution speed and rather caused a small increase of execution
  time. This is probably because values are sorted by rowid in each
  range of CONNECT indexes. This could be reconsidered if a customer
  have a need for processing very big files.

- Fix a bug in ha_connect::CheckCond. The negated form of BETWEEN and
  IS NULL operators was not recognized.
modified:
  storage/connect/ha_connect.cc

- Add long jump initialization in CntReadNext. This was causing a server
  crash when an error occured in a ReadColumn.
modified:
  storage/connect/connect.cc

- General cleanup of CONNECT source code eliminating all code not used by
  CONNECT, including the MRR test code (saved separately).
modified:
  storage/connect/catalog.h
  storage/connect/colblk.cpp
  storage/connect/colblk.h
  storage/connect/connect.cc
  storage/connect/connect.h
  storage/connect/domdoc.h
  storage/connect/filamap.cpp
  storage/connect/filamap.h
  storage/connect/filamdbf.h
  storage/connect/filamfix.cpp
  storage/connect/filamfix.h
  storage/connect/filamtxt.cpp
  storage/connect/filamtxt.h
  storage/connect/filamvct.cpp
  storage/connect/filamvct.h
  storage/connect/filamzip.cpp
  storage/connect/filamzip.h
  storage/connect/global.h
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/myconn.h
  storage/connect/plgcnx.h
  storage/connect/plgdbsem.h
  storage/connect/plugutil.c
  storage/connect/preparse.h
  storage/connect/reldef.cpp
  storage/connect/reldef.h
  storage/connect/tabcol.h
  storage/connect/tabdos.cpp
  storage/connect/tabdos.h
  storage/connect/tabfix.cpp
  storage/connect/tabfmt.cpp
  storage/connect/tabfmt.h
  storage/connect/table.cpp
  storage/connect/tabmac.h
  storage/connect/tabmul.h
  storage/connect/tabmysql.cpp
  storage/connect/tabmysql.h
  storage/connect/taboccur.h
  storage/connect/tabodbc.cpp
  storage/connect/tabodbc.h
  storage/connect/tabsys.cpp
  storage/connect/tabsys.h
  storage/connect/tabtbl.cpp
  storage/connect/tabtbl.h
  storage/connect/tabutil.h
  storage/connect/tabvct.cpp
  storage/connect/tabvct.h
  storage/connect/tabwmi.cpp
  storage/connect/tabwmi.h
  storage/connect/tabxml.cpp
  storage/connect/tabxml.h
  storage/connect/user_connect.cc
  storage/connect/user_connect.h
  storage/connect/valblk.cpp
  storage/connect/valblk.h
  storage/connect/value.cpp
  storage/connect/value.h
  storage/connect/xindex.cpp
  storage/connect/xindex.h
  storage/connect/xobject.cpp
  storage/connect/xobject.h
  storage/connect/xtable.h
2014-03-10 18:29:04 +01:00
Olivier Bertrand
85e8aee47d - Temporary
modified:
  storage/connect/catalog.h
  storage/connect/colblk.cpp
  storage/connect/colblk.h
  storage/connect/connect.cc
  storage/connect/filamap.cpp
  storage/connect/filamfix.cpp
  storage/connect/filamfix.h
  storage/connect/filamtxt.cpp
  storage/connect/filamvct.cpp
  storage/connect/filamzip.cpp
  storage/connect/filamzip.h
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/plgdbsem.h
  storage/connect/plgdbutl.cpp
  storage/connect/reldef.cpp
  storage/connect/reldef.h
  storage/connect/tabdos.cpp
  storage/connect/tabdos.h
  storage/connect/tabfix.cpp
  storage/connect/tabfix.h
  storage/connect/tabfmt.cpp
  storage/connect/tabfmt.h
  storage/connect/table.cpp
  storage/connect/tabmac.h
  storage/connect/tabmul.h
  storage/connect/tabmysql.cpp
  storage/connect/tabodbc.cpp
  storage/connect/tabsys.cpp
  storage/connect/tabsys.h
  storage/connect/tabtbl.cpp
  storage/connect/tabtbl.h
  storage/connect/tabvct.cpp
  storage/connect/tabvct.h
  storage/connect/tabwmi.cpp
  storage/connect/tabwmi.h
  storage/connect/tabxml.cpp
  storage/connect/tabxml.h
  storage/connect/valblk.cpp
  storage/connect/valblk.h
  storage/connect/value.cpp
  storage/connect/value.h
  storage/connect/xobject.cpp
  storage/connect/xobject.h
  storage/connect/xtable.h
2014-03-10 12:21:17 +01:00
Michael Widenius
e63c03db8d Merge with 10.0-base
Automatic merge, except for server_audit.cc that had to be modified slightly
Changes to xtradb and innobase where ignored was these made no sence for 10.0
2014-03-13 16:43:11 +02:00
Michael Widenius
49ca12a107 Fixed some failing tests
Remove memory warnings if mysql client aborts early
Changed copyright for clients

client/mysql.cc:
  Free memory if get_options fails, so that we don't get warnings from safemalloc
include/welcome_copyright_notice.h:
  Added SkySQL to client copyrights
mysql-test/valgrind.supp:
  Added suppressions for memory leaks from dlopen() for OpenSUSE 12.3
storage/oqgraph/mysql-test/oqgraph/regression_mdev5744.result:
  Suppress warning
storage/oqgraph/mysql-test/oqgraph/regression_mdev5744.test:
  Suppress warning
2014-03-12 11:24:03 +02:00
Michael Widenius
1727849659 Merge with 5.5 2014-03-11 17:49:09 +02:00
Michael Widenius
800a278fd0 Fixed a compiler failure and removed some warnings in windows
extra/replace.c:
  Removed compiler warning
sql/unireg.cc:
  Removed compiler warning
storage/maria/ma_blockrec.c:
  Removed compiler warning
storage/maria/ma_dynrec.c:
  Fixed compiler failure
storage/maria/ma_unique.c:
  Removed compiler warning
storage/myisam/mi_check.c:
  Removed compiler warning
storage/myisam/mi_checksum.c:
  Removed compiler warning
2014-03-11 16:53:24 +02:00
Michael Widenius
599eb0dc86 Fixed MDEV-5724 "Server crashes on SQL select containing more group by and left join statements using innodb tables"
The problem was that a big record was allocated on the stack, which casued stack to run out.
  
Fixed by using my_safe_alloca() instead of my_alloca() when allocating records.
Now only records <= 16384 are allocated on the stack.

mysql-test/r/stack-crash.result:
  Added test case
mysql-test/t/stack-crash.test:
  Added test case
storage/maria/ma_blockrec.c:
  Use my_safe_alloca() instead of my_alloca()
storage/maria/ma_dynrec.c:
  Use my_safe_alloca() instead of my_alloca()
storage/maria/maria_def.h:
  Added MARIA_MAX_RECORD_ON_STACK
storage/maria/maria_pack.c:
  Use my_safe_alloca() instead of my_alloca()
2014-03-10 21:40:27 +02:00
Michael Widenius
3b55c2fe21 Fixed MDEV-5724 "Server crashes on SQL select containing more group by and left join statements using innodb tables"
The problem was that a big record was allocated on the stack, which casued stack to run out.

Fixed by using my_safe_alloca() instead of my_alloca() when allocating records.
Now only records <= 16384 are allocated on the stack.

mysql-test/r/stack-crash.result:
  Added test case
mysql-test/t/stack-crash.test:
  Added test case
storage/maria/ma_blockrec.c:
  Use my_safe_alloca() instead of my_alloca()
storage/maria/ma_dynrec.c:
  Use my_safe_alloca() instead of my_alloca()
storage/maria/maria_def.h:
  Added MARIA_MAX_RECORD_ON_STACK
storage/maria/maria_pack.c:
  Use my_safe_alloca() instead of my_alloca()
2014-03-10 21:14:38 +02:00
Sergei Golubchik
68916bcab3 workaround for xtradb on gcc 4.1.2 RHEL5/x86, gcc atomic ops only work under -march=i686 2014-03-07 17:47:47 +01:00
Sergei Golubchik
a5fdd75980 XtraDB made the default 2014-03-07 15:21:07 +01:00
Sergey Vojtovich
b95c8ce530 MDEV-5675 - Performance: my_hash_sort_bin is called too often
Reduced number of my_hash_sort_bin() calls from 4 to 1 per query.
Reduced number of memory accesses done by my_hash_sort_bin().

Details:
- let MDL subsystem use pre-calculated hash value for hash
  inserts and deletes
- let table cache use pre-calculated MDL hash value
- MDL namespace is excluded from hash value calculation, so that
  hash value can be used by table cache as is
- hash value for MDL is calculated as resulting hash value + MDL
  namespace
- extended hash implementation to accept user defined hash function
2014-03-06 16:19:12 +04:00
Olivier Bertrand
126bb34513 - Fix MDEV-5497. The city column length was wrong in the create table statements.
modified:
  storage/connect/mysql-test/connect/r/fix.result
  storage/connect/mysql-test/connect/t/fix.test
2014-03-05 12:10:02 +01:00
Sergei Golubchik
75124c5d2b xtradb, windows, aio: fix the bad merge 2014-03-04 22:25:34 +01:00
John Esmet
8a3e6b9c81 Fix include search paths in the handlerton 2014-03-04 11:22:10 -05:00
Sergei Golubchik
016bd4fc5f MDEV-5620 CMake option to compile against an external PCRE library 2014-03-04 01:22:53 +01:00
Sergei Golubchik
8705d00ab6 MDEV-5748 Assertion `status_var.memory_used == 0' fails on disconnect after opening an OQGRAPH table
make sure MY_THREAD_SPECIFIC is not set for memroot that can be
transferred between threads
2014-03-02 19:01:34 +01:00
Sergei Golubchik
eb9f422c43 MDEV-5667 online alter and changed field/index options
use the Alter_inplace_info::ALTER_COLUMN_OPTION flag if
field/column flags were altered.

change ha_example to use check_if_supported_inplace_alter() instead
of obsolete check_if_incompatible_data()
2014-03-02 15:02:13 +01:00
Sergei Golubchik
1b608b0b9c MDEV-5735 Selecting from SEQUENCE table with negative number hangs server 2014-03-01 13:27:04 +01:00
Sergei Golubchik
45236704e8 update InnoDB version 2014-02-28 21:46:43 +01:00
Sergei Golubchik
4b3cf4aa26 XtraDB compilation failures on Windows (again) 2014-02-28 21:04:58 +01:00
Michael Widenius
a10a9448b0 Added new states to be able to better diagnose where server hangs.
- Table locks now ends with state "After table lock"
- Open table now ends with state "After opening tables"
- All calls to close_thread_tables(), not only from mysql_execute_command(), has state "closing tables"
- Added state "executing" for mysql admin commands, like CACHE INDEX, REPAIR TABLE etc.
- Added state "Finding key cache" for CACHE INDEX
- Added state "Filling schema table" when we generate temporary table for SHOW commands and information schema.

Other things:
Add limit from innobase for thread_sleep_delay. This fixed a failing tests case.
Added db.opt to support-files to make 'make package' work


mysql-test/suite/funcs_1/datadict/processlist_val.inc:
  Use new state
mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result:
  Updated test result because of new state
mysql-test/suite/funcs_1/r/processlist_val_no_prot.result:
  Updated test result because of new state
sql/CMakeLists.txt:
  Have option files in support-files
sql/lock.cc:
  Added new state 'After table lock'
sql/sql_admin.cc:
  Added state "executing" and "Sending data" for mysql admin commands, like CACHE INDEX, REPAIR TABLE etc.
  Added state "Finding key cache"
sql/sql_base.cc:
  open tables now ends with state "After table lock", instead of NULL
sql/sql_parse.cc:
  Moved state "closing tables" to close_thread_tables()
sql/sql_show.cc:
  Added state "Filling schema table" when we generate temporary table for SHOW commands and information schema.
storage/xtradb/buf/buf0buf.c:
  Removed compiler warning
storage/xtradb/handler/ha_innodb.cc:
  Add limit from innobase for thread_sleep_delay. This fixed a failing tests case.
support-files/db.opt:
  cmakes needs this to create data/test directory
2014-05-03 19:12:17 +03:00
unknown
968f4d4e25 MDEV-6139: UPDATE w/ join against MRG_MyISAM table with read-only sub-table failsUPDATE w/ join against MRG_MyISAM table with read-only sub-table fails
The problem was that on opening all tables TL_WRITE, than local tables which is not updated set to TL_READ, but underlying tables of MyISAMmrg left untouched.

Prartition engine has not this problem.

All cases where lock_type assigned is not changed because call of virtual function is not cheap.
2014-04-28 09:13:53 +03:00
Jan Lindström
772aa0c575 MDEV-6160: InnoDB: Failing assertion: page_is_comp(next_page) == page_is_comp(page)
This is not yet a fix. This is change to print additional information at the point
when this assertion is going to happen. Print as much information about the pages
and index to find out why next page is not a compact format.
2014-04-28 08:30:05 +03:00
Alexander Barkov
f5b73fe3f1 Merge from 5.3. 2014-04-21 12:19:47 +04:00
Sergei Golubchik
19c0e32497 typo in FederatedX. HA_READ_AFTER_KEY is not a valid index flag. 2014-04-14 09:54:42 +02:00
Sergei Golubchik
32b3c9f35d Make THDVAR_INT variables to be signed in SELECT in SHOW 2014-04-09 14:28:07 +02:00
Sergei Golubchik
cb67dcb618 mysql-5.5.37 selective merge 2014-03-27 22:26:58 +01:00
Sergei Golubchik
5d0c01608c 5.2 merge 2014-03-16 21:03:01 +01:00
Sergei Golubchik
e772cbd7b7 5.1 merge 2014-03-16 13:59:44 +01:00
Sergei Golubchik
d7304375e5 mysql-5.1.73 merge 2014-03-15 18:24:15 +01:00
Sergei Golubchik
41c760b121 merge 2014-02-28 10:00:31 +01:00
Satya Bodapati
a559f6abf7 Bug#18124788 - COMPRESSED TABLES REGRESSION FROM 5.6.13
After incrementing the number of pending uncompression operations,
buffer pool zip mutex can be released immediately.

Approved by Vasil. rb#4514
2014-02-28 12:45:53 +05:30
Sergei Golubchik
8d0238a6d8 MDEV-4955 discover of table non-existance on CREATE
Fix ha_table_exists() to take discovery into account correctly.
It must be able to discover both table existence (when no frm is
found) and table non-existance (when frm was found).
2014-02-27 22:43:42 +01:00
Olivier Bertrand
43362bc9a0 - Fix bug MDEV-5734
modified:
  storage/connect/mysql-test/connect/r/pivot.result
  storage/connect/mysql-test/connect/t/pivot.test
  storage/connect/tabmysql.cpp
  storage/connect/tabpivot.cpp

- Implement a first experimental support of MRR
  (compiled only if MRRBKA_SUPPORT is defined)
modified:
  storage/connect/colblk.h
  storage/connect/connect.cc
  storage/connect/connect.h
  storage/connect/global.h
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/plugutil.c
  storage/connect/user_connect.cc
2014-02-27 18:00:01 +01:00
Alexander Barkov
57cdc561fc Fixing AIX compilation failires 2014-02-27 19:44:00 +04:00
Jan Lindström
11826b1bcf Enable windows builds for XtraDB. 2014-02-27 16:41:49 +02:00
Sergei Golubchik
570c1a6fef MDEV-5672 MariaDB 10.0.8 doesn't compile without perfschema
apply the upstream patch
2014-02-27 12:25:51 +01:00
Sergei Golubchik
05aba79e98 MDEV-4447 MariaDB sources should have unix-style line endings everywhere 2014-02-27 12:00:16 +01:00
Elena Stepanova
560a526bc4 MDEV-5744 OQGRAPH backing table changes not reflected in OQGRAPH table
Disable query cache for OQGRAPH
2014-02-27 14:31:39 +04:00
Sergei Golubchik
98c0659150 compilation error in CONNECT with ODBC 2014-02-27 08:43:54 +01:00
Rich Prohaska
4e6d8249db #192 support HTON_SUPPORTS_CLUSTERED_KEYS 2014-02-26 14:39:06 -05:00
Sergei Golubchik
f19b5f4e1b OQGraph fails in --embedded 2014-02-26 20:11:00 +01:00
Sergei Golubchik
15ee97214d InnoDB 5.6.15 merge.
update test results
2014-02-26 19:36:33 +01:00
Sergei Golubchik
f92058a23e null-merge from innodb-5.6 mergetree (as of 5.6.14) 2014-02-26 19:22:48 +01:00
Sergei Golubchik
ac585e9ed5 Percona-Server-5.6.15-rel63.0.tar.gz merge 2014-02-26 19:21:23 +01:00
Rich Prohaska
7c506b017b #191 support -DTOKUDB_VERSION=SOME_VERSION_STRING 2014-02-26 10:58:44 -05:00
Sergei Golubchik
0dc23679c8 10.0-base merge 2014-02-26 15:28:07 +01:00
Jan Lindström
752ba087c8 MDEV-5746: Slow file extend when innodb_use_fallocate=1 and SSD
file storage.

Analysis: posix_fallocate was called using 0 as offset and len as
desired size. This is not optimal for SSDs.

Fix: Call posix_fallocate with correct offset i.e. current file size
and extend the file from there len bytes.
2014-02-26 13:49:50 +02:00
Jan Lindström
e479829a15 MDEV-5742: Assertion failure node->n_pending on fil0fil.c line 5039
on debug build when innodb_use_fallocate=1

Analysis: There was merge error that caused additional call to 
fil_node_complete_io.

Fixed by removing incorrect call and fixed calculation of extended
file size.
2014-02-26 12:06:12 +02:00
Sergei Golubchik
0b9a0a3517 5.5 merge 2014-02-25 16:04:35 +01:00
Rich Prohaska
e9b9fd9077 #188 keep track of and cleanup last_lock_timeout memory 2014-02-24 09:46:24 -05:00
Sergei Golubchik
004642525d Fix "cmake . && cmake -DWITHOUT_TOKUDB=1" to disable tokudb 2014-02-21 23:42:29 +01:00
Rich Prohaska
b77c0addba #190 zero out new null bytes to force valgrind to quit complaining about uninitialized bytes 2014-02-21 15:53:05 -05:00
Rich Prohaska
3fbd54a96d #189 add tokudb_kill_time session variable to set lock tree kill callback frequency 2014-02-21 08:21:31 -05:00
Sergei Golubchik
ea0915dcad federatedx: avoid unnecessary bzero. improve dbug traces 2014-02-21 00:52:58 +01:00
Sergei Golubchik
e840d323e2 MDEV-5698 Using ORDER BY in a FederatedX table is abnormally slow
In ::position() federated needs to know an element before the
current ("data_cursor") in the single-linked list. Replace list
traversal for every ::position() call (which is O(n^2)) with remembering
the current element before it's advanced by mysql_fetch_row().

storage/federatedx/federatedx_io_mysql.cc:
  mdev:5698
2014-02-21 00:52:50 +01:00
Rich Prohaska
f07613f140 #186 update cardinality on first table open 2014-02-20 07:41:11 -05:00
Sergey Vojtovich
d12c7adf71 MDEV-5314 - Compiling fails on OSX using clang
This is port of fix for MySQL BUG#17647863.

revno: 5572
revision-id: jon.hauglid@oracle.com-20131030232243-b0pw98oy72uka2sj
committer: Jon Olav Hauglid <jon.hauglid@oracle.com>
timestamp: Thu 2013-10-31 00:22:43 +0100
message:
  Bug#17647863: MYSQL DOES NOT COMPILE ON OSX 10.9 GM

  Rename test() macro to MY_TEST() to avoid conflict with libc++.
2014-02-19 14:05:15 +04:00
Murthy Narkedimilli
075a2fb716 Updated/added copyright header. Added line "use is subject to license terms"
to copyright header.
2014-02-17 18:19:04 +05:30
Sergei Golubchik
84c96a263e different fix for internal Oracle MySQL bug#16324629 that doesn't crash
(simply, copied from FederatedX)
2014-02-17 11:09:33 +01:00
Sergei Golubchik
84651126c0 MySQL-5.5.36 merge
(without few incorrect bugfixes and with 1250 files where only a copyright year was changed)
2014-02-17 11:00:51 +01:00
Thirunarayanan B
9ea02a1c09 Bug #18010711 UNIQUE PREFIX INDEX ON BINARY COLUMN:
FAILING ASSERTION: FLEN == LEN

Problem:
       Broken invariant triggered when building a unique index on a
binary column and the input data contains duplicate keys. This was broken
in debug builds only.

Fix:
       Fixed length of the binary datatype can be greater than length of
the shorter prefix on which index is being created.
2014-02-17 13:45:34 +05:30
Olivier Bertrand
1699947eef - Make alter.test to work on both Windows and Linux
modified:
  storage/connect/mysql-test/connect/r/alter.result
  storage/connect/mysql-test/connect/t/alter.test
2014-02-16 22:52:57 +01:00
Olivier Bertrand
ad9d7e8561 # This is a minor change commitment
- Fix accidental crash when closing domdoc xml table
modified:
  storage/connect/domdoc.cpp

- Update table and index flags. Correct version number in maria_declare_plugin.
modified:
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h
  storage/connect/mycat.cc
  storage/connect/mycat.h

- Fix syntax error when getting columns of a non-select srcdef (discovery)
modified:
  storage/connect/myconn.cpp

- Update some tests and result according to new flag setting
modified:
  storage/connect/mysql-test/connect/r/alter.result
  storage/connect/mysql-test/connect/r/dbf.result
  storage/connect/mysql-test/connect/t/dbf.test

- Change some tracing tests to avoid too much test printed
modified:
  storage/connect/plgdbutl.cpp
  storage/connect/tabutil.cpp
  storage/connect/value.cpp
2014-02-16 18:05:43 +01:00
Rich Prohaska
2e7e13af2d #185 fix out of range read from uint3korr 2014-02-14 10:11:51 -05:00
Sergei Golubchik
64f96de766 fix SphinxSE to not leave Sphinx_error status variable uninitialized 2014-02-14 15:16:23 +01:00
Rich Prohaska
a8ca3e2ab3 #184 fix mismatch between table_share->key_parts and the number really there. mysql increments key_parts for the extended keys. 2014-02-13 20:13:36 -05:00
Sergei Golubchik
913beda8c8 5.2 merge 2014-02-13 10:15:03 +01:00
Sergei Golubchik
48445f3556 5.1 merge 2014-02-13 08:25:33 +01:00
Sergei Golubchik
5f5d2db141 fix embedded tests
(mainly by backporting 5.5. changes)

mysql-test/suite/maria/t/distinct.test:
  Remove the test that requires SSL. One test case for a bug is enough.
sql/scheduler.cc:
  make it the same as in 5.5
storage/innodb_plugin/row/row0mysql.c:
  make it the same as in 5.5
storage/innodb_plugin/row/row0sel.c:
  make it the same as in 5.5
storage/xtradb/row/row0mysql.c:
  make it the same as in 5.5
storage/xtradb/row/row0sel.c:
  make it the same as in 5.5
2014-02-13 08:09:07 +01:00
Rich Prohaska
bc07ccf8a7 #182 fix dbt array memory leak 2014-02-12 15:07:44 -05:00
Rich Prohaska
d06d73633d #181 fix memory leak of the inserted bytes partitioned counter 2014-02-11 14:24:02 -05:00
Michael Widenius
94d23e2413 Fixed MDEV-3815: Aria engine return "The table is full" (ERROR 1114) inserting record, while MyISAM and InnoDB doesn't
Increase default pointer length for Aria tables to be able to handle big files without having to specify MAX_ROWS


mysql-test/suite/maria/icp.result:
  Updated result
mysql-test/suite/maria/maria-preload.result:
  More pages are needed with longer pointer length
mysql-test/suite/maria/maria.result:
  Added more tests
mysql-test/suite/maria/maria.test:
  Added more tests
storage/maria/ma_create.c:
  Increase default pointer length for Aria tables to be able to handle big files without having to specify MAX_ROWS
storage/maria/ma_range.c:
  Optimize records_in_range() to be more exact
storage/maria/ma_static.c:
  Increase default pointer size
storage/maria/ma_test2.c:
  Allow a bit larger errors in records_in_range
2014-02-11 19:40:33 +02:00
Annamalai Gurusami
6193c63211 Bug#18185930 UPD_NODE_INSERT_BLOB CAUSES BTR_EXTERN_OWNER_FLAG ASSERTION
Problem:

In the clustered index, when an update operation is done the overall
scenario (after rb#4479) is as follows:

1.  Delete mark the old record that is to be updated.
2.  The old record disowns the blobs.
3.  Insert the new record into clustered index.
4.  For non-updated blobs, new record must own it. Verified by assert.
5.  For non-updated blobs, in new record marked as inherited.

Scenario involving DB_LOCK_WAIT:

If step 3 times out, then we will skip 1 and 2 and will continue from
step 3.  This skipping is achieved by the UPD_NODE_INSERT_BLOB state.
In this case, step 4 is not correct.  Because of step 1, the new
record need not own the blobs.  Hence the assert failure.

Solution:

The assert in step 4 is removed.  Instead code is added to ensure that
the record owns the blob.  

Note:

This is a regression caused by rb#4479.

rb#4571 approved by Marko
2014-02-11 16:44:37 +05:30
Thirunarayanan B
7acdf29cb4 Bug #14049391 INNODB MISCALCULATES AUTO-INCREMENT AFTER DECREASING
AUTO_INCREMENT_INCREMENT
Problem:
=======
When auto_increment_increment system variable decreases,
immediate next value of auto increment column is not affected.

Solution:
========
	Get the previous inserted value of auto increment column by
subtracting the previous auto_increment_increment from next
auto increment value. After that calculate the current autoinc value
using newly changed auto_increment_increment variable.

	Approved by Sunny [rb#4394]
2014-02-10 10:13:35 +05:30
Olivier Bertrand
e1096934d7 - Check field option changes on ALTER TABLE in check_if_supported_inplace_alter.
If yes, the in-place algorithm cannot be used (inward tables)
modified:
  storage/connect/ha_connect.cc
  storage/connect/ha_connect.h

- add a test on ALTER TABLE
added:
  storage/connect/mysql-test/connect/r/alter.result
  storage/connect/mysql-test/connect/t/alter.test
2014-02-07 22:44:43 +01:00
Rich Prohaska
dfe4872524 #180 avoid thd_proc_info pointing to invalid info (like when a function sets proc info with a local variable and then returns) 2014-02-07 12:58:10 -05:00
Rich Prohaska
b7e362e48c #178 clean up hatoku_defines.h a bit. it is a mess. 2014-02-07 12:07:53 -05:00
andrew
64ae7bb930 Merge latest MariaDB trunk 2014-02-07 22:21:03 +10:30
Sergei Golubchik
e8193eeb8d skip performance_schema also in spider/bg suite
(as it was done for spider suite)
2014-02-06 21:58:38 +01:00
Sergei Golubchik
1b3c15f199 merge with 10.0-monty 2014-02-06 16:38:40 +01:00
Sergei Golubchik
37b8691cec fix the fix and update test results for MDEV-4439 2014-02-06 16:27:23 +01:00
Alexey Botchkov
bf050b1db2 MDEV-4439 ALTER TABLE .. [ADD|DROP] FOREIGN KEY IF [NOT] EXISTS does not work if constraint name is not used.
Patches for server and the Innodb engine.
  Server is fixed so it does nothing if no indexes left to alter.
  Innodb parser is fixed so it looks for the IF [NOT] EXISTS option in a string.
  Another change is that it uses the index name for the internal dictionary.
  Prior to that it only used the CONSTRAINT name for it.
2014-02-06 16:27:05 +01:00
Sergei Golubchik
73aea0a732 MDEV-5499 install_spider.sql tries to create tables with DEFAULT clause for TEXT columns 2014-02-06 16:25:40 +01:00
Michael Widenius
313f18be5a Fixed errors and warnings found by buildbot
mysql-test/r/lowercase_table2.result:
  Updated result
  (The change happend because we don't try to open the table anymore as part of create table)
mysql-test/suite/rpl/r/create_or_replace_mix.result:
  Fixed result file
mysql-test/suite/rpl/r/create_or_replace_row.result:
  Fixed result file
mysql-test/suite/rpl/r/create_or_replace_statement.result:
  Fixed result file
mysql-test/suite/rpl/t/create_or_replace.inc:
  Drop open temporary table
mysys/my_delete.c:
  Added missing newline
plugin/metadata_lock_info/mysql-test/metadata_lock_info/r/user_lock.result:
  Fixed result
  (Lock names was before off by one. Was corrected by my previous patch)
sql/sql_select.cc:
  Fixed compiler warnings by adding missing casts
storage/connect/ha_connect.cc:
  Fixed compiler warnings
storage/innobase/os/os0file.cc:
  Fixed compiler warnings
storage/xtradb/btr/btr0btr.cc:
  Fixed compiler warnings
storage/xtradb/handler/ha_innodb.cc:
  removed not used function
strings/ctype-uca.c:
  Fixed compiler warnings
support-files/compiler_warnings.supp:
  Added suppression for warnings that are wrong or are not serious andthat we don't plan to fix.
2014-02-06 16:14:09 +02:00