mirror of
https://github.com/apple/foundationdb.git
synced 2025-06-01 18:56:00 +08:00
Really fix the stuck of backup
This commit is contained in:
parent
f0d0c863e6
commit
efbd01894d
@ -21,6 +21,7 @@
|
||||
#include "fdbclient/BackupAgent.actor.h"
|
||||
#include "fdbclient/BackupContainer.h"
|
||||
#include "fdbclient/DatabaseContext.h"
|
||||
#include "fdbclient/Knobs.h"
|
||||
#include "fdbclient/ManagementAPI.actor.h"
|
||||
#include "fdbclient/Status.h"
|
||||
#include "fdbclient/SystemData.h"
|
||||
@ -2127,8 +2128,8 @@ namespace fileBackup {
|
||||
}
|
||||
} else {
|
||||
// Skip mutation copy and erase backup mutations. Just check back periodically.
|
||||
Version scheduledVersion = tr->getReadVersion().get() + 10 * SERVER_KNOBS->VERSIONS_PER_SECOND;
|
||||
wait(success(BackupLogsDispatchTask::addTask(tr, taskBucket, task, 1, beginVersion, endVersion, TaskCompletionKey::noSignal(), Reference<TaskFuture>(), scheduledVersion)));
|
||||
Version scheduledVersion = tr->getReadVersion().get() + CLIENT_KNOBS->BACKUP_POLL_PROGRESS_SECONDS * CLIENT_KNOBS->VERSIONS_PER_SECOND;
|
||||
wait(success(BackupLogsDispatchTask::addTask(tr, taskBucket, task, 1, beginVersion, endVersion, TaskCompletionKey::signal(onDone), Reference<TaskFuture>(), scheduledVersion)));
|
||||
}
|
||||
|
||||
wait(taskBucket->finish(tr, task));
|
||||
|
@ -138,6 +138,8 @@ ClientKnobs::ClientKnobs(bool randomize) {
|
||||
init( BACKUP_COPY_TASKS, 90 );
|
||||
init( BACKUP_BLOCK_SIZE, LOG_RANGE_BLOCK_SIZE/10 );
|
||||
init( BACKUP_TASKS_PER_AGENT, 10 );
|
||||
init( BACKUP_POLL_PROGRESS_SECONDS, 10 );
|
||||
init( VERSIONS_PER_SECOND, 1e6 ); // Must be the same as SERVER_KNOBS->VERSIONS_PER_SECOND
|
||||
init( SIM_BACKUP_TASKS_PER_AGENT, 10 );
|
||||
init( BACKUP_RANGEFILE_BLOCK_SIZE, 1024 * 1024);
|
||||
init( BACKUP_LOGFILE_BLOCK_SIZE, 1024 * 1024);
|
||||
|
@ -139,6 +139,8 @@ public:
|
||||
int BACKUP_COPY_TASKS;
|
||||
int BACKUP_BLOCK_SIZE;
|
||||
int BACKUP_TASKS_PER_AGENT;
|
||||
int BACKUP_POLL_PROGRESS_SECONDS;
|
||||
int64_t VERSIONS_PER_SECOND; // Copy of SERVER_KNOBS, as we can't link with it
|
||||
int SIM_BACKUP_TASKS_PER_AGENT;
|
||||
int BACKUP_RANGEFILE_BLOCK_SIZE;
|
||||
int BACKUP_LOGFILE_BLOCK_SIZE;
|
||||
|
Loading…
x
Reference in New Issue
Block a user