summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <serg@serg.mylan>2005-09-09 10:49:09 +0200
committerunknown <serg@serg.mylan>2005-09-09 10:49:09 +0200
commitcc17a69af68718a3ad9990cbfae51ce49c571187 (patch)
tree76748ff2abd1287ccd328ce81e9408bde222a938
parent0ef988ada34636dee1af7c802f96b136eb7cc936 (diff)
parent5facb8982782d841e6ae6826fea93344fe83527c (diff)
downloadmariadb-git-cc17a69af68718a3ad9990cbfae51ce49c571187.tar.gz
Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0 mysql-test/r/group_by.result: Auto merged mysql-test/t/group_by.test: Auto merged sql/item_cmpfunc.h: Auto merged
-rw-r--r--mysql-test/t/group_by.test10
-rw-r--r--sql/handler.cc18
2 files changed, 23 insertions, 5 deletions
diff --git a/mysql-test/t/group_by.test b/mysql-test/t/group_by.test
index 4631fad3352..043adb97c64 100644
--- a/mysql-test/t/group_by.test
+++ b/mysql-test/t/group_by.test
@@ -612,6 +612,16 @@ SELECT n+1 AS n FROM t1 GROUP BY n;
--enable_ps_protocol
DROP TABLE t1;
+#
+# BUG#12695: Item_func_isnull::update_used_tables
+# did not update const_item_cache
+#
+create table t1(f1 varchar(5) key);
+insert into t1 values (1),(2);
+select sql_buffer_result max(f1) is null from t1;
+select sql_buffer_result max(f1)+1 from t1;
+drop table t1;
+
# End of 4.1 tests
#
diff --git a/sql/handler.cc b/sql/handler.cc
index cf1fbfec465..3acca812a13 100644
--- a/sql/handler.cc
+++ b/sql/handler.cc
@@ -570,12 +570,20 @@ int ha_prepare(THD *thd)
{
int err;
statistic_increment(thd->status_var.ha_prepare_count,&LOCK_status);
- if ((err= (*(*ht)->prepare)(thd, all)))
+ if ((*ht)->prepare)
{
- my_error(ER_ERROR_DURING_COMMIT, MYF(0), err);
- ha_rollback_trans(thd, all);
- error=1;
- break;
+ if ((err= (*(*ht)->prepare)(thd, all)))
+ {
+ my_error(ER_ERROR_DURING_COMMIT, MYF(0), err);
+ ha_rollback_trans(thd, all);
+ error=1;
+ break;
+ }
+ }
+ else
+ {
+ push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_WARN,
+ ER_ILLEGAL_HA, ER(ER_ILLEGAL_HA), (*ht)->name);
}
}
}