- split into several files
- forbid parallel execution (before analyse is done how to make it possible)
because the same sp_head instance cannot be executed in parallel
- added GPL headers
- changed EVENT_ACL to be per DB variable
- fixed minor problems
mysql-test/lib/init_db.sql:
WL#1034 updated
- add Event_priv to mysql.user (update test)
- add updated mysql.event table struct
scripts/mysql_fix_privilege_tables.sql:
WL#1034 updated
add updated mysql.event structure
sql/Makefile.am:
split event.cc into
- event.cc (create/alter/drop)
- event_executor.cc (main and worker threads)
- event_timed.cc (class event_timed)
- event_priv.h (some definitions used internally by the module)
sql/event.cc:
- added GPL header
- split into few files
- fixed some issues after code review
- now using SP routines for opening/traversing/closing tables
(will be reverted)
sql/event.h:
- add GPL header
- remove two methods - inline them in sql_yacc.yy
- don't use absolute values for EVEX_ defines but the SP_ equivalents (have to move 100% to SP_
defines and as later step to not transfer messages upwards in the stack but
report them at the place they occur)
- updated reference table definition
- move default mem_root param from event.cc to the header
sql/mysqld.cc:
WL#1034
rename --event-executor to --event-scheduler
executor sounds a bit scary :)
sql/set_var.cc:
rename internal variable name from event_executor to event_scheduler
(ppl won't be scarried anymore :)
sql/share/errmsg.txt:
omit one %s - not needed
sql/sp_head.cc:
disable this DBUG_PRINT for a bit. m_next_cached_sp is 0x0 and I get crash here...
sql/sp_head.h:
remove m_old_cmq, a temporal variable is used in sql_yacc.yy (Serg's idea)
to keep the previous state.
$<ulong_val>$ = ....
YYTHD->client_capabilites != $<ulong_val>4;
(the same is done also for class event_timed)
sql/sql_acl.cc:
handle pre-5.1.4 table and give the user EVENT_ACL if he had CREATE_ACL
sql/sql_acl.h:
fix the bitmask
sql/sql_parse.cc:
- move from EVENT_ACL being global to EVENT_ACL being per DB like
CREATE_PROC_ACL
- lex->m_qname dropped, because not needed, fix code therefore
- add comment that SHOW CREATE EVENT has to be implemented
sql/sql_yacc.yy:
- use temporal variable of Bison to store a short lived value
- fix indentation
- inline 2 class event_timed methods in the parser
sql/tztime.h:
be more expressive - it's already extern