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

main.mysql_upgrade fails without unix_socket plugin

    XMLWordPrintable

Details

    Description

      Test failure:

      main.mysql_upgrade                       [ fail ]
              Test ended at 2024-11-15 12:34:39
       
      CURRENT_TEST: main.mysql_upgrade
      --- mysql-test/main/mysql_upgrade.result        2024-07-31 14:14:39.048133490 +0400
      +++ mysql-test/main/mysql_upgrade.reject        2024-11-15 12:34:38.667792366 +0400
      @@ -2364,6 +2364,7 @@
       # mariadb-upgrade --force --silent 2>&1
       SELECT * FROM mysql.plugin WHERE name='unix_socket';
       name   dl
      +unix_socket    auth_socket.so
       # End of 10.4 tests
       #
       # Check that mysql_upgrade can be run on mysqldump
       
      Result length mismatch
      

      Has to be built with -DPLUGIN_AUTH_SOCKET=NO.

      Although in my case it was disabled due to a bug in HAVE_PEERCRED check of auth_socket/CMakeLists.txt, which got triggered by -DMYSQL_MAINTAINER_MODE=ERR:

      Performing C++ SOURCE FILE Test HAVE_PEERCRED failed with the following output:
      Change Dir: /dev/shm/build/bb-11.6-MDEV-32887-vector/CMakeFiles/CMakeTmp
       
      Run Build Command(s):/usr/bin/make cmTC_4ad9f/fast && /usr/bin/make -f CMakeFiles/cmTC_4ad9f.dir/build.make CMakeFiles/cmTC_4ad9f.dir/build
      make[1]: Entering directory '/dev/shm/build/bb-11.6-MDEV-32887-vector/CMakeFiles/CMakeTmp'
      Building CXX object CMakeFiles/cmTC_4ad9f.dir/src.cxx.o
      /usr/bin/c++    -pie -fPIC -fstack-protector --param=ssp-buffer-size=4 -fPIC -Werror -fno-operator-names -Wsuggest-override -DHAVE_PEERCRED   -o CMakeFiles/cmTC_4ad9f.dir/src.cxx.o -c /dev/shm/build/bb-11.6-MDEV-32887-vector/CMakeFiles/CMakeTmp/src.cxx
      /dev/shm/build/bb-11.6-MDEV-32887-vector/CMakeFiles/CMakeTmp/src.cxx:1: error: "_GNU_SOURCE" redefined [-Werror]
          1 | #define _GNU_SOURCE
            |
      <command-line>: note: this is the location of the previous definition
      cc1plus: all warnings being treated as errors
      make[1]: *** [CMakeFiles/cmTC_4ad9f.dir/build.make:66: CMakeFiles/cmTC_4ad9f.dir/src.cxx.o] Error 1
      make[1]: Leaving directory '/dev/shm/build/bb-11.6-MDEV-32887-vector/CMakeFiles/CMakeTmp'
      make: *** [Makefile:121: cmTC_4ad9f/fast] Error 2
       
       
      Source file was:
      #define _GNU_SOURCE
      #include <sys/socket.h>
      int main() {
        struct ucred cred;
        getsockopt(0, SOL_SOCKET, SO_PEERCRED, &cred, 0);
      }
      

      Without -DMYSQL_MAINTAINER_MODE=ERR that check passes with a warning:

      Performing C++ SOURCE FILE Test HAVE_PEERCRED succeeded with the following output:
      Change Dir: /dev/shm/build/bb-11.6-MDEV-32887-vector/CMakeFiles/CMakeTmp
       
      Run Build Command(s):/usr/bin/make cmTC_00c33/fast && /usr/bin/make -f CMakeFiles/cmTC_00c33.dir/build.make CMakeFiles/cmTC_00c33.dir/build
      make[1]: Entering directory '/dev/shm/build/bb-11.6-MDEV-32887-vector/CMakeFiles/CMakeTmp'
      Building CXX object CMakeFiles/cmTC_00c33.dir/src.cxx.o
      /usr/bin/c++    -pie -fPIC -fstack-protector --param=ssp-buffer-size=4 -fPIC -DHAVE_PEERCRED   -o CMakeFiles/cmTC_00c33.dir/src.cxx.o -c /dev/shm/build/bb-11.6-MDEV-32887-vector/CMakeFiles/CMakeTmp/src.cxx
      /dev/shm/build/bb-11.6-MDEV-32887-vector/CMakeFiles/CMakeTmp/src.cxx:1: warning: "_GNU_SOURCE" redefined
          1 | #define _GNU_SOURCE
            |
      <command-line>: note: this is the location of the previous definition
      Linking CXX executable cmTC_00c33
      /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_00c33.dir/link.txt --verbose=1
      /usr/bin/c++   -pie -fPIC -fstack-protector --param=ssp-buffer-size=4 -fPIC -DHAVE_PEERCRED    -rdynamic CMakeFiles/cmTC_00c33.dir/src.cxx.o  -o cmTC_00c33
      make[1]: Leaving directory '/dev/shm/build/bb-11.6-MDEV-32887-vector/CMakeFiles/CMakeTmp'
       
       
      Source file was:
      #define _GNU_SOURCE
      #include <sys/socket.h>
      int main() {
        struct ucred cred;
        getsockopt(0, SOL_SOCKET, SO_PEERCRED, &cred, 0);
      }
      

      Attachments

        Issue Links

          Activity

            People

              svoj Sergey Vojtovich
              svoj Sergey Vojtovich
              Votes:
              0 Vote for this issue
              Watchers:
              3 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.