diff options
author | unknown <tnurnberg@mysql.com/white.intern.koehntopp.de> | 2008-02-24 14:12:17 +0100 |
---|---|---|
committer | unknown <tnurnberg@mysql.com/white.intern.koehntopp.de> | 2008-02-24 14:12:17 +0100 |
commit | 9bd3b8545a44188502a1a142e6f2171ac5b600e1 (patch) | |
tree | d95d25d1f64c4bf0b5f7fb5748ed418eaee29c82 /unittest/README.txt | |
parent | a22c3d21096f827d4eb7dfc1b3546cb758123756 (diff) | |
download | mariadb-git-9bd3b8545a44188502a1a142e6f2171ac5b600e1.tar.gz |
Bug#32757: hang with sql_mode set when setting some global variables
If setting a system-variable provided by a plug-in failed, no OK or
error was sent in some cases, hanging the client. We now send an error
in the case from the ticket (integer-argument out of range in STRICT
mode). We also provide a semi-generic fallback message for possible
future cases like this where an error is signalled, but no message is
sent to the client. The error/warning handling is unified so it's the
same again for variables provided by plugins and those in the server
proper.
mysql-test/r/plugin.result:
show that on out-of-range values, plugin interface throws errors
in STRICT mode and warnings otherwise.
mysql-test/t/plugin.test:
show that on out-of-range values, plugin interface throws errors
in STRICT mode and warnings otherwise.
sql/set_var.cc:
- handle signedness of values used in warnings
- in STRICT mode, throw errors rather than warnings
sql/sql_parse.cc:
If sql_set_variables() returns with an error but no message
was sent to the client, send a semi-generic one so the session
won't hang and we won't fail silently.
sql/sql_plugin.cc:
throw a warning if more than just block-size was corrected
(or an error in STRICT mode). use functions from set_var
for uniform behaviour of server- and plug-in variables.
storage/example/ha_example.cc:
Add a ULONG system variable to example plugin so
we can test integers in the plugin-interface without
having to depend on the presence of innobase.
Diffstat (limited to 'unittest/README.txt')
0 files changed, 0 insertions, 0 deletions