Skip to content

Commit c9b5a05

Browse files
committed
MDEV-28588 SIGSEGV in __memmove_avx_unaligned_erms, strmake_root
1 parent 3e564d4 commit c9b5a05

File tree

3 files changed

+42
-1
lines changed

3 files changed

+42
-1
lines changed

mysql-test/suite/compat/oracle/r/sp.result

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2560,3 +2560,21 @@ idx
25602560
idx
25612561
1
25622562
DROP PROCEDURE p1;
2563+
#
2564+
# MDEV-28588 SIGSEGV in __memmove_avx_unaligned_erms, strmake_root
2565+
#
2566+
SET sql_mode=ORACLE;
2567+
BEGIN END;
2568+
SET sql_mode=ORACLE;
2569+
CREATE EVENT ev ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO BEGIN END;
2570+
Warnings:
2571+
Warning 1105 Event scheduler is switched off, use SET GLOBAL event_scheduler=ON to enable it.
2572+
SELECT EVENT_DEFINITION FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='test' AND EVENT_NAME='ev';
2573+
EVENT_DEFINITION BEGIN END
2574+
DROP EVENT ev;
2575+
CREATE TABLE t1 (a INT);
2576+
CREATE TRIGGER tr AFTER INSERT ON t1 FOR EACH ROW BEGIN END;
2577+
SELECT ACTION_STATEMENT FROM INFORMATION_SCHEMA.TRIGGERS WHERE TRIGGER_SCHEMA='test' AND TRIGGER_NAME='tr';
2578+
ACTION_STATEMENT BEGIN END
2579+
DROP TRIGGER tr;
2580+
DROP TABLE t1;

mysql-test/suite/compat/oracle/t/sp.test

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2397,3 +2397,26 @@ $$
23972397
DELIMITER ;$$
23982398
CALL p1();
23992399
DROP PROCEDURE p1;
2400+
2401+
2402+
--echo #
2403+
--echo # MDEV-28588 SIGSEGV in __memmove_avx_unaligned_erms, strmake_root
2404+
--echo #
2405+
2406+
SET sql_mode=ORACLE;
2407+
BEGIN END;
2408+
2409+
SET sql_mode=ORACLE;
2410+
CREATE EVENT ev ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO BEGIN END;
2411+
--vertical_results
2412+
SELECT EVENT_DEFINITION FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA='test' AND EVENT_NAME='ev';
2413+
--horizontal_results
2414+
DROP EVENT ev;
2415+
2416+
CREATE TABLE t1 (a INT);
2417+
CREATE TRIGGER tr AFTER INSERT ON t1 FOR EACH ROW BEGIN END;
2418+
--vertical_results
2419+
SELECT ACTION_STATEMENT FROM INFORMATION_SCHEMA.TRIGGERS WHERE TRIGGER_SCHEMA='test' AND TRIGGER_NAME='tr';
2420+
--horizontal_results
2421+
DROP TRIGGER tr;
2422+
DROP TABLE t1;

sql/sql_lex.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6674,7 +6674,7 @@ bool LEX::maybe_start_compound_statement(THD *thd)
66746674
if (!make_sp_head(thd, NULL, &sp_handler_procedure))
66756675
return true;
66766676
sphead->set_suid(SP_IS_NOT_SUID);
6677-
sphead->set_body_start(thd, thd->m_parser_state->m_lip.get_cpp_ptr());
6677+
sphead->set_body_start(thd, thd->m_parser_state->m_lip.get_cpp_tok_start());
66786678
}
66796679
return false;
66806680
}

0 commit comments

Comments
 (0)