multilevel-reconnected

this is a reconnecting and stream resuming multilevel client wrapper.

multilevel-reconnected

This is a reconnecting and stream resuming multilevel client wrapper. Right now it provides a more limited api with no sublevels but it can actually be used in long running server apps.

multilevel is a leveldb client wrapper. multilevel-reconnected wraps multilevel but for now provides a reduced api .

the most important todo is createWriteStream.

var clients = require('mulitlevel-reconnected');
 
var client = clients({
  // ALL of these options are passed to reconnect.connect. this is probably not something i want to keep doing. 
  // unless you pass an instance of reconnect 
  reconnect:[optional a disconnected reconnect instance] or [optional object of options to pass to reconnect],
  // 
  // options like these would be used to connect via net through reconnect. 
  // 
  port: ,// right now i have hardcoded this to use net connect. this is wrong and will be fixed. 
  // 
  host: ,// just like net. if its there will try to connect to said host. 
  // 
  // these options are used to configure retires and error behavior. 
  // 
  retries:1 [default], // if the server disconnected before firing the callback of a method  
  // the method will be retried up to retires times before calling back with E_DISCONNECT 
  //  
  resume:1 [default],  // if the server crashes how many times should an active stream be resumed before issuing and E_DISCONNECT error. 
  // streaming methods such as createKeyStream createValueStream and createReadStream take advantage of this. 
  // NOTE: if you use resume calls to createValueStream will really call createReadStream on multilevel for key tracking and emit only the values. 
  // 
  timeout:10000, // if a callback method takes greater than timeout ms to callback it will be called back with an E_TIMEDOUT error 
  // if a stream waits timeout ms for the server to connect an E_TIMEDOUT error will be emitted. once it is connected it will not timeout. 
  //  
});
 
// -1 for retry/timeout/resume options will make it infinite. 0 timeout is the same as no timeout.  
 
client.createReadStream().on('data',console.log);
 

see levelup for details.

  • get

  • put

  • batch

  • del

  • createReadStream

  • createValueStream

  • createKeyStream