summaryrefslogtreecommitdiff
path: root/sql/sql_union.cc
diff options
context:
space:
mode:
authorunknown <bell@sanja.is.com.ua>2003-08-09 14:39:54 +0300
committerunknown <bell@sanja.is.com.ua>2003-08-09 14:39:54 +0300
commit9b16dd8962408ac4483cd3a1bf4264b1e81d2780 (patch)
tree48a904d467e3f4e4b92dfd1ec0893dad24eab3fd /sql/sql_union.cc
parentec1a433f087d09fd187d4a224394bfa87baa09ce (diff)
downloadmariadb-git-9b16dd8962408ac4483cd3a1bf4264b1e81d2780.tar.gz
fixed union unlocking problem (BUG#906)
mysql-test/r/subselect.result: test of union unlocking problem mysql-test/t/subselect.test: test of union unlocking problem sql/sql_union.cc: prohibit unlocking all tables by fake select execution
Diffstat (limited to 'sql/sql_union.cc')
-rw-r--r--sql/sql_union.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/sql/sql_union.cc b/sql/sql_union.cc
index 724cc658b15..bbf0781bc19 100644
--- a/sql/sql_union.cc
+++ b/sql/sql_union.cc
@@ -351,7 +351,8 @@ int st_select_lex_unit::exec()
global_parameters->order_list.elements,
(ORDER*)global_parameters->order_list.first,
(ORDER*) NULL, NULL, (ORDER*) NULL,
- thd->options, result, this, fake_select, 0);
+ thd->options | SELECT_NO_UNLOCK,
+ result, this, fake_select, 0);
if (found_rows_for_union && !res)
thd->limit_found_rows = (ulonglong)table->file->records;
fake_select->exclude();