當 vpostgres 服務傳回錯誤狀態時,升級後指令碼會導致出現間歇性問題。

問題

當 vpostgres 服務報告處於不正確的狀態時,升級會在 /etc/bootstrap/postupdate.d/10-postgres 升級後指令碼處失敗。如果升級在 /etc/bootstrap/preupdate.d/10-postgres 指令碼執行時失敗,請按照下列順序逐一執行這三個指令碼,然後重新開始升級。

(1)

rm -rf /storage/db/psql-upgrade

(2)

cat > /etc/bootstrap/preupdate.d/00-00-00-fix-psql-restart << "EOF"
   #!/bin/sh

   cat >> /usr/lib/vmware-bootstrap-vrva-base/psql.inc << "EOF"

   function psql_restart () {
      echo 'Restarting PostgreSQL server..'
      service ${psql_service} stop > /dev/null
      service ${psql_service} start
      echo 'restart_psql finished'
   }
  EOF

(3)

chmod 700 /etc/bootstrap/preupdate.d/00-00-00-fix-psql-restart