Commit 9004d93b authored by gkodinov/kgeorge@macbook.gmz's avatar gkodinov/kgeorge@macbook.gmz

Merge macbook.gmz:/Users/kgeorge/mysql/work/mysql-5.1

into  macbook.gmz:/Users/kgeorge/mysql/work/merge-5.1-opt
parents e37d0815 55b66644
...@@ -2090,14 +2090,6 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI ...@@ -2090,14 +2090,6 @@ v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VI
deallocate prepare abc; deallocate prepare abc;
drop view v1; drop view v1;
drop table t1; drop table t1;
create procedure proc_1() install plugin my_plug soname '/root/some_plugin.so';
call proc_1();
ERROR HY000: No paths allowed for shared library
call proc_1();
ERROR HY000: No paths allowed for shared library
call proc_1();
ERROR HY000: No paths allowed for shared library
drop procedure proc_1;
create procedure proc_1() install plugin my_plug soname 'some_plugin.so'; create procedure proc_1() install plugin my_plug soname 'some_plugin.so';
call proc_1(); call proc_1();
ERROR HY000: Can't open shared library ERROR HY000: Can't open shared library
...@@ -2112,12 +2104,6 @@ select func_1(), func_1(), func_1() from dual; ...@@ -2112,12 +2104,6 @@ select func_1(), func_1(), func_1() from dual;
ERROR 42000: FUNCTION test.func_1 does not exist ERROR 42000: FUNCTION test.func_1 does not exist
drop function func_1; drop function func_1;
ERROR 42000: FUNCTION test.func_1 does not exist ERROR 42000: FUNCTION test.func_1 does not exist
prepare abc from "install plugin my_plug soname '/root/some_plugin.so'";
execute abc;
ERROR HY000: No paths allowed for shared library
execute abc;
ERROR HY000: No paths allowed for shared library
deallocate prepare abc;
prepare abc from "install plugin my_plug soname 'some_plugin.so'"; prepare abc from "install plugin my_plug soname 'some_plugin.so'";
deallocate prepare abc; deallocate prepare abc;
create procedure proc_1() uninstall plugin my_plug; create procedure proc_1() uninstall plugin my_plug;
......
create procedure proc_1() install plugin my_plug soname '/root/some_plugin.so';
call proc_1();
ERROR HY000: No paths allowed for shared library
call proc_1();
ERROR HY000: No paths allowed for shared library
call proc_1();
ERROR HY000: No paths allowed for shared library
drop procedure proc_1;
prepare abc from "install plugin my_plug soname '/root/some_plugin.so'";
execute abc;
ERROR HY000: No paths allowed for shared library
execute abc;
ERROR HY000: No paths allowed for shared library
deallocate prepare abc;
...@@ -6,3 +6,17 @@ use prn; ...@@ -6,3 +6,17 @@ use prn;
ERROR 42000: Unknown database 'prn' ERROR 42000: Unknown database 'prn'
create table nu (a int); create table nu (a int);
drop table nu; drop table nu;
create procedure proc_1() install plugin my_plug soname '\\root\\some_plugin.dll';
call proc_1();
ERROR HY000: No paths allowed for shared library
call proc_1();
ERROR HY000: No paths allowed for shared library
call proc_1();
ERROR HY000: No paths allowed for shared library
drop procedure proc_1;
prepare abc from "install plugin my_plug soname '\\\\root\\\\some_plugin.dll'";
execute abc;
ERROR HY000: No paths allowed for shared library
execute abc;
ERROR HY000: No paths allowed for shared library
deallocate prepare abc;
...@@ -2092,14 +2092,6 @@ drop view v1; ...@@ -2092,14 +2092,6 @@ drop view v1;
drop table t1; drop table t1;
create procedure proc_1() install plugin my_plug soname '/root/some_plugin.so';
--error ER_UDF_NO_PATHS
call proc_1();
--error ER_UDF_NO_PATHS
call proc_1();
--error ER_UDF_NO_PATHS
call proc_1();
drop procedure proc_1;
create procedure proc_1() install plugin my_plug soname 'some_plugin.so'; create procedure proc_1() install plugin my_plug soname 'some_plugin.so';
--replace_regex /(Can\'t open shared library).*$/\1/ --replace_regex /(Can\'t open shared library).*$/\1/
--error ER_CANT_OPEN_LIBRARY --error ER_CANT_OPEN_LIBRARY
...@@ -2119,12 +2111,6 @@ delimiter ;| ...@@ -2119,12 +2111,6 @@ delimiter ;|
select func_1(), func_1(), func_1() from dual; select func_1(), func_1(), func_1() from dual;
--error ER_SP_DOES_NOT_EXIST --error ER_SP_DOES_NOT_EXIST
drop function func_1; drop function func_1;
prepare abc from "install plugin my_plug soname '/root/some_plugin.so'";
--error ER_UDF_NO_PATHS
execute abc;
--error ER_UDF_NO_PATHS
execute abc;
deallocate prepare abc;
prepare abc from "install plugin my_plug soname 'some_plugin.so'"; prepare abc from "install plugin my_plug soname 'some_plugin.so'";
deallocate prepare abc; deallocate prepare abc;
......
# Non-windows specific ps tests.
--source include/not_windows.inc
#
# Bug #20665: All commands supported in Stored Procedures should work in
# Prepared Statements
#
create procedure proc_1() install plugin my_plug soname '/root/some_plugin.so';
--error ER_UDF_NO_PATHS
call proc_1();
--error ER_UDF_NO_PATHS
call proc_1();
--error ER_UDF_NO_PATHS
call proc_1();
drop procedure proc_1;
prepare abc from "install plugin my_plug soname '/root/some_plugin.so'";
--error ER_UDF_NO_PATHS
execute abc;
--error ER_UDF_NO_PATHS
execute abc;
deallocate prepare abc;
...@@ -18,3 +18,25 @@ create table nu (a int); ...@@ -18,3 +18,25 @@ create table nu (a int);
drop table nu; drop table nu;
# End of 4.1 tests # End of 4.1 tests
#
# Bug #20665: All commands supported in Stored Procedures should work in
# Prepared Statements
#
create procedure proc_1() install plugin my_plug soname '\\root\\some_plugin.dll';
--error ER_UDF_NO_PATHS
call proc_1();
--error ER_UDF_NO_PATHS
call proc_1();
--error ER_UDF_NO_PATHS
call proc_1();
drop procedure proc_1;
prepare abc from "install plugin my_plug soname '\\\\root\\\\some_plugin.dll'";
--error ER_UDF_NO_PATHS
execute abc;
--error ER_UDF_NO_PATHS
execute abc;
deallocate prepare abc;
This diff is collapsed.
...@@ -2727,11 +2727,17 @@ int THD::binlog_update_row(TABLE* table, bool is_trans, ...@@ -2727,11 +2727,17 @@ int THD::binlog_update_row(TABLE* table, bool is_trans,
before_record); before_record);
my_size_t const after_size= pack_row(table, cols, after_row, my_size_t const after_size= pack_row(table, cols, after_row,
after_record); after_record);
/*
Don't print debug messages when running valgrind since they can
trigger false warnings.
*/
#ifndef HAVE_purify
DBUG_DUMP("before_record", (const char *)before_record, table->s->reclength); DBUG_DUMP("before_record", (const char *)before_record, table->s->reclength);
DBUG_DUMP("after_record", (const char *)after_record, table->s->reclength); DBUG_DUMP("after_record", (const char *)after_record, table->s->reclength);
DBUG_DUMP("before_row", (const char *)before_row, before_size); DBUG_DUMP("before_row", (const char *)before_row, before_size);
DBUG_DUMP("after_row", (const char *)after_row, after_size); DBUG_DUMP("after_row", (const char *)after_row, after_size);
#endif
Rows_log_event* const ev= Rows_log_event* const ev=
binlog_prepare_pending_rows_event(table, server_id, cols, colcnt, binlog_prepare_pending_rows_event(table, server_id, cols, colcnt,
......
...@@ -146,12 +146,13 @@ Ndb::~Ndb() ...@@ -146,12 +146,13 @@ Ndb::~Ndb()
} }
doDisconnect(); doDisconnect();
delete theEventBuffer; /* Disconnect from transporter to stop signals from coming in */
if (theImpl->m_transporter_facade != NULL && theNdbBlockNumber > 0){ if (theImpl->m_transporter_facade != NULL && theNdbBlockNumber > 0){
theImpl->m_transporter_facade->close(theNdbBlockNumber, theFirstTransId); theImpl->m_transporter_facade->close(theNdbBlockNumber, theFirstTransId);
} }
delete theEventBuffer;
releaseTransactionArrays(); releaseTransactionArrays();
delete []theConnectionArray; delete []theConnectionArray;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment