deferred-leveldown

For handling delayed-open on LevelDOWN compatible libraries

DeferredLevelDOWN

A mock LevelDOWN implementation that queues operations while a real LevelDOWN instance is being opened.

DeferredLevelDOWN implements the basic AbstractLevelDOWN API so it can be used as a drop-in replacement where LevelDOWN is needed.

put(), get(), del() and batch() operations are all queued and kept in memory until a new LevelDOWN-compatible object can be supplied.

The setDb(db) method is used to supply a new LevelDOWN object. Once received, all queued operations are replayed against that object, in order.

batch() operations will all be replayed as the array form. Chained-batch operations are converted before being stored.

DeferredLevelDOWN is an OPEN Open Source Project. This means that:

Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.

See the CONTRIBUTING.md file for more details.

DeferredLevelDOWN is only possible due to the excellent work of the following contributors:

Rod VaggGitHub/rvaggTwitter/@rvagg
John ChesleyGitHub/cheslesTwitter/@chesles
Jake VerbatenGitHub/raynosTwitter/@raynos2
Dominic TarrGitHub/dominictarrTwitter/@dominictarr
Max OgdenGitHub/maxogdenTwitter/@maxogden
Lars-Magnus SkogGitHub/ralphtheninjaTwitter/@ralphtheninja
David BjörklundGitHub/keslaTwitter/@david_bjorklund
Julian GruberGitHub/juliangruberTwitter/@juliangruber
Paolo FragomeniGitHub/hij1nxTwitter/@hij1nx
Anton WhalleyGitHub/No9Twitter/@antonwhalley
Matteo CollinaGitHub/mcollinaTwitter/@matteocollina
Pedro TeixeiraGitHub/pgteTwitter/@pgte
James HallidayGitHub/substackTwitter/@substack

License & copyright


Copyright (c) 2013-2015 DeferredLevelDOWN contributors (listed above).

DeferredLevelDOWN is licensed under the MIT license. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE.md file for more details.