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

Cleanup Lex_ident_fs::check_body()

    XMLWordPrintable

Details

    Description

      The main goal of this task is to change the data type of the global variable any_db from LEX_CSTRING to Lex_ident_db, to make upcoming changes easier:

      -const LEX_CSTRING any_db= {STRING_WITH_LEN("*any*")};
      +const Lex_ident_db any_db(STRING_WITH_LEN("*any*"));
      

      But most changes have to be done in Lex_ident_fs::check_body(), hence the task title.

      Lex_ident_fs::check_body() depends from system_charset_info, which is initialized after any_db during the server startup.
      So we need to change system_charset_info to direct use of my_charset_utf8mb3_general_ci.

      Additionally, let's remove the unused code from Lex_ident_fs::check_body().
      We always compile in the way that this condition evaluates to true:

      #if defined(USE_MB) && defined(USE_MB_IDENT)
      ...
      #else
      ...
      #endif
      

      There is no sence to keep the old MySQL-4.0 code from the "#else" branch.

      Attachments

        Issue Links

          Activity

            People

              bar Alexander Barkov
              bar Alexander Barkov
              Votes:
              0 Vote for this issue
              Watchers:
              1 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.