From 81f6e12a3671a987b3ee35c3505285a374d1decf Mon Sep 17 00:00:00 2001 From: alseambusher Date: Sun, 1 Jan 2017 21:00:56 -0800 Subject: [PATCH] call tartarus.load again if db loading fails --- src/background.js | 3 ++- src/lib/tartarus.js | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/background.js b/src/background.js index b7a27d7..8d35cf2 100644 --- a/src/background.js +++ b/src/background.js @@ -26,7 +26,8 @@ if (env.name !== 'production') { } app.on('ready', function () { - exec(path.join(__dirname, '/node_modules/pm2/bin/pm2') + ' start ' + path.join(__dirname, '/tartarus-process.js'), function (error, stdout, stderr) { + // TODO remove node and find an alternative to pm2 to make the binaries independent of node + exec('node '+ path.join(__dirname, '/node_modules/pm2/bin/pm2') + ' start ' + path.join(__dirname, '/tartarus-process.js'), function (error, stdout, stderr) { console.log('stdout: ' + stdout); console.log('stderr: ' + stderr); if (error !== null) { diff --git a/src/lib/tartarus.js b/src/lib/tartarus.js index db4973f..48a9ed6 100644 --- a/src/lib/tartarus.js +++ b/src/lib/tartarus.js @@ -18,13 +18,22 @@ export var files, schedules, settings; export function load() { settingsDb.loadDatabase(function (err) { - if (err) throw err; + if (err) { + setTimeout(load, 100); + return; + } }); filesDb.loadDatabase(function (err) { - if (err) throw err; + if (err) { + setTimeout(load, 100); + return; + } }); schedulesDb.loadDatabase(function (err) { - if (err) throw err; + if (err) { + setTimeout(load, 100); + return; + } }); settings = new Settings(settingsDb); schedules = new Schedules(schedulesDb);