mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 05:22:25 +01:00
Fix for Bug#37744 Expected result of "<engine>_storedproc" test
is inconsistent + several improvements Details: - The subtest with assignment of floating point numbers to DECIMAL parameters in functions and procedures checks now that the final DECIMAL value is the same as if we assign the floating point numbers to columns, user variables etc. = The impact of math libs or truncation must be the same. - Remove storage engine variants of this test because the stored procedure properties tested do not depend on the storage engine. Use the fastest storage engine (MEMORY) for any tables needed. - reset global sort_buffer_size to startup value - Partially improved formatting.
This commit is contained in:
parent
88ec0a0ce8
commit
369206342c
10 changed files with 3059 additions and 72370 deletions
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
33
mysql-test/suite/funcs_1/storedproc/param_check.inc
Normal file
33
mysql-test/suite/funcs_1/storedproc/param_check.inc
Normal file
|
@ -0,0 +1,33 @@
|
|||
# suite/funcs_1/storedproc/param_check.inc
|
||||
#
|
||||
# Auxiliary routine to be sourced by
|
||||
# suite/funcs_1/t/storedproc.test
|
||||
#
|
||||
# Purpose:
|
||||
# The assignment of float values to objects of type DECIMAL causes
|
||||
# conversions and in some cases an adjustment of the value to
|
||||
# a border of the value range.
|
||||
# Try to reveal that function and procedure parameters get a similar
|
||||
# mangling of the value like columns.
|
||||
#
|
||||
# Variables to be set before sourcing this routine
|
||||
# $test_value - value to be checked
|
||||
#
|
||||
# Created:
|
||||
# 2008-08-27 mleich
|
||||
#
|
||||
|
||||
eval UPDATE t1_aux SET f1 = NULL;
|
||||
# Enforce that all user variables have the same data type and initial value.
|
||||
SELECT f1,f1,f1,f1 INTO @v1_tab,@v1_proc,@v2_proc,@v1_func FROM t1_aux;
|
||||
|
||||
eval UPDATE t1_aux SET f1 = $test_value;
|
||||
SELECT f1 INTO @v1_tab FROM t1_aux;
|
||||
eval CALL sproc_1($test_value, @v1_proc);
|
||||
eval SET @v1_func = func_1($test_value);
|
||||
|
||||
if (`SELECT @v1_tab <> @v1_proc OR @v1_tab <> @v2_proc OR @v1_tab <> @v1_func`)
|
||||
{
|
||||
--echo Error: @v1_tab, @v1_proc, @v2_proc, @v1_func are not all equal
|
||||
SELECT @v1_tab, @v1_proc, @v2_proc, @v1_func;
|
||||
}
|
|
@ -1,13 +0,0 @@
|
|||
#### suite/funcs_1/t/innodb_storedproc.test
|
||||
#
|
||||
|
||||
# This test cannot be used for the embedded server because we check here
|
||||
# privileges.
|
||||
--source include/not_embedded.inc
|
||||
|
||||
--source include/have_innodb.inc
|
||||
let $engine_type= innodb;
|
||||
|
||||
--source suite/funcs_1/storedproc/load_sp_tb.inc
|
||||
|
||||
--source suite/funcs_1/storedproc/storedproc_master.inc
|
|
@ -1,13 +0,0 @@
|
|||
#### suite/funcs_1/t/memory_storedproc.test
|
||||
#
|
||||
|
||||
# This test cannot be used for the embedded server because we check here
|
||||
# privileges.
|
||||
--source include/not_embedded.inc
|
||||
|
||||
SET @@session.sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
||||
let $engine_type= memory;
|
||||
|
||||
--source suite/funcs_1/storedproc/load_sp_tb.inc
|
||||
|
||||
--source suite/funcs_1/storedproc/storedproc_master.inc
|
|
@ -1,13 +0,0 @@
|
|||
#### suite/funcs_1/t/myisam_storedproc.test
|
||||
#
|
||||
|
||||
# This test cannot be used for the embedded server because we check here
|
||||
# privileges.
|
||||
--source include/not_embedded.inc
|
||||
|
||||
SET @@session.sql_mode = 'NO_ENGINE_SUBSTITUTION';
|
||||
let $engine_type= myisam;
|
||||
|
||||
--source suite/funcs_1/storedproc/load_sp_tb.inc
|
||||
|
||||
--source suite/funcs_1/storedproc/storedproc_master.inc
|
|
@ -1,13 +0,0 @@
|
|||
#### suite/funcs_1/t/ndb_storedproc.test
|
||||
#
|
||||
|
||||
# This test cannot be used for the embedded server because we check here
|
||||
# privileges.
|
||||
--source include/not_embedded.inc
|
||||
|
||||
--source include/have_ndb.inc
|
||||
let $engine_type= ndb;
|
||||
|
||||
--source suite/funcs_1/storedproc/load_sp_tb.inc
|
||||
|
||||
--source suite/funcs_1/storedproc/storedproc_master.inc
|
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue