Snapchat / KeyDB

A Multithreaded Fork of Redis
https://keydb.dev
BSD 3-Clause "New" or "Revised" License
11.49k stars 578 forks source link

Allow to use system provided rocksdb #551

Open chenrui333 opened 1 year ago

chenrui333 commented 1 year ago

Right now, keydb build is hard linked to the vendored rocksdb, I wonder if it is a good idea to use a system provided rocksdb to ease the build/installation.

https://github.com/Snapchat/KeyDB/blob/c3343ddbd753cdc28638de92b6fa1a51f2ad1d78/src/Makefile#L75-L81

https://github.com/Snapchat/KeyDB/blob/c3343ddbd753cdc28638de92b6fa1a51f2ad1d78/src/Makefile#L440

relates to https://github.com/Homebrew/homebrew-core/pull/121287

msotheeswaran-sc commented 1 year ago

The vendored rocksdb was due to some compile fixes we needed for 6.3.2, we will go back to using rocksdb as a submodule and attempt to stay up to date with the latest release of rocksdb going forward. We can add optional system provided rocksdb once we are stable with latest rocksdb.

chenrui333 commented 1 year ago

We can add optional system provided rocksdb once we are stable with latest rocksdb.

yeah, that is what I aim for. this would save build/installation time.

chenrui333 commented 1 year ago

homebrew side kept the rocksdb release fairly up to date, I assume it would be the same for other package managers, so it would be definitely good to add the option of using the system provided rocksdb :)

guillemj commented 7 months ago

This is now implemented in git main, you can use USE_SYSTEM_ROCKSDB=yes to avoid using the vendored dependency. So I guess this can be closed?