-
Notifications
You must be signed in to change notification settings - Fork 95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fold in rocksdb libs (attempt 2) #2040
Open
chessai
wants to merge
317
commits into
master
Choose a base branch
from
chessai/fold-in-rocksdb-libs-attempt-2
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Unfortunately, there seems to be no other way to guarantee that the CStringLens are not GC'ed prematurely.
The trick is to use touchForeignPtr on the ByteString arguments' underlying ForeignPtr, which is what withForeignPtr does. Luckily, Data.ByteString.Internal is exported.
Also, drop custom env support, as it's not really useful here.
Note that this requires libleveldb 1.7
Instead of setting the 'fill_cache' option, 'set_verify_checksum' was called incorrectly using the 'fillCache' setting.
This commit introduces Database.LevelDB.Base, which is similar to the Database.LevelDB API, but without using resourcet/MonadResource and using plain MonadIO instead. The API of Database.LevelDB is kept as-is (the module now mostly re-exports functions from Database.LevelDB.Base with some extra type restrictions, i.e. MonadResource m).
This commit lifts the common code from iterKey and iterValue.
Fix build of 'features' example
So as to not pollute the namespace for plain 'cabal' (vs. 'cabal-dev') builds.
Bug: Fix 'fillCache' option setting
Conflicts: src/Database/LevelDB.hs
Probably not an issue, but not sure about scheduling semantics.
Add a Table abstraction replacing the Cas abstraction
Only include certain compiler flags if we're on x86-64
We can't control what C compiler the user has available, and `-Werror` effectively makes forward compatibility impossible. This is probably fixed in a newer RocksDB, but we haven't updated, so for now just live with what we have.
Change-Id: Ib9779b5ef7177e098eae70b72f6c49d076a0b26d
Change-Id: Id2743babf8f41ff4c31be5d4e80eee6bea5f3fc1
Change-Id: I2e59e2f14d85295fb2d66a7b7c44da60f4d6e611
Change-Id: I329c9135674a95571e2acea719180372e838ab89
Change-Id: I2f3df8e82b873399ecdfe50da0bfdc1264b1b4bb
Change-Id: I01abc5de30e169867b0aa4b5899d7d470cd404ca
Change-Id: If97cf3aecb8b931085dadf9f662af8e1879a01eb
…kadena Change-Id: I839a5ca98be58619da178143f279f546b2c84743
Change-Id: Iaf104394f2890d051e3fd5ebe97f22e4d2eff53f
Change-Id: I383c280122c6bf3a582c7469963483e503bb90c3
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.