Recommit to 5.1.22.
The bug caused memory corruption for some queries with top OR level
in the WHERE condition if they contained equality predicates and
other sargable predicates in disjunctive parts of the condition.
The corruption happened because the upper bound of the memory
allocated for KEY_FIELD and SARGABLE_PARAM internal structures
containing info about potential lookup keys was calculated incorrectly
in some cases. In particular it was calculated incorrectly when the
WHERE condition was an OR formula with disjuncts being AND formulas
including equalities and other sargable predicates.
Recommit to 5.1.22.
Killing a SELECT query with KILL QUERY or KILL CONNECTION
causes a server crash if the query cache is enabled.
Normal evaluation of a query may be interrupted by the
KILL QUERY/CONNECTION statement, in this case the mysql_execute_command
function returns TRUE, and the thd->killed flag has true value.
In this case the result of the query may
be cached incompletely (omitting call to query_cache_insert inside
the net_real_write function), and next call to query_cache_end_of_result
may lead to server crash.
Thus, the query_cache_end_of_result function has been modified to abort
query cache in the case of killed thread.
"Test federated_bug_25714 issues non-existing shell command"
Problem caused by missing '$' symbol in eval statement causing it
to always attempt to run test even if the test was not compiled.
Fixed failing func_misc test for embedded server
Added casts to avoid compiler warnings
Removed Table_locks_immediate as it's depending on log file cacheing
Changed type of get_time() to avoid warnings
Removed testing if purger master logs succeded as this is not deterministic
Patch by: Monty Taylor <mtaylor@mysql.com>
Fixes by: Stewart Smith
Added the ability to run ndb_size.pl on mulitple databases and also to exclude lists of databases and tables from analysis.
---
Added schema name information to index table calculations as well.
---
Made database an optional parameter, the exclusion of which causes all databases to be examined.
If selecting from information_schema fails, attempt to fall back to show tables from
---
Added support for setting an optional "real_table_name" for a table to deal with unique indexe size calcs.
---
Fixed report title for the case where we are using operating on more than one database.
---
Fixed some perl style concerns timothy had.
Cull the list of databases in perl rather than passing both an in and a not in list to MySQL
Get this full list of databases from show databases if needed.
storage/ndb/tools/ndb_size.pl@stripped, 2007-05-25 13:45:44-07:00, mtaylor@qualinost.(none) +102 -28
Added the ability to run ndb_size.pl on mulitple databases and also to exclude lists of databases and tables from analysis.
---
Added schema name information to index table calculations as well.
---
Made database an optional parameter, the exclusion of which causes all databases to be examined.
If selecting from information_schema fails, attempt to fall back to show tables from
---
Added support for setting an optional "real_table_name" for a table to deal with unique indexe size calcs.
---
Fixed report title for the case where we are using operating on more than one database.
---
Fixed some perl style concerns timothy had.
Cull the list of databases in perl rather than passing both an in and a not in list to MySQL
Get this full list of databases from show databases if needed.
Index: ndb-work/storage/ndb/tools/ndb_size.pl
===================================================================
ChangeSet@1.2575, 2007-08-07 19:16:06+02:00, msvensson@pilot.(none) +2 -0
Bug#26793 mysqld crashes when doing specific query on information_schema
- Drop the newly created user user1@localhost
- Cleanup testcase
Faster thr_alarm()
Added 'Opened_files' status variable to track calls to my_open()
Don't give warnings when running mysql_install_db
Added option --source-install to mysql_install_db
I had to do the following renames() as used polymorphism didn't work with Forte compiler on 64 bit systems
index_read() -> index_read_map()
index_read_idx() -> index_read_idx_map()
index_read_last() -> index_read_last_map()
The patch changes the test case only.
The fix is to replace all 'sleep's with wait_condition. This makes
the test deterministic and also ~300 times faster.
1. added check to fill_schema_schemata() func.
if we have db lookup value we should check that db exists
2. added check to get_all_tables() func
if we have lookup db name or tables name values we shoud check that
these values are not empty strings
3. fixed typo
Fix a typing error in a conditional compiling directive
(reported by Vasil Dimov: Thanks !),
and improve their nesting ("MAIN" independent of platform).
Completion patch, since it is possible that Log_event::write_header()
is called with no current thread.
When starting the server, there is no thread available, but
MYSQL_BIN_LOG::open() is called to initialize the binary log. The
function writes a format description log event to the binary log,
which means that Log_event::write_header() can be called with no
current thread object available.