Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-5816

MySQL WL#4179 - Stored programs: validation of stored program statements

    XMLWordPrintable

Details

    Description

      Test case for MySQL "WL#4179 - Stored programs: validation of stored program statements" fails in 10.0.

      Test diff attached. Please try to apply test case as is unless it is applicable.

      Changes introduced by the task MDEV-5816.
      ---------------------------------------------
      Main logic of SP instructions processing is modified to support handling of tables metadata change the Stored routine's instructions depends on.

      • On first execution of SP instruction the current version of metadata for tables used by SP statement is extracted from the data dictionary and remembered in SP instruction's context.
      • Next time the same SP instruction is run the current version of underlying tables metadata is checked against their version loaded from data dictionary. In case these versions are different the statement for this SP instruction is re-parsed and actual metadata of underlying tables is reloaded from the data dictionary.

      To invalidate current SP instruction on metadata change and force its re-parsing, the same approach that used for Prepared Statement is applied - an instance of the class Reprepare_observer installed before second and subsequent executions of SP instruction and in case underlying tables metadata be changed this fact will be notified to and SP instruction's statement be re-parsed.

      Attachments

        Issue Links

          Activity

            People

              shulga Dmitry Shulga
              svoj Sergey Vojtovich
              Votes:
              2 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - 12d Original Estimate - 12d
                  12d
                  Remaining:
                  Remaining Estimate - 0d
                  0d
                  Logged:
                  Time Spent - 160d 6h 4m
                  160d 6h 4m

                  Git Integration

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