-
-
Notifications
You must be signed in to change notification settings - Fork 56
Conversation
deps/rocksdb/rocksdb.gyp
Outdated
@@ -176,189 +179,505 @@ | |||
}] | |||
] | |||
, 'sources': [ | |||
'rocksdb/db/auto_roll_logger.cc' | |||
# , 'rocksdb/cache/cache_bench.cc' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do these files no longer exist, or why did you comment them out?
And could you provide some context on the changes in general?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hm, this must have been my git stash apply
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
aah pardon me, yes they're not, I've updated git submodule with new RocksDB sources, it's latest version now
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Strange that github didn't actually picked the change, it should have been reflected in github somehow....
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vweevers Anyway what I've basically did was:
- Updated to latest version every submodule in the project (namely only RocksDB)
> git submodule foreach git pull origin master
- Updated rocksdb.gyp with all the changes from official RocksDB repo.
The code builds fine, but fails at runtime, the issue doesn't seem critical or complex (just need to figure out what kind of Symbol is missing)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To clarify, I meant to ask what the notable changes in RocksDB are. What benefits do we get from upgrading? Are there breaking changes? For example, reduced platform support, or not being able to read databases that were created with our current version, etc.
Ok, the error is finally reproduced, I have the same runtime error as one in Travis... |
@vweevers It seems that everything working, could you please validate? P.S.
|
@lu4 Do we really need to include those (I'm a co-maintainer of |
I'm afraid that in future it is possible that such issues may pileup and you would end up wasting half of the day searching for solution instead we just need to check whether it works now after half of the day was already spent on my behalf. There's another thing to it that I wanted to suggest. I was thinking about rolling out yet another interface to RocksDB. It's just RocksDB has much richer functionality, there's no reason to hide it under LevelDB interface. So I was thinking to providing a parallel TypeScript based interface to RocksDB. Not sure whether it is reasonable to do within this repo, but I think it's possible to support both. What's your thoughts on this? |
@vweevers as per including |
You already got it working, right? Tests are passing, and we have good coverage. Nice job! It sounds like you had a long day. We're almost there, just need to tweak it. I'm mainly concerned about build size, because we bundle prebuilt binaries in the npm package and shouldn't increase its size by too much. I'm gonna take a break though; I'll come back to this in a few days to review. Thanks! |
@vweevers I was looking through |
There is a reason: we follow the
The short answer is no, because the Level org is JavaScript-only. Typings are housed in DT, maintained by other folks. For background, see Level/community#16.
It's used to perform work in a libuv thread, to avoid blocking the main Node.js thread. |
@vweevers as per your request I've updated Every removed file from What I've also found that significant performance improvements are obtainable from using concurrent builds i.e. The provided work is my word of thank you for you personally, your help and the project you support. However with intent to improve this project I must provide the other part of the feedback I gathered while working with the code from this repo:
So as per list of points above I must conclude that I don't agree with practices, architectural approaches and core views expressed on this project. So I decided to create a project spinoff based on some of the work used from this repository (mainly project infrastructure). Just in case (with hope) if at some point the code below may become helpful for this project here are the the things I was able to pull together: And here is JS/TS bindings file In future I'm planning to cover full RocksDB interface with two versions of API (Low Level and High Level) and full Stay tuned :) |
Ok, it seems that not all of the fixes are in place, I will try to introduce fixes a bit later... |
I'm not sure whether you want a response. If you do, please open new issue(s), to avoid yak shaving. |
I cherry-picked and squashed the commits into #141 (and updated to RocksDB 6.17.3). |
No description provided.