Tuesday, March 26, 2013

Cpanel update failure during updatenow

We were getting the following error when the system runs the automatic update process (/usr/local/cpanel/scripts/upcp):

[20130325.005122] Testing if the newly downloaded RPMS can be installed without conflict
[20130325.005122] Testing RPM transaction
[20130325.005123] error: Failed dependencies:
[20130325.005123] MySQL conflicts with mysql-5.0.45-7.el5.i386
[20130325.005123] W Exit Code: 254
[20130325.005123] ***** FATAL: Test install failed: error: Failed dependencies:
[20130325.005123] MySQL conflicts with mysql-5.0.45-7.el5.i386
[20130325.005123] The Administrator will be notified to review this output when this script completes
[20130325.005123] ***** FATAL: Error testing if the RPMs will install: Died at /usr/local/cpanel/scripts/updatenow.static line 12520.
[20130325.005123] see http://go.cpanel.net/rpmcheckfailed for more information
[20130325.005123] The Administrator will be notified to review this output when this script completes
[20130325.005123] E Detected events which require user notification during updatenow. Will send iContact the log


Following the instructions listed here: http://go.cpanel.net/rpmcheckfailed

We find that exact error received.


 However, it says to remove the rogue RPM:

root@myserver [/etc/yum.repos.d]# rpm -qa|grep mysql-5
mysql-5.0.45-7.el5


My issue is this may remove files that are used in production right now.   The cPanel MySQL RPM's use the same file names, as the stock mysql, which should not have been installed in the first place.
root@myserver [/etc/yum.repos.d]# rpm -ql mysql-5.0.45-7.el5
/etc/ld.so.conf.d/mysql-i386.conf
/etc/my.cnf
/usr/bin/msql2mysql
/usr/bin/my_print_defaults
/usr/bin/mysql
/usr/bin/mysql_config
/usr/bin/mysql_find_rows
/usr/bin/mysql_tableinfo
/usr/bin/mysql_waitpid
/usr/bin/mysqlaccess
/usr/bin/mysqladmin
/usr/bin/mysqlbinlog
/usr/bin/mysqlcheck
/usr/bin/mysqldump
/usr/bin/mysqlimport
/usr/bin/mysqlshow
/usr/lib/mysql
/usr/lib/mysql/libmysqlclient.so.15
/usr/lib/mysql/libmysqlclient.so.15.0.0
/usr/lib/mysql/libmysqlclient_r.so.15
/usr/lib/mysql/libmysqlclient_r.so.15.0.0
.....extra lines cut....


In order to resolve this cPanel support suggested running:

rpm -e --nodeps --justdb mysql-5.0.45-7.el5.i386
If done correctly, it will just drop you back to the prompt. Then try your update again.  
What the above command does is not actually erase any RPM or dependencies from your server. It just hides the installed RPM from the RPM database so that the cPanel updater doesn't see it and won't have a conflict with it when it goes to install the proper version of MySQL that it wants to install.


Thanks cPanel support, as always you guys are great!

1 comment:

Followers