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

compat/oracle.sp-inout fails on macOS

    XMLWordPrintable

Details

    • Bug
    • Status: In Review (View Workflow)
    • Major
    • Resolution: Unresolved
    • None
    • 11.4
    • None
    • None

    Description

      To reproduce this bug, it’s sufficient to run the query INSERT INTO Persons SELECT 5, 'EEE', PKG2.func(@a); after creating table Persons. In the case of APFS, the default filesystem on Mac, it is case-insensitive. On such systems, we set lower_case_table_names is to 2. According to our KB at https://mariadb.com/docs/server/ref/mdb/system-variables/lower_case_table_names/ this means that “When the lower_case_table_names system variable is set to 2, the server uses a special mode for case-insensitive file systems. In this mode, table names and database names are stored as declared, but they are compared in lowercase.” This bug happens because the sp_name constructor discards the case information for the procedure name if lower_case_table_names is any value other than zero, and stores the name as all lowercase. Later, if we print or otherwise display this name, it’s shown as all lowercase, in contradiction to our documentation.
      To fix this bug, I think we need to remember the value in its original case, perhaps as a separate variable on the sp_name class, and show that whenever the name may be displayed to the user. We can retain the all-lowercase value for internal processing as we do today.

      Attachments

        Issue Links

          Activity

            People

              bar Alexander Barkov
              Gosselin Dave Gosselin
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

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