| From: | Ronan Dunklau <ronan(dot)dunklau(at)aiven(dot)io> |
|---|---|
| To: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
| Subject: | Non-blocking archiver process |
| Date: | 2025-07-04 06:46:08 |
| Message-ID: | 2382367.ElGaqSPkdT@aivenlaptop |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hello,
We've noticed a behavior that seems surprising to us.
Since DROP DATABASE now waits for a ProcSignalBarrier, it can hang up
indefinitely if the archive_command hangs.
The reason for this is that the builtin archive module doesn't process any
interrupts while the archiving command is running, as it's run with a system()
call, blocking undefintely.
Before rushing on to implement a non-blocking archive library (perhaps using
popen or posix_spawn, while keeping other systems in mind), what unintended
consequences would it have to actually run the archive_command in a non-
blocking way, and checking interrupts while it runs ?
Thanks !
--
Ronan Dunklau
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Hannu Krosing | 2025-07-04 07:12:20 | Re: Adding pg_dump flag for parallel export to pipes |
| Previous Message | Dilip Kumar | 2025-07-04 06:31:24 | Re: Conflict detection for update_deleted in logical replication |