You've already forked pgbackrest
mirror of
https://github.com/pgbackrest/pgbackrest.git
synced 2026-05-22 10:15:16 +02:00
Add backup size completed/total to info command JSON output.
This allows for backup progress to be monitored by external processes, whereas before backup progress was only available via text output.
This commit is contained in:
@@ -1025,7 +1025,11 @@ testRun(void)
|
||||
{
|
||||
lockInit(cfgOptionStr(cfgOptLockPath), STRDEF("999-ffffffff"), STRDEF("stanza2"), lockTypeBackup);
|
||||
TEST_RESULT_INT_NE(lockAcquireP(), -1, "create backup/expire lock");
|
||||
TEST_RESULT_VOID(lockWriteDataP(lockTypeBackup, .percentComplete = VARUINT(4545)), "write lock data");
|
||||
TEST_RESULT_VOID(
|
||||
lockWriteDataP(
|
||||
lockTypeBackup, .percentComplete = VARUINT(4545), .sizeComplete = VARUINT64(1435765),
|
||||
.size = VARUINT64(3159000)),
|
||||
"write lock data");
|
||||
|
||||
// Notify parent that lock has been acquired
|
||||
HRN_FORK_CHILD_NOTIFY_PUT();
|
||||
@@ -1365,7 +1369,7 @@ testRun(void)
|
||||
"],"
|
||||
"\"status\":{"
|
||||
"\"code\":4,"
|
||||
"\"lock\":{\"backup\":{\"held\":true}},"
|
||||
"\"lock\":{\"backup\":{\"held\":true,\"size\":3159000,\"size-cplt\":1435765}},"
|
||||
"\"message\":\"different across repos\""
|
||||
"}"
|
||||
"},"
|
||||
|
||||
@@ -224,21 +224,30 @@ testRun(void)
|
||||
TEST_RESULT_PTR(
|
||||
lockReadFileData(backupLockFile, lockLocal.file[lockTypeBackup].fd).percentComplete, NULL, "verify percentComplete");
|
||||
|
||||
TEST_RESULT_VOID(lockWriteDataP(lockTypeBackup, .percentComplete = VARUINT(5555)), "write lock data");
|
||||
THROW_ON_SYS_ERROR_FMT(
|
||||
lseek(lockLocal.file[lockTypeBackup].fd, 0, SEEK_SET) == -1, FileOpenError, STORAGE_ERROR_READ_SEEK, (uint64_t)0,
|
||||
strZ(lockLocal.file[lockTypeBackup].name));
|
||||
TEST_RESULT_UINT(
|
||||
varUInt(lockReadFileData(backupLockFile, lockLocal.file[lockTypeBackup].fd).percentComplete), 5555,
|
||||
"verify percentComplete");
|
||||
TEST_RESULT_VOID(
|
||||
lockWriteDataP(
|
||||
lockTypeBackup, .percentComplete = VARUINT(5555), .sizeComplete = VARUINT64(1754824), .size = VARUINT64(3159000)),
|
||||
"write lock data");
|
||||
|
||||
TEST_RESULT_VOID(lockWriteDataP(lockTypeBackup, .percentComplete = VARUINT(8888)), "write lock data");
|
||||
THROW_ON_SYS_ERROR_FMT(
|
||||
lseek(lockLocal.file[lockTypeBackup].fd, 0, SEEK_SET) == -1, FileOpenError, STORAGE_ERROR_READ_SEEK, (uint64_t)0,
|
||||
strZ(lockLocal.file[lockTypeBackup].name));
|
||||
TEST_RESULT_UINT(
|
||||
varUInt(lockReadFileData(backupLockFile, lockLocal.file[lockTypeBackup].fd).percentComplete), 8888,
|
||||
"verify percentComplete");
|
||||
LockData lockDataResult = lockReadFileData(backupLockFile, lockLocal.file[lockTypeBackup].fd);
|
||||
TEST_RESULT_UINT(varUInt(lockDataResult.percentComplete), 5555, "verify percentComplete");
|
||||
TEST_RESULT_UINT(varUInt64(lockDataResult.sizeComplete), 1754824, "verify sizeProgress");
|
||||
TEST_RESULT_UINT(varUInt64(lockDataResult.size), 3159000, "verify sizeTotal");
|
||||
|
||||
TEST_RESULT_VOID(
|
||||
lockWriteDataP(
|
||||
lockTypeBackup, .percentComplete = VARUINT(8888), .sizeComplete = VARUINT64(2807719), .size = VARUINT64(3159000)),
|
||||
"write lock data");
|
||||
THROW_ON_SYS_ERROR_FMT(
|
||||
lseek(lockLocal.file[lockTypeBackup].fd, 0, SEEK_SET) == -1, FileOpenError, STORAGE_ERROR_READ_SEEK, (uint64_t)0,
|
||||
strZ(lockLocal.file[lockTypeBackup].name));
|
||||
lockDataResult = lockReadFileData(backupLockFile, lockLocal.file[lockTypeBackup].fd);
|
||||
TEST_RESULT_UINT(varUInt(lockDataResult.percentComplete), 8888, "verify percentComplete");
|
||||
TEST_RESULT_UINT(varUInt64(lockDataResult.sizeComplete), 2807719, "verify sizeProgress");
|
||||
TEST_RESULT_UINT(varUInt64(lockDataResult.size), 3159000, "verify sizeTotal");
|
||||
|
||||
TEST_ERROR(
|
||||
lockAcquireP(.returnOnNoLock = true), AssertError,
|
||||
|
||||
Reference in New Issue
Block a user