| 55 | } |
| 56 | |
| 57 | static leveldb::Options GetOptions(size_t nCacheSize) |
| 58 | { |
| 59 | leveldb::Options options; |
| 60 | options.block_cache = leveldb::NewLRUCache(nCacheSize / 2); |
| 61 | options.write_buffer_size = nCacheSize / 4; // up to two write buffers may be held in memory simultaneously |
| 62 | options.filter_policy = leveldb::NewBloomFilterPolicy(10); |
| 63 | options.compression = leveldb::kNoCompression; |
| 64 | if (leveldb::kMajorVersion > 1 || (leveldb::kMajorVersion == 1 && leveldb::kMinorVersion >= 16)) { |
| 65 | // LevelDB versions before 1.16 consider short writes to be corruption. Only trigger error |
| 66 | // on corruption in later versions. |
| 67 | options.paranoid_checks = true; |
| 68 | } |
| 69 | SetMaxOpenFiles(&options); |
| 70 | return options; |
| 71 | } |
| 72 | |
| 73 | CLevelDBWrapper::CLevelDBWrapper(const boost::filesystem::path& path, size_t nCacheSize, bool fMemory, bool fWipe) |
| 74 | { |
no test coverage detected