Details
-
Bug
-
Status: Confirmed (View Workflow)
-
Minor
-
Resolution: Unresolved
-
10.1.12, 5.5, 10.0, 10.1
-
Ubuntu 15.10 (64 bits)
Description
MariaDB [test]> SELECT VERSION(); |
+-------------------+ |
| VERSION() |
|
+-------------------+ |
| 10.1.12-MariaDB-1 |
|
+-------------------+ |
1 row in set (0.00 sec) |
|
MariaDB [test]> DROP PROCEDURE IF EXISTS `sp_bug`; |
Query OK, 0 rows affected, 1 warning (0.00 sec) |
|
MariaDB [test]> DELIMITER //
|
|
MariaDB [test]> CREATE PROCEDURE `sp_bug`(OUT `out_parameter` INT UNSIGNED) |
-> BEGIN |
-> DECLARE EXIT HANDLER FOR SQLEXCEPTION |
-> BEGIN |
-> SET `out_parameter` := 2; |
-> SELECT `out_parameter`; |
-> RESIGNAL;
|
-> END; |
-> SET `out_parameter` := 1; |
-> SELECT `out_parameter`; |
-> SIGNAL SQLSTATE '45000' SET |
-> MYSQL_ERRNO = 2,
|
-> MESSAGE_TEXT = 'Too long'; |
-> END// |
Query OK, 0 rows affected (0.00 sec) |
|
MariaDB [test]> DELIMITER ;
|
|
MariaDB [test]> SET @`out_parameter` := NULL; |
Query OK, 0 rows affected (0.00 sec) |
|
MariaDB [test]> CALL `sp_bug`(@`out_parameter`);
|
+-----------------+ |
| `out_parameter` |
|
+-----------------+ |
| 1 |
|
+-----------------+ |
1 row in set (0.00 sec) |
|
+-----------------+ |
| `out_parameter` |
|
+-----------------+ |
| 2 |
|
+-----------------+ |
1 row in set (0.00 sec) |
|
ERROR 2 (45000): Too long
|
|
MariaDB [test]> SHOW WARNINGS;
|
+-------+------+----------+ |
| Level | Code | Message | |
+-------+------+----------+ |
| Error | 2 | Too long |
|
+-------+------+----------+ |
1 row in set (0.00 sec) |
|
MariaDB [test]> SELECT @`out_parameter`; |
+------------------+ |
| @`out_parameter` |
|
+------------------+ |
| NULL | |
+------------------+ |
1 row in set (0.00 sec) |