summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge bk-internal.mysql.com:/data0/bk/mysql-5.0ibabaev@bk-internal.mysql.com2007-05-1230-34/+466
|\ | | | | | | into bk-internal.mysql.com:/data0/bk/mysql-5.0-opt
| * Fixed bug #28375: a query with an NOT IN subquery predicate may causeigor@olga.mysql.com2007-05-114-2/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a crash when the left operand of the predicate is evaluated to NULL. It happens when the rows from the inner tables (tables from the subquery) are accessed by index methods with key values obtained by evaluation of the left operand of the subquery predicate. When this predicate is evaluated to NULL an alternative access with full table scan is used to check whether the result set returned by the subquery is empty or not. The crash was due to the fact the info about the access methods used for regular key values was not properly restored after a switch back from the full scan access method had occurred. The patch restores this info properly. The same problem existed for queries with IN subquery predicates if they were used not at the top level of the queries.
| * Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-optevgen@moonbone.local2007-05-122-2/+2
| |\ | | | | | | | | | into moonbone.local:/mnt/gentoo64/work/27878-bug-5.0-opt-mysql
| | * grant.result, grant.test:evgen@moonbone.local2007-05-122-2/+2
| | | | | | | | | | | | Corrected test case for the bug#27878.
| * | Merge bk@192.168.21.1:mysql-5.0-optholyfoot/hf@mysql.com/hfmain.(none)2007-05-124-4/+50
| |\ \ | | |/ | | | | | | into mysql.com:/home/hf/work/27957/my50-27957
| | * Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-optevgen@moonbone.local2007-05-114-4/+50
| | |\ | | | | | | | | | | | | into moonbone.local:/mnt/gentoo64/work/27878-bug-5.0-opt-mysql
| | | * Bug#27878: Unchecked privileges on a view referring to a table from another evgen@moonbone.local2007-05-114-4/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | database. If a user has a right to update anything in the current database then the access was granted and further checks of access rights for underlying tables wasn't done correctly. The check is done before a view is opened and thus no check of access rights for underlying tables can be carried out. This allows a user to update through a view a table from another database for which he hasn't enough rights. Now the mysql_update() and the mysql_test_update() functions are forces re-checking of access rights after a view is opened.
| * | | merging fixesholyfoot/hf@mysql.com/hfmain.(none)2007-05-114-6/+10
| | | |
| * | | Merge mysql.com:/home/hf/work/27921/my50-27921holyfoot/hf@mysql.com/hfmain.(none)2007-05-1110-22/+75
| |\ \ \ | | | | | | | | | | | | | | | into mysql.com:/home/hf/work/27957/my50-27957
| | * | | bug 27921 (Views ignore precision for CAST)holyfoot/hf@mysql.com/hfmain.(none)2007-05-101-2/+2
| | | | | | | | | | | | | | | | | | | | test result fixed
| | * | | Bug #27921 View ignores precision for CAST()holyfoot/hf@mysql.com/hfmain.(none)2007-05-109-20/+75
| | | | | | | | | | | | | | | | | | | | Item_decimal_typecast::print properly implemented
| * | | | Merge bk@192.168.21.1:mysql-5.0-optholyfoot/hf@mysql.com/hfmain.(none)2007-05-117-1/+97
| |\ \ \ \ | | |_|/ / | |/| | | | | | | | into mysql.com:/home/hf/work/27957/my50-27957
| | * | | Bug #27957 cast as decimal does not check overflow, also inconsistent with ↵holyfoot/hf@mysql.com/hfmain.(none)2007-05-097-1/+97
| | |/ / | | | | | | | | | | | | | | | | | | | | group, subselect Missing check for overflow added to the Item_decimal_typecast::val_decimal
| * | | Fixed bug #28000.gshchepa/uchum@gleb.loc2007-05-113-1/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug occurs in INSERT IGNORE ... SELECT ... ON DUPLICATE KEY UPDATE statements, when SELECT returns duplicated values and UPDATE clause tries to assign NULL values to NOT NULL fields. NOTE: By current design MySQL server treats INSERT IGNORE ... ON DUPLICATE statements as INSERT ... ON DUPLICATE with update of duplicated records, but MySQL manual lacks this information. After this fix such behaviour becomes legalized. The write_record() function was returning error values even within INSERT IGNORE, because ignore_errors parameter of the fill_record_n_invoke_before_triggers() function call was always set to FALSE. FALSE is replaced by info->ignore.
| * | | Fixed bug #28189: in some rare cases optimizer preferred a more expensiveigor@olga.mysql.com2007-05-103-1/+107
| | | | | | | | | | | | | | | | | | | | ref access to a less expensive range access. This occurred only with InnoDB tables.
* | | | Merge whalegate.ndb.mysql.com:/home/tomas/mysql-4.1-ndbtomas@whalegate.ndb.mysql.com2007-05-100-0/+0
|\ \ \ \ | | | | | | | | | | | | | | | into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
| * \ \ \ Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1tomas@whalegate.ndb.mysql.com2007-05-101-1/+2
| |\ \ \ \ | | | | | | | | | | | | | | | | | | into whalegate.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
| | * \ \ \ Merge dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-4.1/mysql-4.1-ndb-bjgni/root@dev3-221.dev.cn.tlan2007-05-081-1/+2
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | into dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-4.1/mysql-4.1-ndb
| | | * \ \ \ Merge dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-4.1/mysql-4.1-ndb-bjgni/root@dev3-221.dev.cn.tlan2007-02-151-1/+2
| | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | into dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-4.1/mysql-4.1-bug21715
* | | | \ \ \ \ Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opttomas@whalegate.ndb.mysql.com2007-05-1015-17/+117
|\ \ \ \ \ \ \ \ | |_|_|_|_|/ / / |/| | | | | | | | | | | | | | | into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
| * | | | | | | enable setting api reg req frequency to be higher than heartbeat setting to ↵tomas@whalegate.ndb.mysql.com2007-05-093-9/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ensure we have reasonably up-to-date info from ndb nodes + do this for management server
| * | | | | | | Bug #28287 Sign problem in test "ndb_restore_print"tomas@whalegate.ndb.mysql.com2007-05-092-5/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - corrected previous patch - some platforms do strange things with char... use Int8 to be sure of signedness
| * | | | | | | Bug #28287 Sign problem in test "ndb_restore_print"tomas@whalegate.ndb.mysql.com2007-05-091-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - some platforms do strange things with char... use Int8 to be sure of signedness
| * | | | | | | increate hearbeat interval to avoid load related start up issues in ↵tomas@whalegate.ndb.mysql.com2007-05-083-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mysql-test-run
| * | | | | | | Merge perch.ndb.mysql.com:/home/jonas/src/50-workjonas@perch.ndb.mysql.com2007-05-081-4/+13
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | into perch.ndb.mysql.com:/home/jonas/src/mysql-5.0-ndb
| | * | | | | | | ndb - bug#27437jonas@perch.ndb.mysql.com2007-05-081-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | redo extra verification code so that tupkeyref is reset just before tupkeyreq
| * | | | | | | | Merge perch.ndb.mysql.com:/home/jonas/src/50-workjonas@perch.ndb.mysql.com2007-05-085-1/+46
| |\ \ \ \ \ \ \ \ | | |/ / / / / / / | | | | | | | | | | | | | | | | | | into perch.ndb.mysql.com:/home/jonas/src/mysql-5.0-ndb
| | * | | | | | | ndb - bug#27437jonas@perch.ndb.mysql.com2007-05-085-1/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug in interpretedupdate (used for auto-increment) that made TUPKEYREF be sent twice this was however "normally" shadowed, but made LQH crash when LCP was about to start
| * | | | | | | | Merge dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.0/mysql-5.0-ndb-bjgni@dev3-221.dev.cn.tlan2007-05-082-0/+5
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into dev3-221.dev.cn.tlan:/home/ngb/mysql/mysql-5.0/mysql-5.0-ndb
| | * \ \ \ \ \ \ \ Merge lzhou@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb-bjlzhou/zhl@dev3-63.(none)2007-04-184-0/+78
| | |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into dev3-63.(none):/home/zhl/mysql/mysql-5.0/bug26675
| | | * | | | | | | | BUG#26675 Add ndb_connectstring in "show global variables".lzhou/zhl@dev3-63.(none)2007-03-124-0/+78
| | | | | | | | | | |
* | | | | | | | | | | loaddata.result, loaddata.test:evgen@moonbone.local2007-05-092-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A test case is corrected.
* | | | | | | | | | | Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-optevgen@moonbone.local2007-05-093-0/+49
|\ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | into moonbone.local:/mnt/gentoo64/work/27670-bug-5.0-opt-mysql
| * | | | | | | | | | Bug#27670: LOAD DATA does not set CURRENT_TIMESTAMP default value for aevgen@moonbone.local2007-05-093-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TIMESTAMP field when no value has been provided. The LOAD DATA sets the current time in the TIMESTAMP field with CURRENT_TIMESTAMP default value when the field is detected as a null. But when the LOAD DATA command loads data from a file that doesn't contain enough data for all fields then the rest of fields are simply set to null without any check. This leads to no value being inserted to such TIMESTAMP field. Now the read_sep_field() and the read_fixed_length() functions set current time to the TIMESTAMP field with CURRENT_TIMESTAMP default value in all cases when a NULL value is loaded to the field.
* | | | | | | | | | | Adjusted results after the latest addition of test cases.igor@olga.mysql.com2007-05-071-0/+6
| | | | | | | | | | |
* | | | | | | | | | | Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-optevgen@moonbone.local2007-05-082-0/+3
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into moonbone.local:/mnt/gentoo64/work/27759-bug-5.0-opt-mysql
| * | | | | | | | | | | Additional fix for the bug#27759: Wrong DATE/DATETIME comparison in ↵evgen@moonbone.local2007-05-082-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LEAST()/GREATEST() functions.
* | | | | | | | | | | | Merge gleb.loc:/home/uchum/work/bk/mysql-5.0-optgshchepa/uchum@gleb.loc2007-05-084-0/+50
|\ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | into gleb.loc:/home/uchum/work/bk/mysql-5.0-opt-27954
| * | | | | | | | | | | Fixed bug #27954.gshchepa/uchum@gleb.loc2007-05-084-0/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This bug affects multi-row INSERT ... ON DUPLICATE into table with PRIMARY KEY of AUTO_INCREMENT field and some additional UNIQUE indices. If the first row in multi-row INSERT contains duplicated values of UNIQUE indices, then following rows of multi-row INSERT (with either duplicated or unique key field values) may me applied to _arbitrary_ records of table as updates. This bug was introduced in 5.0. Related code was widely rewritten in 5.1, and 5.1 is already free of this problem. 4.1 was not affected too. When updating the row during INSERT ON DUPLICATE KEY UPDATE, we called restore_auto_increment(), which set next_insert_id back to 0, but we forgot to set clear_next_insert_id back to 0. restore_auto_increment() function has been fixed.
* | | | | | | | | | | | Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-optevgen@moonbone.local2007-05-075-70/+350
|\ \ \ \ \ \ \ \ \ \ \ \ | |_|/ / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | into moonbone.local:/mnt/gentoo64/work/28133-bug-5.0-opt-mysql
| * | | | | | | | | | | Bug#28133: Wrong DATE/DATETIME comparison in IN() function.evgen@moonbone.local2007-05-075-71/+351
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The IN function was comparing DATE/DATETIME values either as ints or as strings. Both methods have their disadvantages and may lead to a wrong result. Now IN function checks whether all of its arguments has the STRING result types and at least one of them is a DATE/DATETIME item. If so it uses either an object of the in_datetime class or an object of the cmp_item_datetime class to perform its work. If the IN() function arguments are rows then row columns are checked whether the DATE/DATETIME comparator should be used to compare them. The in_datetime class is used to find occurence of the item to be checked in the vector of the constant DATE/DATETIME values. The cmp_item_datetime class is used to compare items one by one in the DATE/DATETIME context. Both classes obtain values from items with help of the get_datetime_value() function and cache the left item if it is a constant one.
* | | | | | | | | | | | item_func.cc:evgen@moonbone.local2007-05-071-3/+3
| |_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed compiler warnings.
* | | | | | | | | | | Merge mysql.com:/d2/hf/mrg/mysql-4.1-optholyfoot/hf@mysql.com/hfmain.(none)2007-05-070-0/+0
|\ \ \ \ \ \ \ \ \ \ \ | | |_|_|_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | into mysql.com:/d2/hf/mrg/mysql-5.0-opt
| * | | | | | | | | | Merge bk@192.168.21.1:mysql-4.1holyfoot/hf@mysql.com/hfmain.(none)2007-05-076-5/+96
| |\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/d2/hf/mrg/mysql-4.1-opt
* | \ \ \ \ \ \ \ \ \ \ Merge bk@192.168.21.1:mysql-5.0holyfoot/hf@mysql.com/hfmain.(none)2007-05-0723-23/+403
|\ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | into mysql.com:/d2/hf/mrg/mysql-5.0-opt
| * | | | | | | | | | | Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-optevgen@moonbone.local2007-05-049-6/+164
| |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into moonbone.local:/mnt/gentoo64/work/27759-bug-5.0-opt-mysql
| | * | | | | | | | | | | Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions.evgen@moonbone.local2007-05-049-6/+164
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The LEAST/GREATEST functions compared DATE/DATETIME values as strings which in some cases could lead to a wrong result. A new member function called cmp_datetimes() is added to the Item_func_min_max class. It compares arguments in DATETIME context and returns index of the least/greatest argument. The Item_func_min_max::fix_length_and_dec() function now detects when arguments should be compared in DATETIME context and sets the newly added flag compare_as_dates. It indicates that the cmp_datetimes() function should be called to get a correct result. Item_func_min_max::val_xxx() methods are corrected to call the cmp_datetimes() function when needed. Objects of the Item_splocal class now stores and reports correct original field type.
| * | | | | | | | | | | | bug #27531:gkodinov/kgeorge@magare.gmz2007-05-042-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixed coverage of out-of-mem errors
| * | | | | | | | | | | | Merge magare.gmz:/home/kgeorge/mysql/work/B27531-4.1-optgkodinov/kgeorge@magare.gmz2007-05-043-3/+80
| |\ \ \ \ \ \ \ \ \ \ \ \ | | | |_|/ / / / / / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | into magare.gmz:/home/kgeorge/mysql/work/B27531-5.0-opt
| | * | | | | | | | | | | Bug #27531: the 4.1 fix.gkodinov/kgeorge@magare.gmz2007-05-043-3/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When checking for applicability of join cache we must disable its usage only if there is no temp table in use. When a temp table is used we can use join cache (and it will not make the result-set unordered) to fill the temp table. The filesort() operation is then applied to the data in the temp table and hence is not affected by join cache usage. Fixed by narrowing the condition for disabling join cache to exclude the case where temp table is used.