1
0
mirror of https://github.com/pgbackrest/pgbackrest.git synced 2026-05-22 10:15:16 +02:00

Fixed an issue where the async archiver would not be started if archive-push did not have enough space to queue a new WAL segment.

This meant that the queue would never be cleared without manual intervention (such as calling archive-push directly). PostgreSQL now receives errors when there is not enough space to store new WAL segments but the async process will still be started so that space is eventually freed.

Reported by Jens Wilke.
This commit is contained in:
David Steele
2016-10-05 09:47:34 -04:00
parent 2a18674111
commit 5dc801d59d
5 changed files with 39 additions and 3 deletions
+4
View File
@@ -175,6 +175,10 @@ P00 DEBUG: Protocol::Protocol::protocolGet(): iRemoteIdx = <1>, oParam = [u
P00 DEBUG: Protocol::Protocol::protocolGet: create local protocol
P00 DEBUG: File->new(): oProtocol = [object], strBackupPath = [TEST_PATH]/db-master/repo, strDefaultFileMode = <0640>, strDefaultPathMode = <0750>, strStanza = db
P00 ERROR: [137]: stop file exists for all stanzas
P00 DEBUG: Archive->pushProcess: no fork on archive local for TESTING
P00 DEBUG: Archive->pushProcess: start async archive-push
P00 DEBUG: Common::Lock::lockAcquire(): bFailOnNoLock = false, bRemote = <false>, iProcessIdx = [undef], strLockType = archive-push
P00 ERROR: [137]: stop file exists for all stanzas
P00 DEBUG: Common::Exit::exitSafe(): iExitCode = [undef], oException = [object], strSignal = [undef]
P00 INFO: archive-push stop
P00 DEBUG: Protocol::Protocol::protocolDestroy(): bComplete = false, iRemoteIdx = [undef], strRemoteType = [undef]
+4
View File
@@ -181,6 +181,10 @@ P00 DEBUG: Protocol::Protocol::protocolGet(): iRemoteIdx = <1>, oParam = [u
P00 DEBUG: Protocol::Protocol::protocolGet: create local protocol
P00 DEBUG: File->new(): oProtocol = [object], strBackupPath = [TEST_PATH]/db-master/spool, strDefaultFileMode = <0640>, strDefaultPathMode = <0750>, strStanza = db
P00 ERROR: [137]: stop file exists for all stanzas
P00 DEBUG: Archive->pushProcess: no fork on archive local for TESTING
P00 DEBUG: Archive->pushProcess: start async archive-push
P00 DEBUG: Common::Lock::lockAcquire(): bFailOnNoLock = false, bRemote = <false>, iProcessIdx = [undef], strLockType = archive-push
P00 ERROR: [137]: stop file exists for all stanzas
P00 DEBUG: Common::Exit::exitSafe(): iExitCode = [undef], oException = [object], strSignal = [undef]
P00 INFO: archive-push stop
P00 DEBUG: Protocol::Protocol::protocolDestroy(): bComplete = false, iRemoteIdx = [undef], strRemoteType = [undef]