Applicable to:
- Plesk for Linux
Symptoms
-
Pressing [change login settings] in WP Toolkit returns an error:
PLESK_ERROR: Internal error:
Unable to find row with id in smb_apsMetas table. -
These messages are logged to
/var/log/plesk/panel.log
with SQL query debug logs enabled:CONFIG_TEXT: [2018-05-19 00:25:22] DEBUG [dbquery] [72] SQL: SELECT `smb_apsInstances`.* FROM `smb_apsInstances` WHERE (((`smb_apsInstances`.`id` = 29)))
[2018-05-19 00:25:22] DEBUG [dbquery] [72] END: 0.00771 sec
[2018-05-19 00:25:22] ERR [panel] Unable to find row with id in smb_apsMetas table.:
Cause
Plesk database inconsistency.
Resolution
-
Connect to the server over SSH
-
Back up the
psa
database# plesk db dump psa > backup.sql
-
Access MariaDB
# plesk db
-
Check these entries in
/var/log/plesk/panel.log
with the ID from the SQL debug logsMYSQL_LIN: SELECT * FROM smb_apsInstances WHERE id=29;
+----+-----------------+-----------+--------+---------------------------+---------------------------+
| id | parentContextId | contextId | metaId | uuid | registryResourceId |
+----+-----------------+-----------+--------+---------------------------+---------------------------+
| 29 | 36 | 41 | 12 | a3133579-...-1ef4c1dfbdb3 | 8e786998-...-03ae740b6c54 |
+----+-----------------+-----------+--------+---------------------------+---------------------------+
1 row in set (0.00 sec)MYSQL_LIN: SELECT * FROM smb_apsMetas WHERE id=12;
+----+-----------+-----------+----------------------------------------------+-------+-----------+
| id | name | serviceId | xpath | class | contextId |
+----+-----------+-----------+----------------------------------------------+-------+-----------+
| 12 | WordPress | wordpress | aps::aps12::http://wordpress.org/::wordpress | | 36 |
+----+-----------+-----------+----------------------------------------------+-------+-----------+
1 row in set (0.00 sec)MYSQL_LIN: SELECT * FROM smb_apsContexts WHERE id=36;
+----+-------------+-----------+-------------------------+----------------------+
| id | contextType | packageId | requirementContextClass | requirementContextId |
+----+-------------+-----------+-------------------------+----------------------+
| 36 | 0 | 12 | NULL | NULL |
+----+-------------+-----------+-------------------------+----------------------+
1 row in set (0.00 sec) -
If some are missing, restore them manually from the last valid
psa
database dump in/var/lib/psa/dumps/
. For example:MYSQL_LIN: INSERT INTO smb_apsInstances VALUES (29,36,41,12,'a3133579-XXXX-XXXX-XXXX-1ef4c1dfbdb3','8e786998-XXXX-XXXX-XXXX-03ae740b6c54');
Query OK, 1 row affected (0.01 sec)MYSQL_LIN: INSERT INTO smb_apsMetas VALUES (12,'WordPress','wordpress','aps::aps12::http://wordpress.org/::wordpress','',36);
Query OK, 1 row affected (0.01 sec)MYSQL_LIN: INSERT INTO smb_apsContexts VALUES (36,0,12,NULL,NULL);
Query OK, 1 row affected (0.01 sec)
If the issue persists, follow these steps:
1. Back up the WP Toolkit SQLite database
# cp /usr/local/psa/var/modules/wp-toolkit/wp-toolkit.sqlite3{,.backup}
2. Fix the extra records from the WP Toolkit database with these commands
# sqlite3 /usr/local/psa/var/modules/wp-toolkit/wp-toolkit.sqlite3
SQLite version 3.7.17 2013-05-20 00:56:22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .mode column
sqlite> .headers ON
sqlite> select * from Instances where apsInstanceId=29;
id domainId path isIgnored apsInstanceId
---------- ---------- ---------- ---------- -------------
1 4 /httpdocs 0
sqlite> update Instances set apsInstanceId=NULL where id=1;
3. Go to Tools & Settings > WordPress and run Check for Updates
Comments
0 comments
Please sign in to leave a comment.