Commit graph

88090 commits

Author SHA1 Message Date
Michael Widenius
dca4b91507 MDEV-5906: Thread status not changed when applying log events
sql/log_event.cc:
  Added THD_STAGE_INFO when applying row events
2014-03-22 12:08:35 +02:00
Sergey Petrunya
79a8a6130b Code cleanup:
- Move [some] engine-agnostic tests from t/selectivity.test to t/selectivity_no_engine.test
- Move Histogram::point_selectivity to sql_statistics.cc
2014-03-27 13:08:00 +04:00
Sergey Petrunya
0d67aafaa2 Merge 2014-03-27 12:37:05 +04:00
Sergey Petrunya
ab061a2bb3 MDEV-5926, MDEV-4362 post-fixes:
- Histogram::find_bucket() should not walk off the end of the value range.
- Address review feedback in Histogram::point_selectivity(): different handling
  for zero-width buckets, and explanations.
2014-03-27 12:30:49 +04:00
Sergei Golubchik
1a4c8ae1be heap.test: hide a warning on 32-bit 2014-03-27 08:11:05 +01:00
Sergei Golubchik
e29a4dd519 MDEV-5433 select_result::send_error() is unused
remove dead code
2014-03-26 22:32:20 +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
97687f2888 Fix hostcache_ipv4_blocked and hostcache_ipv6_blocked to pass.
Don't abort plugin reads whem mpvio->make_it_fail is set - this can leak information.
2014-03-26 22:32:10 +01:00
Sergei Golubchik
06bdc441f0 update tokudb tests for 10.0 2014-03-26 22:31:17 +01:00
Sergei Golubchik
06be773cdb Revert revision sergii@pisem.net-20130123151853-xc6i3l11aqv0iykk
Rename back my_init_dynamic_array2() -> init_dynamic_array2()
It happens to be a part of the de facto API :(
2014-03-26 22:26:13 +01:00
Sergei Golubchik
10740939eb 5.5 merge 2014-03-26 22:25:38 +01:00
Sergei Golubchik
44002a34e6 MDEV-5955 Server crashes in handler::ha_external_lock or assertion `m_lock_type == 2' fails in handler::ha_close on disconnect with a locked temporary table
first unlock locked tables, then close and remove temporary
2014-03-26 19:56:23 +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
Sergey Petrunya
dee11f9633 MDEV-4362: {division by zero when lookup constant is outside the value table}
- Fix Histogram::point_selectivity() to work in the case where the 
  passed value_pos=0 (or 1) and the first (or the last) bucket in the 
  histogram has zero value-range (i.e one value).
2014-03-26 21:05:31 +04:00
Sergey Petrunya
ad842b5f05 MDEV-5926: EITS: Histogram estimates for column=least_possible_value are wrong
[Attempt ]
- Use a new selectivity calculation formula in Histogram::point_selectivity. 
  The formula is different from the old one because it was developed from scratch.
  it doesn't have any possible division-by-zero problems.
2014-03-26 17:55:00 +04:00
Sergei Golubchik
a91c59c2af MDEV-5920 MySQL Bug#16765410 FTS: STACK AROUND THE VARIABLE 'MYSTR' WAS CORRUPTED IN INNOBASE_STRNXFRM 2014-03-26 09:43:02 +01:00
Sergei Golubchik
319bcde937 MDEV-5861 MySQL Bug#12601974 - STORED PROCEDURE SQL_MODE=NO_BACKSLASH_ESCAPES IGNORED AND BREAKS REPLICATION
escape usernames in CREATE/DROP USER error messages according to NO_BACKSLASH_ESCAPES
2014-03-26 09:42:52 +01:00
Sergei Golubchik
218280bcd7 make append_query_string() more usable:
simplify the prototype and move it to sql_string.h
2014-03-26 09:42:33 +01:00
Sergei Golubchik
c73a0638c2 remove append_escaped(), use String::append_for_single_quote() instead 2014-03-26 09:41:52 +01:00
Sergei Golubchik
d0c6a05eb5 small cleanup in sql_acl.cc:
use LEX_STRING, keep similar functions together, remove duplicated code
2014-03-26 09:41:37 +01:00
Sergei Golubchik
88ec8a08f3 MDEV-5909 MySQL BUG#11748924 PARTITIONS: TOO-LONG COMMENT CAUSES NO WARNING 2014-03-26 09:41:28 +01:00
Sergei Golubchik
11b498d6e0 build_frm_image(): don't try to guess the "real table name" from the
field list, it doesn't work if ALTER TABLE has replaced all fields.
Instead, pass the correct original table name down from the caller.
2014-03-26 09:41:16 +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
4574cf43b6 bug in HA_TOPTION_SYSVAR of the enum type - enum string was generated incorrectly 2014-03-26 09:33:03 +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
99316b51b6 compilation failure with BUILD/compile-amd64-valgrind-max 2014-03-26 08:24:19 +01:00
Sergei Golubchik
413113dad6 move file->position() down, to make sure it's executed only when
previous file->index_next (or other file->... index access method)
succeeded
2014-03-25 22:41:18 +01:00
Sergei Golubchik
cb0a661cd7 don't put libmysqlclient symbols extra-used on debian
in the libmysqlclient_16 version node.
2014-03-25 17:34:45 +01:00
Sergei Golubchik
21a17536c6 5.3 merge 2014-03-25 11:09:12 +01:00
Sergei Golubchik
434bbc34ad MDEV-5913 Windows: 10.0 crashes on shutdown
add pthread_mutex_destroy(&THR_LOCK_dbug); that was apparently
forgotten since the very first MySQL version
2014-03-24 20:02:08 +01:00
Sergei Golubchik
bd4e7dac59 mysqltest bug: reset --replace command after every
error message (because error messages use replacements)
2014-03-24 20:02:00 +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
Sergei Golubchik
097566d61c rpl tests: move "include/master-slave.inc" down to be after all possible
checks that can skip the test
2014-03-24 20:01:45 +01:00
Sergei Golubchik
01b1eef23e MDEV-5831 Upgrade from MariaDB 5.5.36 via yum fails
Allow "rpm -q --whatprovides mysql-server" to return more than one row.
(all rows should be identical though)

support-files/rpm/server-prein.sh:
  don't use "head -1" or "uniq" to avoid introducing new dependencies.
  "sed" is already used in this script.
2014-03-24 20:01:37 +01:00
Alexander Barkov
63d0918807 MDEV-5783 Assertion `0' failed in make_sortkey(SORTPARAM*, uchar*, uchar*) on ORDER BY HEX( UNCOMPRESSED_LENGTH( pk ) ) 2014-03-23 16:02:56 +04: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
Sergei Golubchik
a52e2c787d MDEV-5823 MySQL bug#11760213-52599: ALTER TABLE REMOVE PARTITIONING ON NON-PARTITIONED TABLE CORRUPTS MYISAM
add the test case only
2014-03-21 14:05:44 +01:00
Sergey Petrunya
e59dec0345 MDEV-5917: EITS: different order of predicates in IN (...) causes different estimates
- Forgot to update one .result file.
2014-03-21 15:42:37 +04:00
unknown
2eb920b262 Fix to make it compiling with valgrind. 2014-03-21 12:23:09 +02: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
Sergei Golubchik
3bb249612f MDEV-5846 MySQL Bug - Cost with FORCE/USE index seems incorrect in some cases. 2014-03-20 23:27:08 +01:00
Sergei Golubchik
dee0fd4233 MDEV-5820 MySQL Bug definitions in regex/my_regex.h conflict with /usr/include/regex.h 2014-03-20 23:26:50 +01:00
Sergei Golubchik
7b1b744f53 MDEV-5849 MySQL bug#12602983 - User without privilege on routine can discover its existence by executing "select non_existing_func();" or by "call non_existing_proc()"
add or move privilege checks before existence checks
2014-03-20 23:26:41 +01:00
Sergey Petrunya
0e211841f2 MDEV-5917: EITS: different order of predicates in IN (...) causes different estimates
- Save range key before making field->pos_in_interval() call (like we do for non-equality ranges)
2014-03-21 00:53:41 +04:00
Sergei Golubchik
9ff0c9f730 MDEV-5858 MySQL Bug#12744991 - DECIMAL_ROUND(X,D) GIVES WRONG RESULTS WHEN D == N*(-9)
don't use mysql-5.6 change.
correct fix: zero-out rounded tail after the number was shifted because
of the carry digit (otherwise the carry digit will be zeroed out too).
2014-03-20 09:50:45 +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
Sergei Golubchik
47f438675b MDEV-5894 MySQL BUG#34750: Print database name in Unknown Table error message 2014-03-20 00:44:35 +01:00
Michael Widenius
f71dc02e67 Automatic merge 2014-03-20 01:07:01 +02:00