- 23 Apr, 2007 1 commit
-
-
unknown authored
applied the new function is_union() to places in the code that check the same condition. - 5.0->5.1 merge fixes mysql-test/r/subselect3.result: merge 5.0->5.1 : updated explain. sql/item_subselect.cc: addendum of the fix for bug 27786: applied the new function is_union() to the applicable places. sql/sql_derived.cc: addendum of the fix for bug 27786: applied the new function is_union() to the applicable places. sql/sql_parse.cc: addendum of the fix for bug 27786: applied the new function is_union() to the applicable places. sql/sql_select.cc: addendum of the fix for bug 27786: applied the new function is_union() to places in the code that check the same condition. sql/sql_union.cc: addendum of the fix for bug 27786: applied the new function is_union() to the applicable places. sql/sql_view.cc: addendum of the fix for bug 27786: applied the new function is_union() to the applicable places. sql/sql_yacc.yy: addendum of the fix for bug 27786: applied the new function is_union() to the applicable places.
-
- 20 Apr, 2007 2 commits
-
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/work/B27786-addon-5.1-opt mysql-test/r/subselect3.result: Auto merged mysql-test/r/view.result: Auto merged sql/item_subselect.h: Auto merged sql/sql_view.cc: Auto merged mysql-test/t/view.test: fixed testcase merge 5.0->5.1 sql/sql_lex.h: merge fixes : 5.0->5.1
-
unknown authored
When merging views into the enclosing statement the ORDER BY clause of the view is merged to the parent's ORDER BY clause. However when the VIEW is merged into an UNION branch the ORDER BY should be ignored. Use of ORDER BY for individual SELECT statements implies nothing about the order in which the rows appear in the final result because UNION by default produces unordered set of rows. Fixed by ignoring the ORDER BY clause from the merge view when expanded in an UNION branch. mysql-test/r/view.result: Bug #27786: test case mysql-test/t/view.test: Bug #27786: test case sql/sql_lex.h: Bug #27786: add a is_union() inlined function Returns true if the unit represents an UNION. sql/sql_view.cc: Bug #27786: ignore ORDER BY in mergeable views when in UNION context
-
- 18 Apr, 2007 1 commit
-
-
unknown authored
conditions when executing an equijoin query with WHERE condition containing a subquery predicate of the form join_attr NOT IN (SELECT ...). To resolve a problem of the correct evaluation of the expression attr NOT IN (SELECT ...) an array of guards is created to make it possible to filter out some predicates of the EXISTS subquery into which the original subquery predicate is transformed, in the cases when a takes the NULL value. If attr is defined as a field that cannot be NULL than such an array is not needed and is not created. However if the field a occurred also an an equijoin predicate t2.a=t1.b and table t1 is accessed before table t2 then it may happen that the the EXISTS subquery is pushed down to the condition evaluated just after table t1 has been accessed. In this case any occurrence of t2.a is substituted for t1.b. When t1.b takes the value of NULL an attempt is made to turn on the corresponding guard. This action caused a crash as no guard array had been created. Now the code of Item_in_subselect::set_cond_guard_var checks that the guard array has been created before setting a guard variable on. Otherwise the method does nothing. It cannot results in returning a row that could be rejected as the condition t2.a=t1.b will be checked later anyway. mysql-test/r/subselect3.result: Added a test case for bug #27870. mysql-test/t/subselect3.test: Added a test case for bug #27870. sql/item_subselect.h: Fixed bug #27870. The bug that causes crashes manifests itself at some conditions when executing an equijoin query with WHERE condition containing a subquery predicate of the form join_attr NOT IN (SELECT ...). Forced Item_in_subselect::set_cond_guard_var to check that the guard array has been created before setting a guard variable on. Otherwise the method does nothing.
-
- 15 Apr, 2007 6 commits
-
-
unknown authored
After merge fix. mysql-test/r/subselect.result: After merge fix.
-
unknown authored
into moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.1-opt mysql-test/r/subselect3.result: Auto merged sql/item.cc: Auto merged sql/item.h: Auto merged sql/sql_select.cc: Auto merged sql/sql_union.cc: Auto merged mysql-test/r/subselect.result: Manual merge mysql-test/t/subselect.test: Manual merge
-
unknown authored
Fix warning after fix for bug#27321. sql/item.cc: Fix warning after fix for bug#27321.
-
unknown authored
After merge fix. mysql-test/r/subselect.result: After merge fix. mysql-test/t/subselect.test: After merge fix.
-
unknown authored
into moonbone.local:/mnt/gentoo64/work/27321-bug-5.0-opt-mysql mysql-test/r/subselect3.result: Auto merged sql/item.cc: Auto merged sql/item.h: Auto merged sql/sql_select.cc: Auto merged mysql-test/r/subselect.result: Manually merged mysql-test/t/subselect.test: Manually merged mysql-test/t/subselect3.test: Manually merged
-
unknown authored
The Item_outer_ref class based on the Item_direct_ref class was always used to represent an outer field. But if the outer select is a grouping one and the outer field isn't under an aggregate function which is aggregated in that outer select an Item_ref object should be used to represent such a field. If the outer select in which the outer field is resolved isn't grouping then the Item_field class should be used to represent such a field. This logic also should be used for an outer field resolved through its alias name. Now the Item_field::fix_outer_field() uses Item_outer_field objects to represent aliased and non-aliased outer fields for grouping outer selects only. Now the fix_inner_refs() function chooses which class to use to access outer field - the Item_ref or the Item_direct_ref. An object of the chosen class substitutes the original field in the Item_outer_ref object. The direct_ref and the found_in_select_list fields were added to the Item_outer_ref class. mysql-test/t/subselect3.test: Some test cases were corrected after the fix for the bug#27321. mysql-test/r/subselect3.result: Some test cases were corrected after the fix for the bug#27321. mysql-test/t/subselect.test: Added a test case for the bug#27321: Wrong subquery result in a grouping select. mysql-test/r/subselect.result: Added a test case for the bug#27321: Wrong subquery result in a grouping select. Some test cases were corrected after this fix. sql/sql_union.cc: Bug#27321: Wrong subquery result in a grouping select. Cleanup of the inner_refs_list. sql/sql_select.cc: Bug#27321: Wrong subquery result in a grouping select. Now the fix_inner_refs() function chooses which class to use to access outer field - the Item_ref or the Item_direct_ref. An object of the chosen class substitutes the original field in the Item_outer_ref object. A comment is corrected. sql/item.cc: Bug#27321: Wrong subquery result in a grouping select. Now the Item_field::fix_outer_field() uses Item_outer_field objects to represent aliased and non-aliased outer fields for grouping outer selects only. sql/item.h: Bug#27321: Wrong subquery result in a grouping select. The direct_ref and the found_in_select_list fields were added to the Item_outer_ref class.
-
- 14 Apr, 2007 5 commits
- 13 Apr, 2007 5 commits
-
-
unknown authored
into bk-internal.mysql.com:/data0/bk/mysql-5.1-opt mysql-test/r/view.result: Auto merged mysql-test/t/view.test: Auto merged sql/sql_delete.cc: Auto merged sql/sql_lex.cc: Auto merged
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-opt
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-opt
-
- 12 Apr, 2007 20 commits
-
-
unknown authored
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user storage/ndb/tools/restore/Restore.hpp: Auto merged storage/ndb/tools/restore/consumer_restore.cpp: Auto merged mysql-test/r/ndb_restore.result: manual merge mysql-test/t/ndb_restore.test: manual merge
-
unknown authored
- autoincrement column of size medium int not handled in ndb_restore - added testcase also for other types, tiny, small... etc
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-opt
-
unknown authored
into gshchepa.localdomain:/home/uchum/work/bk-trees/5507-ci
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user storage/ndb/include/ndbapi/NdbRecAttr.hpp: Auto merged storage/ndb/src/ndbapi/NdbRecAttr.cpp: Auto merged
-
unknown authored
-
unknown authored
Support of views wasn't implemented for the TRUNCATE statement. Now TRUNCATE on views has the same semantics as DELETE FROM view: mysql_truncate() checks whether the table is a view and falls back to delete if so. In order to initialize properly the LEX::updatable for a view st_lex::can_use_merged() now allows usage of merged views for the TRUNCATE statement. mysql-test/r/truncate.result: Added a test case for the Bug#5507: TRUNCATE does not work with views. mysql-test/t/truncate.test: Added a test case for the Bug#5507: TRUNCATE does not work with views. sql/sql_lex.cc: Bug#5507: TRUNCATE does not work with views. can_use_merged() was denying of usage of merged views for a TRUNCATE statement. This results in improper initialization of view LEX::updatable. Fixed. sql/sql_delete.cc: Bug#5507: TRUNCATE does not work with views. 1.mysql_truncate() was lacking of check whether the table is view. Added. 2.mysql_truncate() calls mysql_delete(), but mysql_delete() always reports errors as "DELETE" errors. Fixed. mysql-test/t/view.test: Updated test case for Bug#14540: OPTIMIZE, ANALYZE, REPAIR applied to not a view. mysql-test/r/view.result: Updated test case for Bug#14540: OPTIMIZE, ANALYZE, REPAIR applied to not a view.
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-opt
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-4.1-opt
-
unknown authored
into trift2.:/MySQL/M51/push-5.1 configure.in: Auto merged
-
unknown authored
into trift2.:/MySQL/M50/push-5.0
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-opt
-
unknown authored
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
-
unknown authored
into perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
-
unknown authored
into perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp: Auto merged storage/ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp: Auto merged storage/ndb/test/include/HugoOperations.hpp: Auto merged storage/ndb/test/run-test/daily-basic-tests.txt: Auto merged storage/ndb/test/src/HugoOperations.cpp: Auto merged storage/ndb/test/src/HugoTransactions.cpp: Auto merged storage/ndb/include/kernel/AttributeHeader.hpp: merge storage/ndb/include/ndbapi/NdbDictionary.hpp: merge storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp: merge storage/ndb/src/ndbapi/ndb_cluster_connection.cpp: merge storage/ndb/test/ndbapi/testBasic.cpp: merge
-
unknown authored
make sure that copy tuple is released in all cases storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp: make sure that copy tuple is released in all cases storage/ndb/test/run-test/daily-basic-tests.txt: add testcase
-
unknown authored
testcase only new pseudo column NDB$COPY_ROWID storage/ndb/include/kernel/AttributeHeader.hpp: Add new pseudo column for reading location of copy tuple storage/ndb/include/ndbapi/NdbDictionary.hpp: Add new pseudo column for reading location of copy tuple storage/ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp: Add new pseudo column for reading location of copy tuple storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp: Add new pseudo column for reading location of copy tuple storage/ndb/src/ndbapi/ndb_cluster_connection.cpp: Add new pseudo column for reading location of copy tuple storage/ndb/test/ndbapi/testBasic.cpp: add testcase for bug#27756
-