WL#5312: Stored programs: overview of tasks
Status: Assigned
An overview of pending tasks in MySQL stored programs. ################################################################## I. All stored programs (procedures, functions, triggers, events). ################################################################## A. Accessibility and ease of use. --------------------------------- B. Performance. -------------- C. Re-engineering, fixing bugs. ------------------------------- This is mainly a list of gotchas: * WL#4179 "Stored programs: validation of stored program statements" * pluggable stored procedures - in Ruby * BUG#2676 "DECLARE can't have COLLATE clause in stored procedure" (allow collate in SP) * WL#2822 " INFORMATION_SCHEMA.ROUTINES: Add missing columns" * GET DIAGNOSTICS, SIGNAL, RESIGNAL * correct name resolution of SP variables vs. table columns BUG#5967 * FETCH INTO should work for @user @variables * PREPARE command in Stored Procedure should allow access to SP variables in the statement text * EXECUTE command in Stored Procedure should allow access to SP variables in USING clause, and to constants. * provide access to SP variables in LIMIT clause * provide access to user variables in LIMIT claues (BUG#8094) * BUG#28406 GRANT using a stored procedure variable as PASSWORD fails * it should be possible to call PREPARE from a stored procedure variable * it shoulde be possible to open a cursor for PREPARE statement * stored procedures in bootstrap mode; * mysqltest operation in bootstrap mode. * SP debugger WL#2634 * global stored procedure cache * BUG#18634 consistent use of sp variables in functions * DEALLOCATE IF EXISTS * BUG#21462 Stored procedures with no arguments require parenthesi(DONE!) * stupid! if I have CREATE_ROUTINE privilege, I can not alter or drop it! but if I have ALTER_ROUTINE, I can not see its code. * EXPLAIN should be applicable to all SP statements.
WL#820: Stored procedures: in external language
WL#2081: Add ARRAY data type
WL#2082: Add ARRAY element reference function
WL#2083: Add ARRAY value constructor function
WL#2084: Add ability to compare ARRAY data
WL#2085: Add a CARDINALITY(ARRAY) function
WL#2111: Stored Procedures: Implement GET DIAGNOSTICS
WL#2418: DDL Triggers
WL#2634: Stored Procedures: provide debugger
WL#2646: INFORMATION_SCHEMA.ROUTINE_PRIVILEGES view
WL#2793: Dynamic SQL: support EXECUTE IMMEDIATE
WL#2825: Triggers: enable or disable
WL#2877: Triggers: store trigger metadata in tables
WL#2929: Stored Procedures: shared global cache
WL#2954: Procedures - Add support for Oracle's PL/SQL "TYPE" matching in variable declarations
WL#3253: Triggers: multiple triggers per table
WL#3309: Stored Procedures: FOR statement
WL#3433: Stored Procedures: Dynamic Cursors
WL#3601: Stored Procedures: rewrite Item_func_sp::sp_result_field
WL#3696: Dynamic Compound Statements
WL#4178: Stored Routines: validation of stored routines
WL#4179: Stored programs: validation of stored program statements
WL#4299: Stored Routines: use the new metadata cache
WL#2081: Add ARRAY data type
WL#2082: Add ARRAY element reference function
WL#2083: Add ARRAY value constructor function
WL#2084: Add ability to compare ARRAY data
WL#2085: Add a CARDINALITY(ARRAY) function
WL#2111: Stored Procedures: Implement GET DIAGNOSTICS
WL#2418: DDL Triggers
WL#2634: Stored Procedures: provide debugger
WL#2646: INFORMATION_SCHEMA.ROUTINE_PRIVILEGES view
WL#2793: Dynamic SQL: support EXECUTE IMMEDIATE
WL#2825: Triggers: enable or disable
WL#2877: Triggers: store trigger metadata in tables
WL#2929: Stored Procedures: shared global cache
WL#2954: Procedures - Add support for Oracle's PL/SQL "TYPE" matching in variable declarations
WL#3253: Triggers: multiple triggers per table
WL#3309: Stored Procedures: FOR statement
WL#3433: Stored Procedures: Dynamic Cursors
WL#3601: Stored Procedures: rewrite Item_func_sp::sp_result_field
WL#3696: Dynamic Compound Statements
WL#4178: Stored Routines: validation of stored routines
WL#4179: Stored programs: validation of stored program statements
WL#4299: Stored Routines: use the new metadata cache
Copyright (c) 2000, 2025, Oracle Corporation and/or its affiliates. All rights reserved.