QuickAnswer
by

Plesk 修復が終了しない プロセスのスタック

Plesk 修復が終了しない プロセスのスタック

Plesk Obsidian Web Admin Edition
Plesk Obsidian 18.0.30 Update #2
CentOS Linux 7.8

ツールと設定 > 診断して修復

ファイルシステム診断で、プログレスアイコンのクルクルが止まらずスタックしているようだ。

資料

https://support.plesk.com/hc/en-us/articles/360020006474-Plesk-Repair-Kit-is-stuck-on-on-checking-repairing

https://support.plesk.com/hc/en-us/articles/360010324980

まずはバックアップ

とりあえず psa データベースはバックアップする

手順に従って調査と実施

以下の手順は必ずしも正しいとは限らない。

# plesk db "select * from ModuleSettings where value ='progress'\G"
*************************** 1. row ***************************
module_id: 9
     name: repair_status_FileSystem
    value: progress

# plesk db "select * from longtasks where status<>'done' and type='ext-repair-kit-task_repair'\G"
*************************** 1. row ***************************
      startTime: 2020-10-13 13:39:32
             id: 1417
           type: ext-repair-kit-task_repair
         status: error
statusProcessed: 0
        context: c4ca4238a0b923820dcc509a6f75849b
 progressStatus: error
 progressParams: a:2:{s:12:"errorMessage";s:77:"Invalid usage of pm_Settings::set. Value length 5000 expected, 7697 received.";s:9:"errorCode";i:0;}
    progressMax: 100
  progressValue: 0
     finishTime: 2020-10-13 13:39:51
            pid: 4386
     externalId: NULL

# plesk db "DELETE FROM ModuleSettings WHERE value = 'progress' AND name LIKE '%status_FileSystem%';"

# plesk db "DELETE FROM ModuleSettings WHERE value = 'progress' AND name = 'repair_status_PleskInstallation';"

# plesk db "DELETE FROM longtasks WHERE type='ext-repair-kit-task_repair'"

実施後にDBの修復

# plesk repair db

Checking the Plesk database using the native database server tools .. [OK]

Checking the structure of the Plesk database ........................ [OK]

Checking the consistency of the Plesk database

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1356 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Creating a database dump ........................................ [OK]
    A dump of the database was created before an attempt to repair the database: /var/lib/psa/dumps/mysql.preresolve.20201013-140417.dump.gz
    Removing unnecessary rows ....................................... [FIXED]

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1357 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Removing unnecessary rows ....................................... [FIXED]

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1360 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Removing unnecessary rows ....................................... [FIXED]

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1361 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Removing unnecessary rows ....................................... [FIXED]

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1362 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Removing unnecessary rows ....................................... [FIXED]

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1363 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Removing unnecessary rows ....................................... [FIXED]

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1411 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Removing unnecessary rows ....................................... [FIXED]

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1412 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Removing unnecessary rows ....................................... [FIXED]

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1415 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Removing unnecessary rows ....................................... [FIXED]

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1416 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Removing unnecessary rows ....................................... [FIXED]

  Inconsistency in the table 'longtaskparams' for the column task_id:
  No rows in the table 'longtasks' with id = 1417 (4 broken
  references) ....................................................... [WARNING]
  To see more details, run the command in the verbose mode: plesk repair db -verbose
  Remove unnecessary rows from the table 'longtaskparams'? [Y/n] y
    Removing unnecessary rows ....................................... [FIXED]

Error messages: 0; Warnings: 11; Errors resolved: 11

念のためもう一度DBの修復

# plesk repair db

Checking the Plesk database using the native database server tools .. [OK]

Checking the structure of the Plesk database ........................ [OK]

Checking the consistency of the Plesk database ...................... [OK]

Error messages: 0; Warnings: 0; Errors resolved: 0

#

なんらかのキャッシュが残っている?

まだクルクルの表示は止まらないのでキャッシュ削除

# service sw-engine stop
Stopping sw-engine (via systemctl):                        [  OK  ]

# rm -rf /var/lock/lmlib/container_locks

# rm -f /usr/local/psa/var/cache/*

# service sw-engine start
Starting sw-engine (via systemctl):                        [  OK  ]

#

正解はこれか

キャッシュが残っているのではなく、progress表示が消えていないだけか。

# plesk db "select * from ModuleSettings where name like '%repair_progress%' and value=1;"
+-----------+-----------------+-------+
| module_id | name            | value |
+-----------+-----------------+-------+
|         9 | repair_progress | 1     |
+-----------+-----------------+-------+

# plesk db "select * from longtasks where type='ext-repair-kit-task_repair'\G"

# plesk db "DELETE FROM ModuleSettings where name like '%repair_progress%' and value=1;"

# plesk db "select * from ModuleSettings where name like '%repair_progress%' and value=1;"

#

これでスタックとその表示は消え、正常に戻った模様。

CONTENTS