paritytech / rust-rocksdb

rust wrapper for rocksdb
Apache License 2.0
15 stars 23 forks source link

Use cmake to build RocksDB #15

Closed andresilva closed 6 years ago

andresilva commented 6 years ago

Merge after #14.

Use CMake to build RocksDB. This makes sure that the build performs proper feature detection and uses the correct compiler flags. Also makes it easier for us to update RocksDB since we don't need to update our build to add/remove any new files.

andresilva commented 6 years ago

I tested that this works on macOS, linux and windows (added travis and appveyor builds). I built parity with this on linux and did a full sync on mainnet, didn't really notice any performance difference. Snapshot restore is slightly faster since roughly 10% of time was taken by RocksDB calculating CRC checksums and with this build it detects if the CPU has SSE4.2 and uses the CRC32 cpu instruction which is a lot faster.

andresilva commented 6 years ago

Rebased over master.