1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

MDEV-17693 Shift/reduce conflicts for NAMES,ROLE,PASSWORD in the option_value_no_option_type grammar

This commit is contained in:
Alexander Barkov
2018-11-13 09:54:21 +04:00
parent e1dc05a696
commit c29c39a7dc
6 changed files with 359 additions and 12 deletions

View File

@ -1459,4 +1459,78 @@ DROP PROCEDURE p1;
(SELECT (SELECT (SELECT (SELECT (SELECT (SELECT (SELECT (SELECT
1
)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
--echo #
--echo # MDEV-17693 Shift/reduce conflicts for NAMES,ROLE,PASSWORD in the option_value_no_option_type grammar
--echo #
CREATE TABLE names (names INT);
SELECT names FROM names AS names;
DROP TABLE names;
CREATE TABLE password (password INT);
SELECT password FROM password AS password;
DROP TABLE password;
CREATE TABLE role (role INT);
SELECT role FROM role AS role;
DROP TABLE role;
DELIMITER $$;
BEGIN NOT ATOMIC
DECLARE names VARCHAR(32) DEFAULT '[names]';
DECLARE password VARCHAR(32) DEFAULT '[password]';
DECLARE role VARCHAR(32) DEFAULT '[role]';
names:
LOOP
SELECT names;
LEAVE names;
END LOOP;
password:
LOOP
SELECT password;
LEAVE password;
END LOOP;
role:
LOOP
SELECT role;
LEAVE role;
END LOOP;
END;
$$
DELIMITER ;$$
DELIMITER $$;
--error ER_SP_BAD_VAR_SHADOW
BEGIN NOT ATOMIC
DECLARE names VARCHAR(32);
SET names='[names]';
END;
$$
DELIMITER ;$$
DELIMITER $$;
--error ER_SP_BAD_VAR_SHADOW
BEGIN NOT ATOMIC
DECLARE password VARCHAR(32);
SET password='[password]';
END;
$$
DELIMITER ;$$
DELIMITER $$;
BEGIN NOT ATOMIC
DECLARE role VARCHAR(32);
SET role='[role]';
END;
$$
DELIMITER ;$$
--error ER_UNKNOWN_SYSTEM_VARIABLE
SELECT @@GLOBAL.names;
--error ER_UNKNOWN_SYSTEM_VARIABLE
SELECT @@GLOBAL.password;
--error ER_UNKNOWN_SYSTEM_VARIABLE
SELECT @@GLOBAL.role;
--echo End of 10.3 tests