When running pgpSyncUsers on PGP Universal Server 2.12 you may receive an error on the screen and in the cluster logs. The error states that it cannot update or delete a record because of a foreign key constraint on one of the tables related to Whole Disk Encryption records.
Example of the error:
ERROR PGP.pgpSyncUsers[30178]: SyncAll::mergeTableRecords 1: merging records DBD::Pg::st execute failed: ERROR: insert or update on table "client_device" violates foreign key constraint "client_device_wdrt_uuid_fkey" DETAIL: Key (wdrt_uuid)=(6748f4bc-6199-4b7a-a4b3-aab54435876d) is not present in table "whole_disk_recovery_token". ERROR: insert or update on table "client_device" violates foreign key constraint "client_device_wdrt_uuid_fkey" DETAIL: Key (wdrt_uuid)=(6748f4bc-6199-4b7a-a4b3-aab54435876d) is not present in table "whole_disk_recovery_token".
This error can error if there is a schema issue preventing pgpSyncUsers from cleaning up these records and getting everything in sync prior to backing up the server and upgrading to a newer version of PGP Universal Server
Open up the pgpSync.properties file found in: /etc/ovid with vi:
vi /etc/pgpSync.properties
scroll down to where it says:
PGP.pgpSyncUsers.SchemaUpdater.Enabled = 0
PGP.pgpSyncUsers.SchemaUpdater.ReadOnly = 1
Change this to:
PGP.pgpSyncUsers.SchemaUpdater.Enabled = 1
PGP.pgpSyncUsers.SchemaUpdater.ReadOnly = 0
This enables the SchemaUpdater process to run and apply changes (if needed). Please keep in mind that any subsequent runs of pgpSyncUsers will have this feature disabled (set to 0) again. So if you wish to re-run pgpSyncUsers and you are getting the above errors again. Go back in and make sure that you have re enabled the SchemaUpdater process to run.
Applies To
PGP Universal Server 2.x (2.10 or newer)
pgp-cluster-utilities version 3.0 Build 4291 or newer
pgpSyncUsers utility with WDRT Sync enabled in Read/Write mode