Port database backend to rocksdb to support warm-starting the server#24
Port database backend to rocksdb to support warm-starting the server#24gbrail merged 4 commits intoapigee-labs:masterfrom seatme:feature/rocksdb
Conversation
- Drop the printlns I was using during debugging - Don't destroy the options structure for the DB with it open. This is a sure route to seg faults. - Fix the length check on the readOneRange() call so it works correctly
|
I like the direction of this and it makes sense to me. But I'll need some time while I travel this week to look at it carefully and adapt things like the Docker build to it. |
|
While I love the idea of an "embedded build" for rocksdb support, in practice it seems to be a pain in the rear. But I want to make this a repeatable build, including Docker, before actually merging this. We have two choices:
I'm leaning toward the second, with something in the build process to warn people when they have the wrong version. |
|
We'd favor the second. We've already got a simple docker build going for it, as we always run in docker as well. |
|
Dealing with all the Docker stuff took a while and it was a busy week. But it looks good now and despite the more complex build it cleaned up a lot of code. Thanks! |
This is preparation for #6 which would let us get a consistent copy of the database using the rocksdb checkpoint mechanism.
This also brings in the dependency on gorocksdb.