mirror of
https://github.com/MariaDB/server.git
synced 2025-11-25 15:09:44 +01:00
130 lines
5.2 KiB
Text
130 lines
5.2 KiB
Text
#
|
|
# MDEV-23836: Assertion `! is_set() || m_can_overwrite_status' in
|
|
# Diagnostics_area::set_error_status (interrupted ALTER TABLE under LOCK)
|
|
#
|
|
CREATE TABLE t1 (a INT);
|
|
SELECT * FROM t1;
|
|
a
|
|
ALTER TABLE x MODIFY xx INT;
|
|
ERROR 42S02: Table 'test.x' doesn't exist
|
|
SET SESSION max_session_mem_used= 8192;
|
|
LOCK TABLE t1 WRITE;
|
|
ALTER TABLE t1 CHANGE COLUMN IF EXISTS b c INT;
|
|
SET SESSION max_session_mem_used = DEFAULT;
|
|
UNLOCK TABLES;
|
|
DROP TABLE t1;
|
|
#
|
|
# MDEV-27978 wrong option name in error when exceeding max_session_mem_used
|
|
#
|
|
SET SESSION max_session_mem_used = 8192;
|
|
SELECT * FROM information_schema.processlist;
|
|
ERROR HY000: The MariaDB server is running with the --max-session-mem-used=8192 option so it cannot execute this statement
|
|
SET SESSION max_session_mem_used = DEFAULT;
|
|
set max_session_mem_used = 50000;
|
|
select * from seq_1_to_1000;
|
|
set max_session_mem_used = 8192;
|
|
select * from seq_1_to_1000;
|
|
set max_session_mem_used = DEFAULT;
|
|
#
|
|
# MDEV-35828: Assertion fails in alloc_root() when memory causes it to call itself
|
|
#
|
|
CREATE TEMPORARY TABLE t1 (a INT,b INT);
|
|
INSERT INTO t1 VALUES (1,1),(2,2);
|
|
SET max_session_mem_used=8192;
|
|
SELECT * FROM (t1 AS t2 LEFT JOIN t1 AS t3 USING (a)),t1;
|
|
ERROR HY000: The MariaDB server is running with the --max-session-mem-used=8192 option so it cannot execute this statement
|
|
SET max_session_mem_used=DEFAULT;
|
|
DROP TABLE t1;
|
|
#
|
|
# MDEV-23824 SIGSEGV in end_io_cache on REPAIR LOCAL TABLE for Aria table
|
|
#
|
|
CREATE TABLE t1 (i INT) ENGINE=Aria;
|
|
INSERT INTO t1 VALUES (1);
|
|
SET max_session_mem_used=50000;
|
|
REPAIR LOCAL TABLE t1 USE_FRM;
|
|
REPAIR LOCAL TABLE t1;
|
|
DROP TABLE t1;
|
|
SET max_session_mem_used=default;
|
|
# End of 10.6 tests
|
|
#
|
|
# MDEV-37489: SIGSEGV in get_param_default_value | store_schema_params
|
|
#
|
|
CREATE OR REPLACE PROCEDURE p0 (x INT DEFAULT func())
|
|
BEGIN
|
|
SELECT x;
|
|
END;
|
|
//
|
|
SET SESSION max_session_mem_used=8192;
|
|
CALL p0();
|
|
ERROR HY000: The MariaDB server is running with the --max-session-mem-used=8192 option so it cannot execute this statement
|
|
SET @@max_session_mem_used=DEFAULT;
|
|
CALL p0();
|
|
ERROR 42000: FUNCTION test.func does not exist
|
|
SELECT * FROM information_schema.PARAMETERS where specific_name = 'p0';
|
|
SPECIFIC_CATALOG SPECIFIC_SCHEMA SPECIFIC_NAME ORDINAL_POSITION PARAMETER_MODE PARAMETER_NAME DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE DATETIME_PRECISION CHARACTER_SET_NAME COLLATION_NAME DTD_IDENTIFIER ROUTINE_TYPE PARAMETER_DEFAULT
|
|
def test p0 1 IN x int NULL NULL 10 0 NULL NULL NULL int(11) PROCEDURE `func`()
|
|
# with func() defined
|
|
CREATE FUNCTION func(x INT DEFAULT 10) RETURNS INT
|
|
BEGIN
|
|
RETURN x;
|
|
END;
|
|
//
|
|
CREATE OR REPLACE PROCEDURE p0 (x INT DEFAULT func())
|
|
BEGIN
|
|
SELECT x;
|
|
END;
|
|
//
|
|
SET SESSION max_session_mem_used=8192;
|
|
CALL p0();
|
|
ERROR HY000: The MariaDB server is running with the --max-session-mem-used=8192 option so it cannot execute this statement
|
|
SET @@max_session_mem_used=DEFAULT;
|
|
CALL p0();
|
|
x
|
|
10
|
|
SELECT * FROM information_schema.PARAMETERS where specific_name = 'p0';
|
|
SPECIFIC_CATALOG SPECIFIC_SCHEMA SPECIFIC_NAME ORDINAL_POSITION PARAMETER_MODE PARAMETER_NAME DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE DATETIME_PRECISION CHARACTER_SET_NAME COLLATION_NAME DTD_IDENTIFIER ROUTINE_TYPE PARAMETER_DEFAULT
|
|
def test p0 1 IN x int NULL NULL 10 0 NULL NULL NULL int(11) PROCEDURE `func`()
|
|
# with multiple functions
|
|
CREATE FUNCTION func2(x INT DEFAULT 10) RETURNS INT
|
|
BEGIN
|
|
RETURN x;
|
|
END;
|
|
//
|
|
CREATE OR REPLACE PROCEDURE p0 (x INT DEFAULT func(), y INT DEFAULT func2())
|
|
BEGIN
|
|
SELECT x, y;
|
|
END;
|
|
//
|
|
SET SESSION max_session_mem_used=8192;
|
|
CALL p0();
|
|
ERROR HY000: The MariaDB server is running with the --max-session-mem-used=8192 option so it cannot execute this statement
|
|
SET @@max_session_mem_used=DEFAULT;
|
|
CALL p0();
|
|
x y
|
|
10 10
|
|
SELECT * FROM information_schema.PARAMETERS where specific_name = 'p0';
|
|
SPECIFIC_CATALOG SPECIFIC_SCHEMA SPECIFIC_NAME ORDINAL_POSITION PARAMETER_MODE PARAMETER_NAME DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE DATETIME_PRECISION CHARACTER_SET_NAME COLLATION_NAME DTD_IDENTIFIER ROUTINE_TYPE PARAMETER_DEFAULT
|
|
def test p0 1 IN x int NULL NULL 10 0 NULL NULL NULL int(11) PROCEDURE `func`()
|
|
def test p0 2 IN y int NULL NULL 10 0 NULL NULL NULL int(11) PROCEDURE `func2`()
|
|
# with function and constant default param
|
|
CREATE OR REPLACE PROCEDURE p0 (x INT DEFAULT func(), y INT DEFAULT func2(), z INT DEFAULT 10)
|
|
BEGIN
|
|
SELECT x, y, z;
|
|
END;
|
|
//
|
|
SET SESSION max_session_mem_used=8192;
|
|
CALL p0();
|
|
ERROR HY000: The MariaDB server is running with the --max-session-mem-used=8192 option so it cannot execute this statement
|
|
SET @@max_session_mem_used=DEFAULT;
|
|
CALL p0();
|
|
x y z
|
|
10 10 10
|
|
SELECT * FROM information_schema.PARAMETERS where specific_name = 'p0';
|
|
SPECIFIC_CATALOG SPECIFIC_SCHEMA SPECIFIC_NAME ORDINAL_POSITION PARAMETER_MODE PARAMETER_NAME DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE DATETIME_PRECISION CHARACTER_SET_NAME COLLATION_NAME DTD_IDENTIFIER ROUTINE_TYPE PARAMETER_DEFAULT
|
|
def test p0 1 IN x int NULL NULL 10 0 NULL NULL NULL int(11) PROCEDURE `func`()
|
|
def test p0 2 IN y int NULL NULL 10 0 NULL NULL NULL int(11) PROCEDURE `func2`()
|
|
def test p0 3 IN z int NULL NULL 10 0 NULL NULL NULL int(11) PROCEDURE 10
|
|
DROP PROCEDURE p0;
|
|
DROP FUNCTION func;
|
|
DROP FUNCTION func2;
|
|
# End of 11.8 tests
|