35 lines
1.2 KiB
Cython
35 lines
1.2 KiB
Cython
from libcpp cimport bool as cpp_bool
|
|
from libcpp.string cimport string
|
|
from libcpp.vector cimport vector
|
|
from libc.stdint cimport uint32_t
|
|
from libc.stdint cimport int64_t
|
|
from libc.stdint cimport uint64_t
|
|
|
|
from .status cimport Status
|
|
from .db cimport DB
|
|
from .env cimport Env
|
|
|
|
cdef extern from "rocksdb/utilities/backupable_db.h" namespace "rocksdb":
|
|
ctypedef uint32_t BackupID
|
|
|
|
cdef cppclass BackupableDBOptions:
|
|
BackupableDBOptions(const string& backup_dir)
|
|
|
|
cdef struct BackupInfo:
|
|
BackupID backup_id
|
|
int64_t timestamp
|
|
uint64_t size
|
|
|
|
cdef cppclass BackupEngine:
|
|
Status CreateNewBackup(DB*, cpp_bool) nogil except+
|
|
Status PurgeOldBackups(uint32_t) nogil except+
|
|
Status DeleteBackup(BackupID) nogil except+
|
|
void StopBackup() nogil except+
|
|
void GetBackupInfo(vector[BackupInfo]*) nogil except+
|
|
Status RestoreDBFromBackup(BackupID, string&, string&) nogil except+
|
|
Status RestoreDBFromLatestBackup(string&, string&) nogil except+
|
|
|
|
cdef Status BackupEngine_Open "rocksdb::BackupEngine::Open"(
|
|
Env*,
|
|
BackupableDBOptions&,
|
|
BackupEngine**)
|