- 03 Apr, 2007 1 commit
-
-
unknown authored
IN/BETWEEN predicates in sorting expressions. Wrong results may occur when the select list contains an expression with IN/BETWEEN predicate that differs from a sorting expression by an additional NOT only. Added the method Item_func_opt_neg::eq to compare correctly expressions containing [NOT] IN/BETWEEN. The eq method inherited from the Item_func returns TRUE when comparing 'a IN (1,2)' with 'a NOT IN (1,2)' that is not, of course, correct. mysql-test/r/order_by.result: Added a test case for bug #27532. mysql-test/t/order_by.test: Added a test case for bug #27532. sql/item_cmpfunc.cc: Fixed bug #27532. Added the method Item_func_opt_neg::eq to compare correctly expressions containing [NOT] IN/BETWEEN. The eq method inherited from the Item_func returns TRUE when comparing 'a IN (1,2)' with 'a NOT IN (1,2)' that is not, of course, correct. sql/item_cmpfunc.h: Added the method Item_func_opt_neg::eq to compare correctly expressions containing [NOT] IN/BETWEEN. The eq method inherited from the Item_func returns TRUE when comparing 'a IN (1,2)' with 'a NOT IN (1,2)' that is not, of course, correct.
-
- 31 Mar, 2007 1 commit
-
-
unknown authored
into bk-internal.mysql.com:/data0/bk/mysql-4.1-opt
-
- 30 Mar, 2007 2 commits
-
-
unknown authored
Pushbuild fixes: - Make MAX_SEL_ARGS smaller (even 16K records_in_range() calls is more than it makes sense to do in typical cases) - Don't call sel_arg->test_use_count() if we've already allocated more than MAX_SEL_ARGs elements. The test will succeed but will take too much time for the test suite (and not provide much value). mysql-test/r/range.result: BUG#26624: high mem usage (crash) in range optimizer Pushbuild fixes: make the test go faster mysql-test/t/range.test: BUG#26624: high mem usage (crash) in range optimizer Pushbuild fixes: make the test go faster
-
unknown authored
into mysql.com:/home/kent/bk/tmp/mysql-4.1-build
-
- 29 Mar, 2007 1 commit
-
-
unknown authored
- Post-review fixes
-
- 28 Mar, 2007 9 commits
-
-
unknown authored
into mysql.com:/home/psergey/mysql-4.1-bug26624-r2
-
unknown authored
- Added PARAM::alloced_sel_args where we count the # of SEL_ARGs created by SEL_ARG tree cloning operations. - Made the range analyzer to shortcut and not do any more cloning if we've already created MAX_SEL_ARGS SEL_ARG objects in cloning. - Added comments about space complexity of SEL_ARG-graph representation. mysql-test/r/range.result: BUG#26624: Testcase mysql-test/t/range.test: BUG#26624: Testcase
-
unknown authored
-
unknown authored
- Define Sql_alloc::operator new() as thow() so that C++ compiler handles NULL return values (there is no testcase as there is no portable way to set limit on the amount of memory that a process can allocate) sql/sql_list.h: BUG#26625: crash in range optimizer (out of mem) - Define Sql_alloc::operator new() as thow() so that C++ compiler handles NULL return values
-
unknown authored
into chilla.local:/home/mydev/mysql-4.1-axmrg
-
unknown authored
into chilla.local:/home/mydev/mysql-4.1-axmrg
-
unknown authored
into chilla.local:/home/mydev/mysql-4.1-axmrg sql/ha_myisam.cc: Auto merged
-
unknown authored
into chilla.local:/home/mydev/mysql-4.1-axmrg
-
unknown authored
into chilla.local:/home/mydev/mysql-4.1-bug24985 mysql-test/r/heap_btree.result: Bug#24985 - UTF8 ENUM primary key on MEMORY using BTREE causes incorrect duplicate entries Manual merge mysql-test/t/heap_btree.test: Bug#24985 - UTF8 ENUM primary key on MEMORY using BTREE causes incorrect duplicate entries Manual merge
-
- 27 Mar, 2007 2 commits
-
-
unknown authored
Don't use explicit calls to mysql-test-run in spec Makefile.am: Don't use explicit calls to mysql-test-run in spec support-files/mysql.spec.sh: Don't use explicit calls to mysql-test-run in spec
-
unknown authored
causes incorrect duplicate entries Keys for BTREE indexes on ENUM and SET columns of MEMORY tables with character set UTF8 were computed incorrectly. Many different column values got the same key value. Apart of possible performance problems, it made unique indexes of this type unusable because it rejected many different values as duplicates. The problem was that multibyte character detection was tried on the internal numeric column value. Many values were not identified as characters. Their key value became blank filled. Thanks to Alexander Barkov and Ramil Kalimullin for the patch, which sets the character set of ENUM and SET key segments to the pseudo binary character set. mysql-test/r/heap_btree.result: Bug#24985 - UTF8 ENUM primary key on MEMORY using BTREE causes incorrect duplicate entries Added test result. mysql-test/t/heap_btree.test: Bug#24985 - UTF8 ENUM primary key on MEMORY using BTREE causes incorrect duplicate entries Added test. sql/ha_heap.cc: Bug#24985 - UTF8 ENUM primary key on MEMORY using BTREE causes incorrect duplicate entries Set key segment charset to my_charset_bin for ENUM and SET columns.
-
- 26 Mar, 2007 1 commit
-
-
unknown authored
to 0 causes wrong (large) length to be read from the row in _mi_calc_blob_length() when storing NULL values in (e.g) POINT columns. This large length is then used to allocate a block of memory that (on some OSes) causes trouble. Fixed by calling the base class's Field_blob::reset() from Field_geom::reset() that is called when storing a NULL value into the column. mysql-test/r/gis.result: Bug #27164: test case mysql-test/t/gis.test: Bug #27164: test case sql/field.h: Bug #27164: not reseting the data pointer to 0 causes wrong (large) length to be read from the row in _mi_calc_blob_length() when storing NULL values in (e.g) POINT columns. This large length is then used to allocate a block of memory that (on some OSes) causes trouble.
-
- 25 Mar, 2007 2 commits
- 24 Mar, 2007 1 commit
-
-
unknown authored
-
- 23 Mar, 2007 6 commits
-
-
unknown authored
fixed differently: wake up select_thread with THR_SERVER_ALARM instead mysys/thr_alarm.c: reverted linuxthreads thr_client_alarm fix (not future-proof)
-
unknown authored
into sergbook.mysql.com:/usr/home/serg/Abk/mysql-4.1
-
unknown authored
into sergbook.mysql.com:/usr/home/serg/Abk/mysql-4.1 mysys/thr_alarm.c: Auto merged sql/mysqld.cc: Auto merged
-
unknown authored
into sergbook.mysql.com:/usr/home/serg/Abk/mysql-4.1 sql/mysqld.cc: merged
-
unknown authored
(in thr_alarm.cc it happened too late). mysys/thr_alarm.c: move thr_client_alarm initialization to mysqld.cc (here it happened too late) sql/mysqld.cc: move thr_client_alarm initialization to mysqld.cc (in thr_alarm.cc it happened too late). moved thr_kill_signal initialization to init_signals()
-
unknown authored
into chilla.local:/home/mydev/mysql-4.1-bug26996
-
- 22 Mar, 2007 6 commits
-
-
unknown authored
into mysql.com:/home/hf/work/mrg/mysql-4.1-opt
-
unknown authored
Delete: scripts/fill_func_tables.sh .del-fill_help_tables.sh: Delete: scripts/fill_help_tables.sh .del-internals.texi: Delete: Docs/internals.texi BitKeeper/deleted/.del-internals.texi: Delete: Docs/internals.texi BitKeeper/deleted/.del-fill_func_tables.sh: Delete: scripts/fill_func_tables.sh BitKeeper/deleted/.del-fill_help_tables.sh: Delete: scripts/fill_help_tables.sh
-
unknown authored
into mysql.com:/home/kent/bk/tmp/mysql-4.1-build BitKeeper/deleted/.del-net_doc.txt: Auto merged
-
unknown authored
Docs/Books/ Docs/MySQL-logos/ Deleted files Docs/Tutorial-MySQL-final.txt Docs/bk.txt Docs/Support/.cvsignore Docs/Support/colspec-fix.pl Docs/Support/docbook-fixup.pl Docs/Support/docbook-prefix.pl Docs/Support/docbook-split Docs/Support/make-docbook Docs/Support/make-makefile Docs/Support/test-make-manual Docs/Support/test-make-manual-de Docs/Support/trivial-makeinfo-4.0c.patch Docs/Support/xwf Deleted file now in internals main text Docs/my_sys.txt Deleted file now in internals svn tree Docs/net_doc.txt Removed obsolete entries Docs/.cvsignore Added note that info is obsolete Docs/linuxthreads.txt BitKeeper/deleted/.del-colspec-fix.pl: Delete: Docs/Support/colspec-fix.pl BitKeeper/deleted/.del-docbook-fixup.pl: Delete: Docs/Support/docbook-fixup.pl BitKeeper/deleted/.del-docbook-prefix.pl: Delete: Docs/Support/docbook-prefix.pl BitKeeper/deleted/.del-docbook-split: Delete: Docs/Support/docbook-split BitKeeper/deleted/.del-make-docbook: Delete: Docs/Support/make-docbook BitKeeper/deleted/.del-make-makefile: Delete: Docs/Support/make-makefile BitKeeper/deleted/.del-test-make-manual-de: Delete: Docs/Support/test-make-manual-de BitKeeper/deleted/.del-test-make-manual: Delete: Docs/Support/test-make-manual BitKeeper/deleted/.del-trivial-makeinfo-4.0c.patch: Delete: Docs/Support/trivial-makeinfo-4.0c.patch BitKeeper/deleted/.del-xwf: Delete: Docs/Support/xwf BitKeeper/deleted/.del-algor.eps~1a57aff065918206: Delete: Docs/Books/algor.eps BitKeeper/deleted/.del-algor.gif: Delete: Docs/Books/algor.gif BitKeeper/deleted/.del-algor.txt: Delete: Docs/Books/algor.txt BitKeeper/deleted/.del-dbi.eps~7b1032f98de7736d: Delete: Docs/Books/dbi.eps BitKeeper/deleted/.del-dbi.gif: Delete: Docs/Books/dbi.gif BitKeeper/deleted/.del-dbi.txt: Delete: Docs/Books/dbi.txt BitKeeper/deleted/.del-dubois.eps~f24e09a7fa420436: Delete: Docs/Books/dubois.eps BitKeeper/deleted/.del-dubois.gif: Delete: Docs/Books/dubois.gif BitKeeper/deleted/.del-dubois.txt: Delete: Docs/Books/dubois.txt BitKeeper/deleted/.del-ecomm.eps~17833026ebd7656: Delete: Docs/Books/ecomm.eps BitKeeper/deleted/.del-ecomm.gif: Delete: Docs/Books/ecomm.gif BitKeeper/deleted/.del-ecomm.txt: Delete: Docs/Books/ecomm.txt BitKeeper/deleted/.del-in_21.eps~8150d06653dab178: Delete: Docs/Books/in_21.eps BitKeeper/deleted/.del-in_21.gif: Delete: Docs/Books/in_21.gif BitKeeper/deleted/.del-in_21.txt: Delete: Docs/Books/in_21.txt BitKeeper/deleted/.del-manual.eps~1c2ebcea50b4840c: Delete: Docs/Books/manual.eps BitKeeper/deleted/.del-manual.gif: Delete: Docs/Books/manual.gif BitKeeper/deleted/.del-manual.txt: Delete: Docs/Books/manual.txt BitKeeper/deleted/.del-msql.eps~f3801b9d166ae4fc: Delete: Docs/Books/msql.eps BitKeeper/deleted/.del-msql.gif: Delete: Docs/Books/msql.gif BitKeeper/deleted/.del-msql.txt: Delete: Docs/Books/msql.txt BitKeeper/deleted/.del-prof.eps~1f54d9a56eb2b908: Delete: Docs/Books/prof.eps BitKeeper/deleted/.del-prof.gif: Delete: Docs/Books/prof.gif BitKeeper/deleted/.del-prof.txt: Delete: Docs/Books/prof.txt BitKeeper/deleted/.del-pthreads.eps~2ca8ff2d1181b2c0: Delete: Docs/Books/pthreads.eps BitKeeper/deleted/.del-pthreads.gif: Delete: Docs/Books/pthreads.gif BitKeeper/deleted/.del-pthreads.txt: Delete: Docs/Books/pthreads.txt BitKeeper/deleted/.del-realmen.eps~cc022325d3cb045: Delete: Docs/Books/realmen.eps BitKeeper/deleted/.del-realmen.gif: Delete: Docs/Books/realmen.gif BitKeeper/deleted/.del-realmen.txt: Delete: Docs/Books/realmen.txt BitKeeper/deleted/.del-sql-99.eps~f85c06de7a016c7d: Delete: Docs/Books/sql-99.eps BitKeeper/deleted/.del-sql-99.gif: Delete: Docs/Books/sql-99.gif BitKeeper/deleted/.del-sql-99.txt: Delete: Docs/Books/sql-99.txt BitKeeper/deleted/.del-mysql-01.gif: Delete: Docs/MySQL-logos/mysql-01.gif BitKeeper/deleted/.del-mysql-02.gif: Delete: Docs/MySQL-logos/mysql-02.gif BitKeeper/deleted/.del-mysql-03.gif: Delete: Docs/MySQL-logos/mysql-03.gif BitKeeper/deleted/.del-mysql-04.gif: Delete: Docs/MySQL-logos/mysql-04.gif BitKeeper/deleted/.del-mysql-05.gif: Delete: Docs/MySQL-logos/mysql-05.gif BitKeeper/deleted/.del-mysql-06.gif: Delete: Docs/MySQL-logos/mysql-06.gif BitKeeper/deleted/.del-mysql-07.gif: Delete: Docs/MySQL-logos/mysql-07.gif BitKeeper/deleted/.del-mysql-08.gif: Delete: Docs/MySQL-logos/mysql-08.gif BitKeeper/deleted/.del-mysql-09.gif: Delete: Docs/MySQL-logos/mysql-09.gif BitKeeper/deleted/.del-mysql-10.gif: Delete: Docs/MySQL-logos/mysql-10.gif BitKeeper/deleted/.del-mysql-11.gif: Delete: Docs/MySQL-logos/mysql-11.gif BitKeeper/deleted/.del-mysql-12.gif: Delete: Docs/MySQL-logos/mysql-12.gif BitKeeper/deleted/.del-mysql-13.gif: Delete: Docs/MySQL-logos/mysql-13.gif BitKeeper/deleted/.del-mysql-14.gif: Delete: Docs/MySQL-logos/mysql-14.gif BitKeeper/deleted/.del-mysql-15.gif: Delete: Docs/MySQL-logos/mysql-15.gif BitKeeper/deleted/.del-mysql-16.gif: Delete: Docs/MySQL-logos/mysql-16.gif BitKeeper/deleted/.del-mysql-17.gif: Delete: Docs/MySQL-logos/mysql-17.gif BitKeeper/deleted/.del-mysql-compatible.jpg: Delete: Docs/MySQL-logos/mysql-compatible.jpg BitKeeper/deleted/.del-mysql_anim-01.gif: Delete: Docs/MySQL-logos/mysql_anim-01.gif BitKeeper/deleted/.del-mysql_anim-02.gif: Delete: Docs/MySQL-logos/mysql_anim-02.gif BitKeeper/deleted/.del-mysql_anim-03.gif: Delete: Docs/MySQL-logos/mysql_anim-03.gif BitKeeper/deleted/.del-mysql_anim-04.gif: Delete: Docs/MySQL-logos/mysql_anim-04.gif BitKeeper/deleted/.del-mysql_anim-05.gif: Delete: Docs/MySQL-logos/mysql_anim-05.gif BitKeeper/deleted/.del-mysql_anim-06.gif: Delete: Docs/MySQL-logos/mysql_anim-06.gif BitKeeper/deleted/.del-Tutorial-MySQL-final.txt: Delete: Docs/Tutorial-MySQL-final.txt BitKeeper/deleted/.del-net_doc.txt: Delete: Docs/net_doc.txt BitKeeper/deleted/.del-my_sys.txt: Delete: Docs/my_sys.txt BitKeeper/deleted/.del-bk.txt: Delete: Docs/bk.txt BitKeeper/deleted/.del-.cvsignore: Delete: Docs/Support/.cvsignore Docs/.cvsignore: Removed obsolete entries Docs/linuxthreads.txt: Added note info is obsolete
-
unknown authored
fix for cast( AS DATETIME) + 0 operation. I just implemented Item_datetime_typecast::val() method as it is usually done in other classes. Should be fixed more radically in 5.0 mysql-test/r/type_datetime.result: result added mysql-test/t/type_datetime.test: testcase sql/item_timefunc.h: added double conversion to Item_datetime_typecast
-
unknown authored
into mysql.com:/home/hf/work/mrg/mysql-4.1-opt
-
- 20 Mar, 2007 1 commit
-
-
unknown authored
- Problem: data separators were copied to a fixed-size buffer on the stack; memcpy was used, without bounds checking; a server crash could result if long FIELDS ENCLOSED BY, etc., was given - Fix: write the separators directly, instead of copying to a buffer first (in select_export::send_data()) sql/sql_class.cc: In select_export::send_data(), write data separators directly, instead of copying into a fixed-size memory buffer before writing. This avoids a buffer overflow when very large separators are specified.
-
- 19 Mar, 2007 1 commit
-
-
unknown authored
Using a MEMORY table BTREE index for scanning for updatable rows could lead to an infinite loop. Everytime a key was inserted into a btree index, the position in the index scan was cleared. The search started from the beginning and found the same key again. Now we do not clear the position on key insert an more. heap/hp_write.c: Bug#26996 - Update of a Field in a Memory Table ends with wrong result Removed the index-scan-breaking nulling of last_pos. The comment behind this line ("For heap_rnext/heap_rprev") was misleading. It should have been "Breaks heap_rnext/heap_rprev". mysql-test/r/heap_btree.result: Bug#26996 - Update of a Field in a Memory Table ends with wrong result Added test result. mysql-test/t/heap_btree.test: Bug#26996 - Update of a Field in a Memory Table ends with wrong result Added test.
-
- 17 Mar, 2007 1 commit
-
-
unknown authored
into chilla.local:/home/mydev/mysql-4.1--main
-
- 16 Mar, 2007 2 commits
-
-
unknown authored
into chilla.local:/home/mydev/mysql-4.1-bug25289 sql/ha_myisam.cc: Auto merged
-
unknown authored
when index is used When the table contained TEXT columns with empty contents ('', zero length, but not NULL) _and_ strings starting with control characters like tabulator or newline, the empty values were not found in a "records in range" estimate. Hence count(*) missed these records. The reason was a different set of search flags used for key insert and key range estimation. I decided to fix the set of flags used in range estimation. Otherwise millions of databases around the world would require a repair after an upgrade. The consequence is that the manual must be fixed, which claims that TEXT columns are compared with "end space padding". This is true for CHAR/VARCHAR but wrong for TEXT. See also bug 21335. myisam/mi_range.c: Bug#26231 - select count(*) on myisam table returns wrong value when index is used Added SEARCH_UPDATE to the search flags so that it compares like write/update/delete operations do. Only so it expects the keys at the place where they have been inserted. myisam/mi_search.c: Bug#26231 - select count(*) on myisam table returns wrong value when index is used Added some comments to explain how _mi_get_binary_pack_key() works. mysql-test/r/myisam.result: Bug#26231 - select count(*) on myisam table returns wrong value when index is used Added a test. mysql-test/t/myisam.test: Bug#26231 - select count(*) on myisam table returns wrong value when index is used Added test result.
-
- 15 Mar, 2007 2 commits
-
-
unknown authored
into mockturtle.local:/home/dlenev/src/mysql-4.1-merge
-
unknown authored
TABLE ... WRITE". CPU hogging occured when connection which had to wait for table lock was serviced by thread which previously serviced connection that was killed (note that connections can reuse threads if thread cache is enabled). One possible scenario which exposed this problem was when thread which provided binlog dump to replication slave was implicitly/automatically killed when the same slave reconnected and started pulling data through different thread/connection. In 5.* versions memory hogging was added to CPU hogging. Moreover in those versions the problem also occured when one killed particular query in connection (using KILL QUERY) and later this connection had to wait for some table lock. This problem was caused by the fact that thread-specific mysys_var::abort variable, which indicates that waiting operations on mysys layer should be aborted (this includes waiting for table locks), was set by kill operation but was never reset back. So this value was "inherited" by the following statements or even other connections (which reused the same physical thread). Such discrepancy between this variable and THD::killed flag broke logic on SQL-layer and caused CPU and memory hogging. This patch tries to fix this problem by properly resetting this member. There is no test-case associated with this patch since it is hard to test for memory/CPU hogging conditions in our test-suite. sql/mysqld.cc: We should not forget to reset THD::mysys_var::abort after kill operation if we are going to use thread to which this operation was applied for handling of other connections.
-
- 14 Mar, 2007 1 commit
-
-
unknown authored
into mysql.com:/home/kent/bk/tmp/mysql-4.1-build
-