@@ -3,6 +3,7 @@ import cython
33from libcpp.string cimport string
44from libcpp.deque cimport deque
55from libcpp.vector cimport vector
6+ from libcpp.map cimport map
67from cpython cimport bool as py_bool
78from libcpp cimport bool as cpp_bool
89from libc.stdint cimport uint32_t
@@ -2101,6 +2102,24 @@ cdef class DB(object):
21012102 else :
21022103 return None
21032104
2105+ # def get_map_property(self, prop, ColumnFamilyHandle column_family=None):
2106+ # cdef map[string, string] value
2107+ # cdef Slice c_prop = bytes_to_slice(prop)
2108+ # cdef cpp_bool ret = False
2109+ # cdef db.ColumnFamilyHandle* cf_handle = NULL
2110+ # if column_family:
2111+ # cf_handle = column_family.get_handle()
2112+ # else:
2113+ # cf_handle = self.db.DefaultColumnFamily()
2114+
2115+ # with nogil:
2116+ # ret = self.db.GetMapProperty(cf_handle, c_prop, cython.address(value))
2117+
2118+ # if ret:
2119+ # return value
2120+ # else:
2121+ # return None
2122+
21042123 def get_live_files_metadata (self ):
21052124 cdef vector[metadata.LiveFileMetaData] metadata
21062125
@@ -2259,6 +2278,18 @@ def repair_db(db_name, Options opts):
22592278 st = db.RepairDB(db_path, deref(opts.opts))
22602279 check_status(st)
22612280
2281+ # TODO Figure out API to add descriptors. See constructor which deals with vector of ColumnFamilyDescriptor
2282+ # def repair_db(db_name, Options opts, descriptors):
2283+ # cdef Status st
2284+ # cdef string db_path
2285+ # cdef vector[db.ColumnFamilyDescriptor] c_descriptors
2286+
2287+ # for d in descriptors:
2288+ # c_descriptors.push_back(<db.ColumnFamilyDescriptor>(d))
2289+
2290+ # db_path = path_to_string(db_name)
2291+ # st = db.RepairDB(db_path, deref(opts.opts), c_descriptors)
2292+ # check_status(st)
22622293
22632294def list_column_families (db_name , Options opts ):
22642295 cdef Status st
0 commit comments