5 #ifndef CVMFS_NFS_MAPS_LEVELDB_H_
6 #define CVMFS_NFS_MAPS_LEVELDB_H_
15 #include "leveldb/env.h"
35 virtual void SetInodeResidue(
unsigned residue_class,
unsigned remainder);
40 const std::string &leveldb_dir,
41 const uint64_t root_inode,
48 void (*
function)(
void*);
62 void Schedule(
void (*
function)(
void*),
void* arg);
96 #endif // CVMFS_NFS_MAPS_LEVELDB_H_
virtual bool GetPath(const uint64_t inode, PathString *path)
virtual void SetInodeResidue(unsigned residue_class, unsigned remainder)
const leveldb::FilterPolicy * filter_inode2path_
atomic_int32 num_bg_threads_
static NfsMapsLeveldb * Create(const std::string &leveldb_dir, const uint64_t root_inode, const bool rebuild, perf::Statistics *statistics)
uint64_t FindInode(const shash::Md5 &path)
virtual uint64_t GetInode(const PathString &path)
perf::Counter * n_db_added_
leveldb::DB * db_path2inode_
unsigned inode_residue_class_
void PutInode2Path(const uint64_t inode, const PathString &path)
ForkAwareEnv(NfsMapsLeveldb *maps)
static void * MainFakeThread(void *data)
virtual std::string GetStatistics()
leveldb::DB * db_inode2path_
leveldb::Cache * cache_path2inode_
unsigned inode_remainder_
void Schedule(void(*function)(void *), void *arg)
void PutPath2Inode(const shash::Md5 &path, const uint64_t inode)
virtual ~NfsMapsLeveldb()
void StartThread(void(*f)(void *), void *a)
void SleepForMicroseconds(int micros)
const leveldb::FilterPolicy * filter_path2inode_
ForkAwareEnv * fork_aware_env_
leveldb::Cache * cache_inode2path_