Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
1.0.11
-
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
- 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
- .bashrc
- 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
- 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
- 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 - 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