diff --git a/include/utilities/backupable_db.h b/include/utilities/backupable_db.h index b6eb139e7..ab3a1ed80 100644 --- a/include/utilities/backupable_db.h +++ b/include/utilities/backupable_db.h @@ -85,6 +85,9 @@ class BackupEngine { public: virtual ~BackupEngine() {} + static BackupEngine* NewBackupEngine(Env* db_env, + const BackupableDBOptions& options); + virtual Status CreateNewBackup(DB* db, bool flush_before_backup = false) = 0; virtual Status PurgeOldBackups(uint32_t num_backups_to_keep) = 0; virtual Status DeleteBackup(BackupID backup_id) = 0; @@ -100,9 +103,6 @@ class BackupEngine { virtual void DeleteBackupsNewerThan(uint64_t sequence_number) = 0; }; -extern BackupEngine* CreateNewBackupEngine(Env* db_env, - const BackupableDBOptions& options); - // Stack your DB with BackupableDB to be able to backup the DB class BackupableDB : public StackableDB { public: diff --git a/utilities/backupable/backupable_db.cc b/utilities/backupable/backupable_db.cc index d44fbb6ad..da225e22b 100644 --- a/utilities/backupable/backupable_db.cc +++ b/utilities/backupable/backupable_db.cc @@ -188,8 +188,8 @@ class BackupEngineImpl : public BackupEngine { static const size_t copy_file_buffer_size_ = 5 * 1024 * 1024LL; // 5MB }; -BackupEngine* CreateNewBackupEngine(Env* db_env, - const BackupableDBOptions& options) { +BackupEngine* BackupEngine::NewBackupEngine( + Env* db_env, const BackupableDBOptions& options) { return new BackupEngineImpl(db_env, options); }