- 05 Mar, 2009 3 commits
-
-
Kristofer Pettersson authored
-
Kristofer Pettersson authored
An unnecessarily restrictive lock were taken on sub-SELECTs during DELETE. During parsing, a global structure is reused for sub-SELECTs and the attribute keeping track of lock options were not reset properly. This patch introduces a new attribute to keep track on the syntactical lock option elements found in a sub-SELECT and then sets the lock options accordingly. Now the sub-SELECTs will try to acquire a READ lock if possible instead of a WRITE lock as inherited from the outer DELETE statement. mysql-test/r/lock.result: Added test case for bug39843 mysql-test/t/lock.test: Added test case for bug39843 sql/sql_lex.cc: * Reset member variable lock_option on each new query. sql/sql_lex.h: * Introduced new member variable 'lock_option' which is keeping track of the syntactical lock option of a (sub-)select query. sql/sql_parse.cc: * Wrote comments to functions. sql/sql_yacc.yy: * Introduced an attribute to keep track of syntactical lock options in sub-selects. * Made sure that the default value TL_READ_DEFAULT is at the begining of each subselect-rule.
-
Kristofer Pettersson authored
The query cache module did not check for the SQL_NO_CACHE keyword before attempting to query the hash lookup table. This had a small performance impact. By introducing a check on the query string before obtaining the hash mutex we can gain some performance if the SQL_NO_CACHE directive is used often. sql/sql_cache.cc: * Introduced new helper function, has_no_cache_directive, for checking the existance of a SQL_NO_CACHE directive before actual parsing of the query.
-
- 27 Feb, 2009 15 commits
-
-
Staale Smedseng authored
-
Georgi Kodinov authored
-
Staale Smedseng authored
-
Staale Smedseng authored
-
Georgi Kodinov authored
return no rows The algorithm of determining the best key for loose index scan is doing a loop over the available indexes and selects the one that has the best cost. It retrieves the parameters of the current index into a set of variables. If the cost of using the current index is lower than the best cost so far it copies these variables into another set of variables that contain the information for the best index so far. After having checked all the indexes it uses these variables (outside of the index loop) to create the table read plan object instance. The was a single omission : the key_infix/key_infix_len variables were used outside of the loop without being preserved in the loop for the best index so far. This causes these variables to get overwritten by the next index(es) checked. Fixed by adding variables to hold the data for the current index, passing the new variables to the function that assigns values to them and copying the new variables into the existing ones when selecting a new current best index. To avoid further such problems moved the declarations of the variables used to keep information about the current index inside the loop's compound statement. mysql-test/r/group_min_max.result: Bug #41610: test case mysql-test/t/group_min_max.test: Bug #41610: test case sql/opt_range.cc: Bug #41610: copy the infix data for the current best index
-
Patrick Crews authored
-
Ingo Struewing authored
-
Ingo Struewing authored
Some variable values were missing and perl constructs failed. Initialized the variables and refactored the gcov functions. .bzrignore: Bug#40446 - mysql-test-run --gcov is broken Added gcov log files. mysql-test/lib/mtr_gcov.pl: Bug#40446 - mysql-test-run --gcov is broken Refactored the gcov functions. mysql-test/mysql-test-run.pl: Bug#40446 - mysql-test-run --gcov is broken Initialized gcov variables. Added usage information.
-
Magnus Svensson authored
-
Patrick Crews authored
-
Patrick Crews authored
-
Patrick Crews authored
Added ORDER BY clause to I_S query to ensure consistent order. There were differences between 5.1 and 6.0 output. Correcting it 5.1.
-
Georgi Kodinov authored
Fixed a warning in 5.1 caused by missing type cast.
-
Patrick Crews authored
-
Georgi Kodinov authored
-
- 26 Feb, 2009 11 commits
-
-
Bernt M. Johnsen authored
-
Georgi Kodinov authored
-
Bernt M. Johnsen authored
-
Georgi Kodinov authored
of a view are selected by * wildcard Backported a part of the fix for 36086 to 5.0 mysql-test/r/view_grant.result: Bug #41354: test case mysql-test/t/view_grant.test: Bug #41354: test case sql/sql_acl.cc: Bug #41354: return table error when no access and * sql/sql_base.cc: Bug #41354: backported the check in bug 36086 to 5.0
-
Patrick Crews authored
Fixed a typo in the bug fix patch.
-
Magnus Svensson authored
sql/share/errmsg.txt: - Reserve released error codes in 5.1
-
Ramil Kalimullin authored
-
Ramil Kalimullin authored
-
Patrick Crews authored
Started fix in 5.0 as the same issue is here. Revising queries used given what appears to be the scope of this test to only select the manipulated variables. Added tests for values that are / are not multiples of 1024 to test rounding / constraints. This behavior is not currently documented (docs bug has been opened)
-
Bernt M. Johnsen authored
-
Ramil Kalimullin authored
*with --with-charset=utf8* Problem: wrong LONG TEXT field length is sent to a client when multibyte server character set used. Fix: always limit field length sent to a client to 2^32, as we store it in 4 byte slot. Note: mysql_client_test changed accordingly. sql/protocol.cc: Fix for bug#19829:make test Failed in mysql_client_test *with --with-charset=utf8* - limit field length sent to client to UINT_MAX32 as it may exceeds 32 bit slot for LONG TEXT fields if thd_charset->mbmaxlen > 1. tests/mysql_client_test.c: Fix for bug#19829:make test Failed in mysql_client_test *with --with-charset=utf8* - checking field members have in mind that field length is limited to UINT_MAX32.
-
- 25 Feb, 2009 11 commits
-
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
usermode address space limit. Fix: use /LARGEADDRESSAWARE link option when linking 32 bit executables
-
Bernt M. Johnsen authored
-
Bernt M. Johnsen authored
-
Bernt M. Johnsen authored
-
Bernt M. Johnsen authored
-
Sergey Glukhov authored
-
Bernt M. Johnsen authored
bug#43111
-
Sergey Glukhov authored
print compact view name if the view belongs to the current database mysql-test/r/information_schema_db.result: result fix mysql-test/r/mysqldump.result: result fix mysql-test/r/view_grant.result: result fix sql/sql_show.cc: print compact view name if the view belongs to the current database
-