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

1.0 to 1.1 non-root upgrade issue - problem shows after a reboot, still using 1.0 ENV variables

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 1.0.11
    • 1.1.1
    • ?
    • None
    • non-root install, my test environment was Amazon AMI
    • 2017-20, 2017-21

    Description

      After a 1.0 non-root install was upgraded and then the server was rebooted, the following error occurred:

      mcsadmin
      /home/mariadb-user/mariadb/columnstore/bin/mcsadmin: error while loading shared libraries: libmariadb.so.3: cannot open shared object file: No such file or directory

      This is happening because the 1.0 ENV variables aren't cleanly removed as part of the 1.0 install and erase/upgrade process to 1.1.

      The main issue is 1.0 postConfigure also calls post-install, which messes up the saved .bashrc file. In 1.1, postConfigure was changed to NOT call post-install, so the problem is not in the 1.1 code.

      So a fix in 1.0.12 will need to be done, BUT there might need to be some code or workaround in 1.1 to prevent the problem when user upgrades from 1.0.11 or earlier

      -------------------------------------------------------------------------
      here is the scenario and why the problem occurred

      at 1.0.11 ami launch -

      .bashrc

      1. MariaDB Columnstore Non-Root Environment Variables
        export COLUMNSTORE_INSTALL_DIR=/home/mariadb-user/mariadb/columnstore
        export LD_LIBRARY_PATH=:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/mysql/lib/mysql:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/mysql/lib/mysql

      .bashrc.columnstore - is empty

      $ cat .bashrc.columnstoreSave

      1. .bashrc
      1. Source global definitions
        if [ -f /etc/bashrc ]; then
        . /etc/bashrc
        fi

      AFTER postConfigure is run:

      cat .bashrc.columnstoreSave // has the ENV and alias in there

      so when the pre-uninstall is run, the 1.0 ENV and alias will remain.

      ./mariadb/columnstore/bin/pre-uninstall --installdir=/home/mariadb-user/mariadb/columnstore

      cat .bashrc

      1. MariaDB Columnstore Non-Root Environment Variables
        export COLUMNSTORE_INSTALL_DIR=/home/mariadb-user/mariadb/columnstore
        export LD_LIBRARY_PATH=:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/mysql/lib/mysql:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/mysql/lib/mysql

      install mariadb 1.1 and run post-install

      1. MariaDB Columnstore Non-Root Environment Variables
        export COLUMNSTORE_INSTALL_DIR=/home/mariadb-user/mariadb/columnstore
        export LD_LIBRARY_PATH=:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/mysql/lib/mysql:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/mysql/lib/mysql
      2. MariaDB Columnstore Alias Commands
        #
        alias mcsmysql='/home/mariadb-user/mariadb/columnstore/mysql/bin/mysql --defaults-extra-file=/home/mariadb-user/mariadb/columnstore/mysql/my.cnf -u root'
        alias ma=/home/mariadb-user/mariadb/columnstore/bin/mcsadmin
        alias mcsadmin=/home/mariadb-user/mariadb/columnstore/bin/mcsadmin
        alias cpimport=/home/mariadb-user/mariadb/columnstore/bin/cpimport
        alias home='cd /home/mariadb-user/mariadb/columnstore'
        alias log='cd /var/log/mariadb/columnstore/'
        alias core='cd /var/log/mariadb/columnstore/corefiles'
        alias tmsg='tail -f /var/log/messages'
        alias tdebug='tail -f /var/log/mariadb/columnstore/debug.log'
        alias tinfo='tail -f /var/log/mariadb/columnstore/info.log'
        alias dbrm='cd /home/mariadb-user/mariadb/columnstore/data1/systemFiles/dbrm'
        alias module='cat /home/mariadb-user/mariadb/columnstore/local/module'

      run postconfigure with new ENV

      export COLUMNSTORE_INSTALL_DIR=/home/mariadb-user/mariadb/columnstore
      export LD_LIBRARY_PATH=:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/mysql/lib/mysql:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/mysql/lib/mysql:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/mysql/lib:/home/mariadb-user/mariadb/columnstore/lib:/home/mariadb-user/mariadb/columnstore/mysql/lib
      /home/mariadb-user/mariadb/columnstore/bin/postConfigure -i /home/mariadb-user/mariadb/columnstore

      successfully installs

      then reboot

      $ mcsadmin
      /home/mariadb-user/mariadb/columnstore/bin/mcsadmin: error while loading shared libraries: libmariadb.so.3: cannot open shared object file: No such file or directory

      Attachments

        Activity

          People

            dleeyh Daniel Lee (Inactive)
            hill David Hill (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.