Skip to content
This repository has been archived by the owner on Apr 3, 2019. It is now read-only.

Commit

Permalink
feat(db): make database fault tolerant of db server
Browse files Browse the repository at this point in the history
  • Loading branch information
seanmonstar committed Mar 11, 2017
1 parent efed703 commit 63ede1e
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 52 deletions.
63 changes: 27 additions & 36 deletions bin/key_server.js
Original file line number Diff line number Diff line change
Expand Up @@ -98,44 +98,35 @@ function main() {
UnblockCode
)

DB.connect(config[config.db.backend])
.then(
function (db) {
database = db
customs = new Customs(config.customsUrl)
var routes = require('../lib/routes')(
log,
error,
serverPublicKeys,
signer,
db,
senders.email,
senders.sms,
Password,
config,
customs
)
server = Server.create(log, error, config, routes, db, translator)

server.start(
function (err) {
if (err) {
log.error({ op: 'server.start.1', msg: 'failed startup with error',
err: { message: err.message } })
process.exit(1)
} else {
log.info({ op: 'server.start.1', msg: 'running on ' + server.info.uri })
}
}
)
statsInterval = setInterval(logStatInfo, 15000)
},
function (err) {
log.error({ op: 'DB.connect', err: { message: err.message } })
const db = new DB(config[config.db.backend])
database = db
customs = new Customs(config.customsUrl)
var routes = require('../lib/routes')(
log,
error,
serverPublicKeys,
signer,
db,
senders.email,
senders.sms,
Password,
config,
customs
)
server = Server.create(log, error, config, routes, db, translator)

server.start(
function (err) {
if (err) {
log.error({ op: 'server.start.1', msg: 'failed startup with error',
err: { message: err.message } })
process.exit(1)
} else {
log.info({ op: 'server.start.1', msg: 'running on ' + server.info.uri })
}
)

}
)
statsInterval = setInterval(logStatInfo, 15000)
}
)

Expand Down
17 changes: 1 addition & 16 deletions lib/db.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,22 +29,7 @@ module.exports = function (
}

DB.connect = function (options) {
var db = new DB(options)

return db.pool.get('/')
.then(
function (api) {
// TODO: transition to api version
// patchLevel is mysql specific
if (
api.patchLevel < options.patchLevel ||
api.patchLevel > options.patchLevel + 1
) {
throw error.dbIncorrectPatchLevel(api.patchLevel, options.patchLevel)
}
return db
}
)
return P.resolve(new DB(options))
}

DB.prototype.close = function () {
Expand Down

0 comments on commit 63ede1e

Please sign in to comment.