• unknown's avatar
    WL#2818 (Add creator to the trigger definition for privilege · 7dbea7df
    unknown authored
    checks on trigger activation)
    
    
    mysql-test/r/information_schema.result:
      Update result file: a new column DEFINER has been added to
      INFORMATION_SCHEMA.TRIGGERS.
    mysql-test/r/mysqldump.result:
      Update result file: a new column DEFINER has been added to
      INFORMATION_SCHEMA.TRIGGERS.
    mysql-test/r/rpl_ddl.result:
      Update result file: a new column DEFINER has been added to
      INFORMATION_SCHEMA.TRIGGERS.
    mysql-test/r/rpl_sp.result:
      Update result file: a new clause DEFINER has been added to
      CREATE TRIGGER statement.
    mysql-test/r/rpl_trigger.result:
      Results for new test cases were added.
    mysql-test/r/skip_grants.result:
      Error message has been changed.
    mysql-test/r/trigger.result:
      Added DEFINER column.
    mysql-test/r/view.result:
      Error messages have been changed.
    mysql-test/r/view_grant.result:
      Error messages have been changed.
    mysql-test/t/mysqldump.test:
      Drop created procedure to not affect further tests.
    mysql-test/t/rpl_trigger.test:
      Add tests for new column in information schema.
    mysql-test/t/skip_grants.test:
      Error tag has been renamed.
    mysql-test/t/view.test:
      Error tag has been renamed.
    mysql-test/t/view_grant.test:
      Error tag has been changed.
    sql/item_func.cc:
      Fix typo in comments.
    sql/mysql_priv.h:
      A try to minimize copy&paste:
        - introduce operations to be used from sql_yacc.yy;
        - introduce an operation to be used from trigger and
          view processing code.
    sql/share/errmsg.txt:
      - Rename ER_NO_VIEW_USER to ER_MALFORMED_DEFINER in order to
        be shared for view and trigger implementations;
      - Fix a typo;
      - Add a new error code for trigger warning.
    sql/sp.cc:
      set_info() was split into set_info() and set_definer().
    sql/sp_head.cc:
      set_info() was split into set_info() and set_definer().
    sql/sp_head.h:
      set_info() was split into set_info() and set_definer().
    sql/sql_acl.cc:
      Add a new check: exit from the cycle if the table is NULL.
    sql/sql_lex.h:
      - Rename create_view_definer to definer, since it is used for views
        and triggers;
      - Change st_lex_user to LEX_USER, since st_lex_user is a structure.
        So, formally, it should be "struct st_lex_user", which is longer
        than just LEX_USER;
      - Add trigger_definition_begin.
    sql/sql_parse.cc:
      - Add a new check: exit from the cycle if the table is NULL;
      - Implement definer-related functions.
    sql/sql_show.cc:
      Add DEFINER column.
    sql/sql_trigger.cc:
      Add DEFINER support for triggers.
    sql/sql_trigger.h:
      Add DEFINER support for triggers.
    sql/sql_view.cc:
      Rename create_view_definer to definer.
    sql/sql_yacc.yy:
      Add support for DEFINER-clause in CREATE TRIGGER statement.
      
      Since CREATE TRIGGER and CREATE VIEW can be similar at the start,
      yacc is unable to distinguish between them. So, had to modify both
      statements in order to make it parsable by yacc.
    mysql-test/r/trigger-compat.result:
      Result file for triggers backward compatibility test.
    mysql-test/r/trigger-grant.result:
      Result file of the test for WL#2818.
    mysql-test/t/trigger-compat.test:
      Triggers backward compatibility test: check that the server
      still can load triggers w/o definer attribute and modify
      tables with such triggers (add a new trigger, etc).
    mysql-test/t/trigger-grant.test:
      Test for WL#2818 -- check that DEFINER support in triggers
      works properly
    7dbea7df
sql_trigger.cc 33.7 KB