Added a new DownloadResultsProcessor thread, which validates downloaded files and saves them to the target: pg_wal/<wal_name>.tmp -> pg_wal/<wal_name>.pghoard.prefetch.
Files with "prefetch" suffix can be copied to the destination without extra checks now.
Renaming prefetched WAL to target is carried out directly in the pghoard_postgres_command_go
changed items type for "pending_download_ops" dict from "dict" to "dataclass" (PendingDownloadOp)
[BF-2247]
We observed that the startup process was only using 60 to 80% of a CPU. This means that we’re not supplying WAL files fast enough or that the restore_command takes too long to complete.
The idea would be to bypass the HTTP-call needed to check if we have a WAL file present from the restore_command to the pghoard main process.
Changes:
pg_wal/<wal_name>.tmp -> pg_wal/<wal_name>.pghoard.prefetch
. Files with "prefetch" suffix can be copied to the destination without extra checks now.pghoard_postgres_command_go
[BF-2247]
We observed that the startup process was only using 60 to 80% of a CPU. This means that we’re not supplying WAL files fast enough or that the restore_command takes too long to complete. The idea would be to bypass the HTTP-call needed to check if we have a WAL file present from the
restore_command
to the pghoard main process.