From 9978bb56fc2c56ad52930bde9bcaa561158a158a Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Fri, 8 Dec 2017 05:37:20 +0100 Subject: searches working correctly --- bucky/search/bdb.js | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 bucky/search/bdb.js (limited to 'bucky/search/bdb.js') diff --git a/bucky/search/bdb.js b/bucky/search/bdb.js new file mode 100644 index 0000000..ba0124d --- /dev/null +++ b/bucky/search/bdb.js @@ -0,0 +1,38 @@ +var bdb_lib = require('berkeleydb') +var dbenv = new bdb_lib.DbEnv(); +var bdb_status = dbenv.open('./search/db/env') +console.log('openĀ /search/db:', bdb_status) + +var db + +function exitHandler(options, err) { + db.close() + // if (options.cleanup) console.log('clean'); + if (err) console.log(err.stack); + if (options.exit) process.exit(); +} + +// do something when app is closing +process.on('exit', exitHandler.bind(null, {cleanup: true})); + +// catches ctrl+c event +process.on('SIGINT', exitHandler.bind(null, {exit: true})); + +// catches "kill pid" (for example: nodemon restart) +process.on('SIGUSR1', exitHandler.bind(null, {exit: true})); +process.on('SIGUSR2', exitHandler.bind(null, {exit: true})); + +//catches uncaught exceptions +process.on('uncaughtException', exitHandler.bind(null, {exit:true})); + +function open(){ + if (db) db.close() + var _db = new bdb_lib.Db(dbenv); + var bdb_status = _db.open('./search.db') + console.log('openĀ ./search.db:', bdb_status) + db = _db +} + +open() + +module.exports = db -- cgit v1.2.3-70-g09d2