[MDEV-22550] Upgrade to MariaDB 10.3.23 broke the cPanel Databases interface Created: 2020-05-13  Updated: 2020-07-08  Resolved: 2020-07-08

Status: Closed
Project: MariaDB Server
Component/s: Authentication and Privilege System
Affects Version/s: 10.3.23
Fix Version/s: N/A

Type: Bug Priority: Critical
Reporter: cPanel Senior Tech's Assignee: Rinat Ibragimov (Inactive)
Resolution: Won't Fix Votes: 0
Labels: None

Issue Links:
Relates
relates to MDEV-20076 SHOW GRANTS does not quote role names... Closed

 Description   
Details

After the update yesterday to MariaDB 10.3.23 (from 10.3.22), we have had a lot of reports of the cPanel Database page not working (in cPanel version 86). This appears related to the change recently made, because of MDEV-20076 ("SHOW GRANTS does not quote role names properly") / commit https://github.com/MariaDB/server/commit/fafb35ee51. This type of big change in a point release shouldn't happen.

The cPanel >> Databases page shows:

 
"The MySQL server is currently offline."
 
"Error encountered while fetching data: There is no such grant defined for user 'cpses_username' on host 'localhost' DBDISKUSED cpuser_user 0 DISKUSED 0 DB cpuser_user USER cpuser_db"

The following errors are shown in the cPanel error log at /usr/local/cpanel/logs/error_log:

 
[2020-05-12 23:36:14 -0500] warn [cpmysql] Error encountered while fetching data: There is no such grant defined for user 'cpses_username' on host 'localhost' at /usr/local/cpanel/Cpanel/DBAdmin.pm line 186, <STDIN> line 1.

 
Invalid grant string: GRANT USAGE ON *.* TO `cptech_db`@`localhost` IDENTIFIED BY PASSWORD '*redacted'

 
[2020-05-12 23:36:14 -0500] warn [cpanel] Cpanel::Wrap::send_cpwrapd_request adminbin Cpanel/cpmysql/DBCACHE: exit 11: namespace=[Cpanel] module=[cpmysql] function=[DBCACHE]: set error in context mysql: raw_response=[{"version":"2.4","action":"run","data":"Error encountered while fetching data: There is no such grant defined for user 'cpses_username' on host 'localhost'\nDBDISKUSED\tcptech_dbv\t0\nDISKUSED\t0\nDB\tcptech_dbv\nUSER\tcptech_db\n","timeout":0,"mode":"simple","status":1,"exit_code":2816,"error":1,"statusmsg":"adminbin Cpanel/cpmysql/DBCACHE: exit 11"}] at /usr/local/cpanel/Cpanel/Wrap.pm line 120, <$socket> line 1.

We are not advising customers to downgrade, as there were problems and the update has CVE fixes in them. Customers can upgrade to version 88 (CURRENT tier), but that is not our STABLE or RELEASE tier at this time.



 Comments   
Comment by Sergei Golubchik [ 2020-05-14 ]

I don't see how that commit could've caused the error

There is no such grant defined for user 'cpses_username' on host 'localhost'

What does cPanel do, parses the output of SHOW GRANTS like

/GRANT (.*?) ON (\.*?)\.(.*?) TO '(.*?)'@'(.*?)'/

?

Comment by cPanel Senior Tech's [ 2020-05-14 ]

The root cause of the issue is the show grants output unexpectedly changing its format during a minor update. We parsed the `` vs ‘’. This is done in various places.

We are hoping there is consideration from the MariaDB team, not to make big changes like this in point releases.

Comment by Oleksandr Byelkin [ 2020-07-01 ]

https://github.com/MariaDB/server/pull/1552#issuecomment-631749233

Comment by Oleksandr Byelkin [ 2020-07-08 ]

There was answer by Serg

Comment by Ian Gilfillan [ 2020-07-08 ]

Since this was handled on cPanel's side, and Sergei's GitHub comment suggests not to fix, can we close as wontfix?

Generated at Thu Feb 08 09:15:35 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.