lbry-rocksdb/rocksdb/db.pxd

145 lines
4.4 KiB
Cython
Raw Normal View History

2014-01-13 19:52:22 +01:00
cimport options
from libc.stdint cimport uint64_t
from status cimport Status
from libcpp cimport bool as cpp_bool
from libcpp.string cimport string
from libcpp.vector cimport vector
from slice_ cimport Slice
from snapshot cimport Snapshot
from iterator cimport Iterator
cdef extern from "rocksdb/write_batch.h" namespace "rocksdb":
cdef cppclass WriteBatch:
WriteBatch() nogil except+
WriteBatch(string) nogil except+
void Put(const Slice&, const Slice&) nogil except+
void Merge(const Slice&, const Slice&) nogil except+
void Delete(const Slice&) nogil except+
void PutLogData(const Slice&) nogil except+
void Clear() nogil except+
const string& Data() nogil except+
int Count() nogil except+
2014-01-13 19:52:22 +01:00
cdef extern from "cpp/write_batch_iter_helper.hpp" namespace "py_rocks":
cdef enum BatchItemOp "RecordItemsHandler::Optype":
BatchItemOpPut "py_rocks::RecordItemsHandler::Optype::PutRecord"
BatchItemOpMerge "py_rocks::RecordItemsHandler::Optype::MergeRecord"
BatchItemOpDelte "py_rocks::RecordItemsHandler::Optype::DeleteRecord"
cdef cppclass BatchItem "py_rocks::RecordItemsHandler::BatchItem":
BatchItemOp op
Slice key
Slice value
Status get_batch_items(WriteBatch* batch, vector[BatchItem]* items)
2014-01-13 19:52:22 +01:00
cdef extern from "rocksdb/db.h" namespace "rocksdb":
ctypedef uint64_t SequenceNumber
cdef struct LiveFileMetaData:
string name
int level
2015-04-12 14:09:02 +02:00
uint64_t size
2014-01-13 19:52:22 +01:00
string smallestkey
string largestkey
SequenceNumber smallest_seqno
SequenceNumber largest_seqno
cdef cppclass Range:
Range(const Slice&, const Slice&)
cdef cppclass DB:
Status Put(
const options.WriteOptions&,
const Slice&,
const Slice&) nogil except+
2014-01-13 19:52:22 +01:00
Status Delete(
const options.WriteOptions&,
const Slice&) nogil except+
2014-01-13 19:52:22 +01:00
Status Merge(
const options.WriteOptions&,
const Slice&,
const Slice&) nogil except+
2014-01-13 19:52:22 +01:00
Status Write(
const options.WriteOptions&,
WriteBatch*) nogil except+
2014-01-13 19:52:22 +01:00
Status Get(
const options.ReadOptions&,
const Slice&,
string*) nogil except+
2014-01-13 19:52:22 +01:00
vector[Status] MultiGet(
const options.ReadOptions&,
const vector[Slice]&,
vector[string]*) nogil except+
2014-01-13 19:52:22 +01:00
cpp_bool KeyMayExist(
const options.ReadOptions&,
Slice&,
string*,
cpp_bool*) nogil except+
2014-01-13 19:52:22 +01:00
cpp_bool KeyMayExist(
const options.ReadOptions&,
Slice&,
string*) nogil except+
2014-01-13 19:52:22 +01:00
Iterator* NewIterator(
const options.ReadOptions&) nogil except+
2014-01-13 19:52:22 +01:00
const Snapshot* GetSnapshot() nogil except+
2014-01-13 19:52:22 +01:00
void ReleaseSnapshot(const Snapshot*) nogil except+
2014-01-13 19:52:22 +01:00
cpp_bool GetProperty(
const Slice&,
string*) nogil except+
2014-01-13 19:52:22 +01:00
void GetApproximateSizes(
const Range*
int,
uint64_t*) nogil except+
2014-01-13 19:52:22 +01:00
Status CompactRange(
2014-01-13 19:52:22 +01:00
const Slice*,
const Slice*,
cpp_bool,
int) nogil except+
2014-01-13 19:52:22 +01:00
int NumberLevels() nogil except+
int MaxMemCompactionLevel() nogil except+
int Level0StopWriteTrigger() nogil except+
const string& GetName() nogil except+
const options.Options& GetOptions() nogil except+
Status Flush(const options.FlushOptions&) nogil except+
Status DisableFileDeletions() nogil except+
Status EnableFileDeletions() nogil except+
2014-01-13 19:52:22 +01:00
# TODO: Status GetSortedWalFiles(VectorLogPtr& files)
# TODO: SequenceNumber GetLatestSequenceNumber()
# TODO: Status GetUpdatesSince(
# SequenceNumber seq_number,
# unique_ptr[TransactionLogIterator]*)
Status DeleteFile(string) nogil except+
void GetLiveFilesMetaData(vector[LiveFileMetaData]*) nogil except+
2014-01-13 19:52:22 +01:00
cdef Status DB_Open "rocksdb::DB::Open"(
const options.Options&,
const string&,
DB**) nogil except+
2014-01-13 19:52:22 +01:00
cdef Status DB_OpenForReadOnly "rocksdb::DB::OpenForReadOnly"(
const options.Options&,
const string&,
DB**,
cpp_bool) nogil except+
2015-08-15 16:34:35 +02:00
cdef Status RepairDB(const string& dbname, const options.Options&)