Details

    Description

      Many triggers for the same event per table (e.g. many BEFORE DELETE triggerts).
      This can be ported from 5.7

      Looked at the MySQL 5.7 implementation. Too complex and too many not needed changed and moving of things to different files that make it very hard to follow code changes over time.

      Will do this with new code, but will take test cases from MySQL 5.7

      New functionality:

      • "Any" amount of same events
      • New syntax with { FOLLOWS | PRECEDES } trigger_name

        CREATE [OR REPLACE]
        [DEFINER = { user | CURRENT_USER }]
        TRIGGER [IF NOT EXISTS] trigger_name trigger_time trigger_event
        ON tbl_name FOR EACH ROW
        [{ FOLLOWS | PRECEDES }

        other_trigger_name ]
        trigger_stmt

      Attachments

        Issue Links

          Activity

            Can this be disabled? Multiple triggers of the same type can be useful, but can also be chaotic and hard to debug...

            f_razzoli Federico Razzoli added a comment - Can this be disabled? Multiple triggers of the same type can be useful, but can also be chaotic and hard to debug...

            ready for review and testing

            monty Michael Widenius added a comment - ready for review and testing

            As it's completely optional to add a trigger for table, I don't see any reason to disable this.
            We already have way too many startup options for MariaDB.
            If one doesn't think a person is capable of using TRIGGER's, then one shouldn't give him the TRIGGER privilege.

            monty Michael Widenius added a comment - As it's completely optional to add a trigger for table, I don't see any reason to disable this. We already have way too many startup options for MariaDB. If one doesn't think a person is capable of using TRIGGER's, then one shouldn't give him the TRIGGER privilege.

            Almost every feature can be limited in some way, the strangest example is sql_safe_updates.
            But I realized that my proposal would add an incompatibility with MySQL, so it isn't a good idea.

            f_razzoli Federico Razzoli added a comment - Almost every feature can be limited in some way, the strangest example is sql_safe_updates. But I realized that my proposal would add an incompatibility with MySQL, so it isn't a good idea.

            Another reason for not adding an option for this is that multiple triggers per table is standard ANSI SQL feature.

            Optionally disabling all features in SQL that may be problematic for some users is task independent of this one. For example, I think a lot of people would find it useful if DROP TABLE was disabled after they have dropped an important table

            monty Michael Widenius added a comment - Another reason for not adding an option for this is that multiple triggers per table is standard ANSI SQL feature. Optionally disabling all features in SQL that may be problematic for some users is task independent of this one. For example, I think a lot of people would find it useful if DROP TABLE was disabled after they have dropped an important table

            Feature pushed into 10.2

            monty Michael Widenius added a comment - Feature pushed into 10.2

            People

              monty Michael Widenius
              serg Sergei Golubchik
              Votes:
              2 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.