-
Notifications
You must be signed in to change notification settings - Fork 34
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
status? #131
Comments
Benoit, it is close but not quite there yet. The positives:
There are a few things still needed before I can say release 1.0 is ready:
Currently, the only target I have for releasing it is to be ready for Riak 3.0, and Riak 3.0 is not likely to be out until Autumn 2018 at the earliest. However, if there was broader interest in using it outside of Riak I could potentially do the necessary work to declare 1.0 for June 2018. Let me know if you'd like me to push forward more aggressively to make it release ready. Are you thinking of comparing leveled against your work on rocksdb? |
@martinsumner I discussed with some people about having a backend in erlang for the storage of barrel instead of using a nif like my rocksdb binding. leveled is interresting on that purpose :) I will try and report but any tagged release would be cool of course. |
Would love to introduce leveled to the Elixir community, any moves to improve compatibility would be much appreciated. Happy to help with any resources I can bring to the table. |
Including writing an Elixir compatibility layer/wrapper. |
Are there obvious barriers to Elixir compatibility at the moment - anything you want me to look at? |
I think I did a pull request a while back but haven't been near it since.
I'll create a poc project first to bootstrap.
…On Sun, 29 Apr 2018, 13:19 Martin Sumner, ***@***.***> wrote:
Are there obvious barriers to Elixir compatibility at the moment -
anything you want me to look at?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#131 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/Aego9h5JUZLiXMIfADBNjutilpVwEPMLks5tta_BgaJpZM4TrfW->
.
|
Just a note that It is tested up to OTP19 only at the moment. I've not done anything yet to tackle OTP20. |
As an aside on the OTP20 thing. It is compatible with OTP20, other than the deprecation warnings over gen_fsm. Interestingly, the ct tests run about 30% faster in OTP20, so there does appear to be some real advantages with moving forward with releases. The two FSMs are leveled_cdb and leveled_sst (basically the two modules that actually write to disk). I may simply convert these to gen_server to get round the deprecation of the FSM. |
OTP21 works in that it will pass all eunit and ct tests. However dialyzer isn't happy. There are two places where the function output spec is either an atom or some other Erlang object type - and in bot these places, dialyzer acts as if only the atom can be the result: https://github.com/martinsumner/leveled/blob/master/src/leveled_codec.erl#L649-L672 Dialyzer is happy with this in OTP 20, but in OTP 21:
Most interesting is this line in leveled_codec - |
My fault, not dialyzer (as always). OTP 21 fixes a dialyzer bug where use of '|' could mask issues. The non-atom part of the '|' is wrong in both cases: The first element in the tuple emitted by parse_date is a list() not a binary(). The output of key_lookup if not 'false' is a manifest owner, not a manifest entry. |
This was thrown up in OTP 21 - due to this fix erlang/otp#1722 |
Just a note, that leveled is now being subject to extensive property-based testing. No doubt this will throw up some issues, as property-based testing always does - but once these are resolved we should be ready to tag 1.0 |
The first round of property-based testing is complete. This came back clean, but a number of bugs have been thrown up by further testing and code analysis in parallel - in particular related to handling data corruption and loss of data from disk being handled alongside multiple stop/starts of the store. These detected bugs have now been resolved. I've tagged a release candidate v0.9.0, with a target said for a 1.0 release at the end of October. |
@martinsumner maybe you can put a release on hex.pm also. |
bump ^^ :) |
Sorry. I hear you. I have tasks to tag this and get it fully released as part of Riak Release 2.9. Sorry, I know I've promised this before. It is on my list! |
closing the issue. Sorry for the delay to take care of it i've been side tracked :( Thanks for all the work done :) I will let you know when the project i'm working with will be online :) |
What is the current status of leveled? Can it start to be used in small prods? Is there any release planned soon?
The text was updated successfully, but these errors were encountered: