1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-28 17:36:30 +03:00
Commit Graph

23872 Commits

Author SHA1 Message Date
Sergei Golubchik
47c844f236 MDEV-7219 SQL_CALC_FOUND_ROWS yields wrong result
revert the code in filesort that conditionally updated 'found_rows',
rely on filesort_limit_arg instead.
2015-01-19 14:18:44 +01:00
Sergei Golubchik
1f4ebbd6e0 MDEV-7184 main.key_cache fails in buildbot on Windows 32bit
change the test not to use absolute values of Key_blocks_unused.
2015-01-19 14:07:51 +01:00
Sergei Golubchik
56c323c10f MDEV-6728 KILL QUERY executed on an idle connection can interrupt the next query
reset KILL_QUERY when a new query execution is just about to be started
2015-01-19 14:07:41 +01:00
Alexander Barkov
c11a054a98 MDEV-7152 Wrong result set for WHERE a='oe' COLLATE utf8_german2_ci AND a='oe'
- The code that tested if
     WHERE expr=value AND expr=const
  can be rewritten to:
     WHERE const=value AND expr=const
  was incomplete in case of STRING_RESULT.
- Moving the test into a new function, to reduce duplicate code.
2015-01-18 01:54:11 +04:00
Vicențiu Ciorbaru
09d54b37f5 MDEV-7362: ANALYZE TABLES crash with table-independent-statistics gathering
FULLTEXT indexes do not permit index first lookups. By calling:
ha_index_first() with a garbage parameter, random data gets overwritten
that causes the table->field array to be corrupted. Subsequently, when
the field array is accessed, a segfault occurs.

By not allowing index statistics for FULLTEXT indexes, the problem is
resolved.
2015-01-17 16:58:10 +00:00
Alexander Barkov
6e6750ad6c MDEV-7366 SELECT 'a' = BINARY 'A' returns 1 (utf8 charset, utf8_unicode_ci collation)
Fixing a wrong assymetric code in Arg_comparator::set_cmp_func().
It existed for a long time, but showed up in 10.0.14 after the fix
for "MDEV-6666 Malformed result for CONCAT(utf8_column, binary_string)".
2015-01-17 17:52:03 +04:00
Alexander Barkov
252be4c9e7 A post-fix for:
MDEV-7254 Assigned expression is evaluated twice when updating column TIMESTAMP NOT NULL
The test type_timestamp failed depending on the build machine time zone.
Setting a fixed time zone for the test.
2015-01-17 16:10:45 +04:00
Jan Lindström
6164157b3f MDEV-7254: Assigned expression is evaluated twice when updating
column TIMESTAMP NOT NULL
      
Analysis: Problem was that value->is_null() function is called
even when user had explicitly set the value for timestamp
field. Calling this function had the side effect that
expression was evaluated twice.
      
Fix: (by Sergei Golubchik) check instead value->null_value.
2015-01-16 12:00:07 +02:00
Elena Stepanova
26a8a95cb3 MDEV-7431 main.log_tables fails sporadically in buildbot
Structure of the table created by the test to archive mysql.slow_log
data didn't match the structure of mysql.slow_log. The failure only 
appeared if the slow_log was not empty, which was very rare. 
  
Updated the structure of the table.
2015-01-15 20:15:50 +04:00
Sergei Golubchik
2b5db1d5bc put at least some output-generating statement in the test
otherwise mysqltest complains "No queries executed but non-empty result file found!"
2014-12-02 20:35:45 +01:00
Sergei Golubchik
b3aed01ae9 fix include/not_embedded.inc to be independent from the environment
in particular, not fail with --vertical_results
2014-12-02 19:15:16 +01:00
Alexander Barkov
f8e1952be4 MDEV-7149 Constant propagation erroneously applied for LIKE
Simply disallowing equality propagation into LIKE.
A more delicate fix is be possible, but it would need too many changes,
which is not desirable in 10.0 at this point.
2014-11-28 18:11:58 +04:00
Sergei Golubchik
67e2e14627 Merge 2014-11-21 08:50:44 +01:00
Sergei Golubchik
82f56328ea after merge fixes:
* adjust viossl.c to take account the new code
  (SSL_get_error is used now, cannot simply remap it)
* remove unnecessary version check
* update the test to 10.0
2014-11-21 00:02:24 +01:00
Sergei Golubchik
dbbe365132 5.5 merge 2014-11-20 16:27:16 +01:00
Sergei Golubchik
d851d5e70c MDEV-6975 Implement TLS protocol
followup:
* explicitly disable SSLv2 and SSLv3, keep other protocols enabled
* fix a compiler warning
* rename the test and combinations to avoid confusion

vio/viossl.c:
  fix a compiler warning
2014-11-19 18:54:02 +01:00
Sergei Golubchik
3495801e2e 5.5 merge 2014-11-19 17:23:39 +01:00
Sergey Petrunya
00475d40d1 MDEV-7118: Anemometer stop working after upgrade to from...
When the optimizer considers an option to use Loose Scan, it should 
still consider UNIQUE keys (Previously, MDEV-4120 disabled loose scan
for all kinds of unique indexes. That was wrong)

However, we should not use Loose Scan when trying to satisfy 
 "SELECT DISTINCT col1, col2, .. colN"
when using an index defined as UNIQU(col1, col2, ... colN).
2014-11-19 17:14:49 +03:00
Alexander Barkov
154ec0f420 MDEV-6993 Bad results with join comparing DECIMAL and ENUM/SET columns 2014-11-19 12:08:35 +04:00
Alexander Barkov
55dd89e919 MDEV-6978 Bad results with join comparing case insensitive VARCHAR/ENUM/SET
expression to a _bin ENUM column
2014-11-19 10:33:49 +04:00
Sergei Golubchik
df7b27f1fe MDEV-6984 Can't migrate from MySQL 5.6.21 to MariaDB 10
in mysql_upgrade: do FLUSH PRIVILEGES at the end, not together with
mysql_fix_privilege_tables

mysql-test/t/mysql_upgrade-6984.opt:
  use a dummy second option to force server restart after the test
2014-11-19 00:19:17 +01:00
Sergei Golubchik
51d7e80355 MDEV-4285 Server crashes in ptr_compare on NOW and CAST in ORDER BY
skip qsort if the sort key has zero length
2014-11-18 22:27:31 +01:00
Sergei Golubchik
c417da24a3 MDEV-6794 XtraDB no longer using UNIQUE as clustered index when PK missing
try the first unique key as a surrogate PK *before* disabling extended
keys because of missing PK
2014-11-18 22:26:14 +01:00
Sergei Golubchik
ea04a8cfda MDEV-6805 one can set character_set_client to utf32
use the same restriction for character_set_client on the command line
and from SQL.

Also: remove strange hack from thd_init_client_charset() that contradicted
the manual (collation_connection and character_set_result were not always set)
2014-11-18 22:25:47 +01:00
Sergei Golubchik
a8bd285f7c MDEV-6785 Wrong result on 2nd execution of PS with aggregate function, FROM SQ or MERGE view
a different fix for view.test --ps-protocol crash
(revert the old fix that has caused a regression)
2014-11-18 22:25:41 +01:00
Sergei Golubchik
303eec5774 MDEV-6880 Can't define CURRENT_TIMESTAMP as default value for added column
ALTER TABLE: don't fill default values per row, do it once.
And do it in two places - for copy_data_between_tables() and for online ALTER.

Also, run function_defaults test both for MyISAM and for InnoDB.
2014-11-18 22:25:33 +01:00
Alexander Barkov
b52d4d0076 MDEV-6991 GROUP_MIN_MAX optimization is erroneously applied in some cases 2014-11-18 23:15:54 +04:00
Sergei Golubchik
cb8f837a3d MDEV-6975 Implement TLS protocol
change SSL methods to be SSLv23 (according to openssl manpage:
"A TLS/SSL connection established with these methods may understand
the SSLv2, SSLv3, TLSv1, TLSv1.1 and TLSv1.2 protocols") from
TLSv1 methods, that go back to the initial SSL implementation
in MySQL in 2001.

OpenSSL default ciphers are different if TLSv1.2 is enabled,
so tests need to take this into account.
2014-11-18 17:57:06 +01:00
Sergei Golubchik
386e2e52f6 new mysqltest connect option SSL-CIPHER=xxxx 2014-11-18 17:56:58 +01:00
Sergei Golubchik
84fc27fbef 5.3 merge 2014-11-18 17:36:51 +01:00
Sergei Golubchik
cc2c296309 MDEV-4513 Valgrind warnings (Conditional jump or move depends on uninitialised value) in inflate on UNCOMPRESS 2014-11-18 15:42:48 +01:00
Sergei Golubchik
5d0122bd77 MDEV-7113 difference between check_vcol_func_processor and check_partition_func_processor
MDEV-6789 segfault in Item_func_from_unixtime::get_date on updating table with virtual columns

* prohibit VALUES in partitioning expression
* prohibit user and system variables in virtual column expressions
* fix Item_func_date_format to cache locale (for %M/%W to return the same as MONTHNAME/DAYNAME)
* fix Item_func_from_unixtime to cache time_zone directly, not THD (and not to crash)
* added tests for other incorrectly allowed (in vcols) functions to see that they don't crash
2014-11-18 15:42:40 +01:00
Alexander Barkov
e52b1637e0 MDEV-6950 Bad results with joins comparing DATE/DATETIME and INT/DECIMAL/DOUBLE/ENUM/VARCHAR columns
MDEV-6971 Bad results with joins comparing TIME and DOUBLE/DECIMAL columns
Disallow using indexes on non-temporal columns to optimize
ref access, range access and table elimination when the counterpart's
cmp_type is TIME_RESULT, e.g.:
  SELECT * FROM t1 WHERE indexed_int_column=time_expression;
Only index on a temporal column can be used to optimize temporal comparison
operations.
2014-11-18 16:33:29 +04:00
unknown
4d882329a9 MDEV-7116: Dynamic column hangs/segfaults
Going to 'create_new_string:' caused double freeing alloc_plan (there and at 'end:').
2014-11-17 17:13:30 +01:00
Alexey Botchkov
c9742ceac5 MDEV-6883 ST_WITHIN crashes server if (0,0) is matched to POLYGON((0 0)).
Fixed the case when a polygon contains a single-point ring.
2014-11-15 21:30:16 +04:00
Sergei Golubchik
6a2c170141 MDEV-6849 ON UPDATE CURRENT_TIMESTAMP doesn't always work
reset default fields not for every modified row, but only once,
at the beginning, as the set of modified fields doesn't change.

exception: INSERT ... ON DUPLICATE KEY UPDATE - the set of fields
does change per row and in that case we reset default fields per row.
2014-11-13 13:40:11 +01:00
Elena Stepanova
a1dfaa28a1 MDEV-7073 main.information_schema and main.information_schema_all_engines fail in buildbot on a build without perfschema
main.information_schema: added a condition to the query to exclude perfschema tables
main.information_schema_all_engines: added a call to the include file to check for the presence of perfschema
2014-11-12 06:27:56 +04:00
Sergey Petrunya
9578a332a2 Fix buildbot failure: make selectivity.test and selectivity_innodb.test work when
table names are case-insensitive.
2014-11-11 19:59:31 +03:00
Alexander Barkov
9e8202013a MDEV-6965 non-captured group \2 in regexp_replace 2014-11-10 16:43:27 +04:00
Sergei Golubchik
360c49c1b9 MDEV-6179: dynamic columns functions/cast()/convert() doesn't play nice with CREATE/ALTER TABLE
When parsing a field declaration, grab type information from LEX before it's overwritten
by further rules. Pass type information through the parser stack to the rule that needs it.
2014-11-08 19:54:42 +01:00
Alexander Barkov
e072a647d9 MDEV-6865 Merge Bug#18935421 RPAD DIES WITH CERTAIN PADSTR INTPUTS.. 2014-11-17 17:24:04 +04:00
unknown
e7c356f717 MDEV-6868: MariaDB server crash ( select with union and order by with subquery )
Excluding ORDER BY condition should be done after preparation it (even to catch syntax errors).
2014-11-15 22:18:33 +01:00
Sergei Golubchik
2160646c1d 5.5 merge 2014-11-03 17:47:37 +01:00
Alexander Barkov
d1ca1c1fae MDEV-7001 Bad result for NOT NOT STRCMP('a','b') and NOT NOT NULLIF(2,3)
The bug is not very important per se, but it was helpful to move
Item_func_strcmp out of Item_bool_func2 (to Item_int_func),
for the purposes of "MDEV-4912 Add a plugin to field types (column types)".
2014-11-02 01:08:09 +04:00
Kristian Nielsen
bad5fdec18 Fix sporadic test failure in main.processlist
The test runs a query in one thread, then in another queries the processlist
and expects to find the first thread in the COM_SLEEP state. The problem is
that the thread signals completion to the client before changing to COM_SLEEP
state, so there is a window where the other thread can see the wrong state.

A previous attempt to fix this was ineffective. It set a DEBUG_SYNC to handle
proper waiting, but unfortunately that DEBUG_SYNC point ended up triggering
already at the end of SET DEBUG_SYNC=xxx, so the wait was ineffective.

Fix it properly now (hopefully) by ensuring that we wait for the DEBUG_SYNC
point to trigger at the end of the SELECT SLEEP(), not just at the end of
SET DEBUG_SYNC=xxx.
2014-10-31 12:48:17 +01:00
Sergey Petrunya
e4521f8cae Merge 2014-10-29 15:20:46 +03:00
Sergey Petrunya
30b28babdc Merge 5.3->5.5 2014-10-29 13:22:48 +03:00
Igor Babaev
100b10d8ef Fixed bug mdev-6843.
The function  get_column_range_cardinality() returned a wrong result for any column
containing only null values.
2014-10-28 22:31:52 -07:00
Igor Babaev
2d088e265c Merge 2014-10-28 16:31:26 -07:00
Sergey Petrunya
a8341dfd6e MDEV-6879: Dereference of NULL primary_file->table in DsMrr_impl::get_disk_sweep_mrr_cost()
(Backport to 5.3)
(Attempt #2)
- Don't attempt to use BKA for materialized derived tables. The 
  table is neither filled nor fully opened yet, so attempt to 
  call handler->multi_range_read_info() causes crash.
2014-10-29 01:46:05 +03:00