• davi@mysql.com/endora.local's avatar
    Bug#32633 Can not create any routine if SQL_MODE=no_engine_substitution · 1c6768c4
    davi@mysql.com/endora.local authored
    The problem is that one can not create a stored routine if sql_mode
    contains NO_ENGINE_SUBSTITUTION or PAD_CHAR_TO_FULL_LENGTH. Also when
    a event is created, the mode is silently lost if sql_mode contains one
    of the aforementioned.  This was happening because the table definitions
    which stored sql_mode values weren't being updated to accept new values
    of sql_mode.
    
    The solution is to update, in a backwards compatible manner, the various
    table definitions (columns) that store the sql_mode value to take into
    account the new possible values. One incompatible change is that if a event
    that is being created can't be stored to the mysql.event table, an error
    will be raised.
    
    The tests case also ensure that new SQL modes will be added to the mysql.proc
    and mysql.event tables, otherwise the tests will fail.
    1c6768c4
event_db_repository.cc 32.4 KB