Uploaded image for project: 'MariaDB ColumnStore'
  1. MariaDB ColumnStore
  2. MCOL-1020

On ovh data center servers, postConfigure crashed on upgrade

Details

    • Bug
    • Status: Closed (View Workflow)
    • Critical
    • Resolution: Fixed
    • 1.1.1
    • 1.1.2
    • installation
    • None
    • 2017-22

    Description

      Build tested: 1.1.1-1 CS 1.1.2-1 source build

      When running postConfigure, segmentation fault errors occurs.

      [root@cs-tst-01 bin]# ./postConfigure

      This is the MariaDB ColumnStore System Configuration and Installation tool.
      It will Configure the MariaDB ColumnStore System and will perform a Package
      Installation of all of the Servers within the System that is being configured.

      IMPORTANT: This tool should only be run on the Parent OAM Module
      which is a Performance Module, preferred Module #1

      Prompting instructions:

      Press 'enter' to accept a value in (), if available or
      Enter one of the options within [], if available, or
      Enter a new value

      A copy of the MariaDB ColumnStore Configuration file has been saved during Package install.
      It's Configured for a Multi-Server Install.
      You have an option of utilizing the configuration data from that file or starting
      with the MariaDB ColumnStore Configuration File that comes with the MariaDB ColumnStore Package.
      You will only want to utilize the old configuration data when performing the same
      type of install, i.e. Single or Multi-Server

      Do you want to utilize the configuration data from the saved copy? [y,n] > y
      Segmentation fault

      This error occurs when simply rerunning postConfigure, or on an upgrade.

      The same error did not occur in my VM environment.

      Attachments

        Activity

          crashing in postConfigure 1.1.1

          Program received signal SIGSEGV, Segmentation fault.
          0x00000b0f1aa21530 in main (argc=1, argv=0x7dac37a11dc8)
          at /home/builder/mariadb-columnstore-server/mariadb-columnstore-engine/oamapps/postConfigure/postConfigure.cpp:484

          (gdb) bt
          #0 0x00000b0f1aa21530 in main (argc=1, argv=0x7dac37a11dc8)
          at /home/builder/mariadb-columnstore-server/mariadb-columnstore-engine/oamapps/postConfigure/postConfigure.cpp:484
          (gdb) p ida
          No symbol "ida" in current context.
          (gdb) p ifa
          $1 = (ifaddrs *) 0xb0f1e101228
          (gdb) p *ifa
          $2 = {ifa_next = 0xb0f1e1012e0, ifa_name = 0xb0f1e1012cc "teql0", ifa_flags = 128, ifa_addr = 0x0,
          ifa_netmask = 0x0, ifa_ifu =

          {ifu_broadaddr = 0x0, ifu_dstaddr = 0x0}, ifa_data = 0xb0f1e101c94}
          (gdb) p &ifa
          Address requested for identifier "ifa" which is in register $rbx
          (gdb) p *ifa->ifa_next
          $3 = {ifa_next = 0xb0f1e101398, ifa_name = 0xb0f1e101384 "tunl0", ifa_flags = 128,
          ifa_addr = 0xb0f1e101318, ifa_netmask = 0x0, ifa_ifu = {ifu_broadaddr = 0xb0f1e101360, ifu_dstaddr = 0xb0f1e101360}, ifa_data = 0xb0f1e101cf0}
          (gdb) p *ifa->ifa_addr->sa_family
          Cannot access memory at address 0x0
          (gdb) p *ifa->ifa_addr
          Cannot access memory at address 0x0
          (gdb) p *ifa
          $4 = {ifa_next = 0xb0f1e1012e0, ifa_name = 0xb0f1e1012cc "teql0", ifa_flags = 128, ifa_addr = 0x0,
          ifa_netmask = 0x0, ifa_ifu = {ifu_broadaddr = 0x0, ifu_dstaddr = 0x0}

          , ifa_data = 0xb0f1e101c94}

          hill David Hill (Inactive) added a comment - crashing in postConfigure 1.1.1 Program received signal SIGSEGV, Segmentation fault. 0x00000b0f1aa21530 in main (argc=1, argv=0x7dac37a11dc8) at /home/builder/mariadb-columnstore-server/mariadb-columnstore-engine/oamapps/postConfigure/postConfigure.cpp:484 (gdb) bt #0 0x00000b0f1aa21530 in main (argc=1, argv=0x7dac37a11dc8) at /home/builder/mariadb-columnstore-server/mariadb-columnstore-engine/oamapps/postConfigure/postConfigure.cpp:484 (gdb) p ida No symbol "ida" in current context. (gdb) p ifa $1 = (ifaddrs *) 0xb0f1e101228 (gdb) p *ifa $2 = {ifa_next = 0xb0f1e1012e0, ifa_name = 0xb0f1e1012cc "teql0", ifa_flags = 128, ifa_addr = 0x0, ifa_netmask = 0x0, ifa_ifu = {ifu_broadaddr = 0x0, ifu_dstaddr = 0x0}, ifa_data = 0xb0f1e101c94} (gdb) p &ifa Address requested for identifier "ifa" which is in register $rbx (gdb) p *ifa->ifa_next $3 = {ifa_next = 0xb0f1e101398, ifa_name = 0xb0f1e101384 "tunl0", ifa_flags = 128, ifa_addr = 0xb0f1e101318, ifa_netmask = 0x0, ifa_ifu = {ifu_broadaddr = 0xb0f1e101360, ifu_dstaddr = 0xb0f1e101360}, ifa_data = 0xb0f1e101cf0} (gdb) p *ifa->ifa_addr->sa_family Cannot access memory at address 0x0 (gdb) p *ifa->ifa_addr Cannot access memory at address 0x0 (gdb) p *ifa $4 = {ifa_next = 0xb0f1e1012e0, ifa_name = 0xb0f1e1012cc "teql0", ifa_flags = 128, ifa_addr = 0x0, ifa_netmask = 0x0, ifa_ifu = {ifu_broadaddr = 0x0, ifu_dstaddr = 0x0} , ifa_data = 0xb0f1e101c94}

          I believe its crashing on a NULL pointer, so I will add in some checks for check for NULL pointer .

          hill David Hill (Inactive) added a comment - I believe its crashing on a NULL pointer, so I will add in some checks for check for NULL pointer .

          Added this check and testing on OVH system

          for (ifa = ifaddr, n = 0; ifa != NULL; ifa = ifa->ifa_next, n++) {
          if (ifa->ifa_addr == NULL)
          continue;

          hill David Hill (Inactive) added a comment - Added this check and testing on OVH system for (ifa = ifaddr, n = 0; ifa != NULL; ifa = ifa->ifa_next, n++) { if (ifa->ifa_addr == NULL) continue;

          test without fix on cs-tst-01.mariadb.com

          [root@cs-tst-01 columnstore]# cd bin
          [root@cs-tst-01 bin]# ./pre-uninstall

          Mariab Columnstore uninstall completed
          [root@cs-tst-01 bin]# ./post-install
          The next step is:

          If installing on a pm1 node:

          /usr/local/mariadb/columnstore/bin/postConfigure

          If installing on a non-pm1 using the non-distributed option:

          /usr/local/mariadb/columnstore/bin/columnstore start

          [root@cs-tst-01 bin]# ./postConfigure

          This is the MariaDB ColumnStore System Configuration and Installation tool.
          It will Configure the MariaDB ColumnStore System and will perform a Package
          Installation of all of the Servers within the System that is being configured.

          IMPORTANT: This tool should only be run on the Parent OAM Module
          which is a Performance Module, preferred Module #1

          Prompting instructions:

          Press 'enter' to accept a value in (), if available or
          Enter one of the options within [], if available, or
          Enter a new value

          A copy of the MariaDB ColumnStore Configuration file has been saved during Package install.
          It's Configured for a Multi-Server Install.
          You have an option of utilizing the configuration data from that file or starting
          with the MariaDB ColumnStore Configuration File that comes with the MariaDB ColumnStore Package.
          You will only want to utilize the old configuration data when performing the same
          type of install, i.e. Single or Multi-Server

          Do you want to utilize the configuration data from the saved copy? [y,n] > n
          Segmentation fault

          --------------------------------------------

          installed new build

          ./postConfigure

          This is the MariaDB ColumnStore System Configuration and Installation tool.
          It will Configure the MariaDB ColumnStore System and will perform a Package
          Installation of all of the Servers within the System that is being configured.

          IMPORTANT: This tool should only be run on the Parent OAM Module
          which is a Performance Module, preferred Module #1

          Prompting instructions:

          Press 'enter' to accept a value in (), if available or
          Enter one of the options within [], if available, or
          Enter a new value

          A copy of the MariaDB ColumnStore Configuration file has been saved during Package install.
          It's Configured for a Multi-Server Install.
          You have an option of utilizing the configuration data from that file or starting
          with the MariaDB ColumnStore Configuration File that comes with the MariaDB ColumnStore Package.
          You will only want to utilize the old configuration data when performing the same
          type of install, i.e. Single or Multi-Server

          Do you want to utilize the configuration data from the saved copy? [y,n] > y
          NOTE: my.cnf file was upgraded based on my.cnf.rpmsave

          ===== Setup System Server Type Configuration =====

          hill David Hill (Inactive) added a comment - test without fix on cs-tst-01.mariadb.com [root@cs-tst-01 columnstore] # cd bin [root@cs-tst-01 bin] # ./pre-uninstall Mariab Columnstore uninstall completed [root@cs-tst-01 bin] # ./post-install The next step is: If installing on a pm1 node: /usr/local/mariadb/columnstore/bin/postConfigure If installing on a non-pm1 using the non-distributed option: /usr/local/mariadb/columnstore/bin/columnstore start [root@cs-tst-01 bin] # ./postConfigure This is the MariaDB ColumnStore System Configuration and Installation tool. It will Configure the MariaDB ColumnStore System and will perform a Package Installation of all of the Servers within the System that is being configured. IMPORTANT: This tool should only be run on the Parent OAM Module which is a Performance Module, preferred Module #1 Prompting instructions: Press 'enter' to accept a value in (), if available or Enter one of the options within [], if available, or Enter a new value A copy of the MariaDB ColumnStore Configuration file has been saved during Package install. It's Configured for a Multi-Server Install. You have an option of utilizing the configuration data from that file or starting with the MariaDB ColumnStore Configuration File that comes with the MariaDB ColumnStore Package. You will only want to utilize the old configuration data when performing the same type of install, i.e. Single or Multi-Server Do you want to utilize the configuration data from the saved copy? [y,n] > n Segmentation fault -------------------------------------------- installed new build ./postConfigure This is the MariaDB ColumnStore System Configuration and Installation tool. It will Configure the MariaDB ColumnStore System and will perform a Package Installation of all of the Servers within the System that is being configured. IMPORTANT: This tool should only be run on the Parent OAM Module which is a Performance Module, preferred Module #1 Prompting instructions: Press 'enter' to accept a value in (), if available or Enter one of the options within [], if available, or Enter a new value A copy of the MariaDB ColumnStore Configuration file has been saved during Package install. It's Configured for a Multi-Server Install. You have an option of utilizing the configuration data from that file or starting with the MariaDB ColumnStore Configuration File that comes with the MariaDB ColumnStore Package. You will only want to utilize the old configuration data when performing the same type of install, i.e. Single or Multi-Server Do you want to utilize the configuration data from the saved copy? [y,n] > y NOTE: my.cnf file was upgraded based on my.cnf.rpmsave ===== Setup System Server Type Configuration =====

          fixed

          commit fda44955ea05e33f8bb6666df25b02926a17d6f8
          Author: david hill <david.hill@mariadb.com>
          Date: Fri Nov 10 14:13:27 2017 -0600

          MCOL-1020 - added checks to prevent crash

          oamapps/postConfigure/postConfigure.cpp

          hill David Hill (Inactive) added a comment - fixed commit fda44955ea05e33f8bb6666df25b02926a17d6f8 Author: david hill <david.hill@mariadb.com> Date: Fri Nov 10 14:13:27 2017 -0600 MCOL-1020 - added checks to prevent crash oamapps/postConfigure/postConfigure.cpp

          Build verified: 1.1.2 GitHub source

          /root/columnstore/mariadb-columnstore-server
          commit ed21e674cfd70db421957d0212ff7fc1835d06d5
          Author: david hill <david.hill@mariadb.com>
          Date: Mon Nov 6 08:41:53 2017 -0600

          Update README.md

          updated version

          /root/columnstore/mariadb-columnstore-server/mariadb-columnstore-engine
          commit fda44955ea05e33f8bb6666df25b02926a17d6f8
          Author: david hill <david.hill@mariadb.com>
          Date: Fri Nov 10 14:13:27 2017 -0600

          MCOL-1020 - added checks to prevent crash

          dleeyh Daniel Lee (Inactive) added a comment - Build verified: 1.1.2 GitHub source /root/columnstore/mariadb-columnstore-server commit ed21e674cfd70db421957d0212ff7fc1835d06d5 Author: david hill <david.hill@mariadb.com> Date: Mon Nov 6 08:41:53 2017 -0600 Update README.md updated version /root/columnstore/mariadb-columnstore-server/mariadb-columnstore-engine commit fda44955ea05e33f8bb6666df25b02926a17d6f8 Author: david hill <david.hill@mariadb.com> Date: Fri Nov 10 14:13:27 2017 -0600 MCOL-1020 - added checks to prevent crash

          People

            dleeyh Daniel Lee (Inactive)
            dleeyh Daniel Lee (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 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.