From 650b7e54ba83fdbb7aaac0af2fc14d892f097eae Mon Sep 17 00:00:00 2001 From: Denys Otrishko Date: Sun, 3 Apr 2022 05:53:24 +0300 Subject: [PATCH 1/2] Check DB connection status during startup --- application/db/pg/start.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/application/db/pg/start.js b/application/db/pg/start.js index 43b60982..ce0d9ee7 100644 --- a/application/db/pg/start.js +++ b/application/db/pg/start.js @@ -4,4 +4,12 @@ async () => { } const options = { ...config.database, console }; db.pg = new metarhia.metasql.Database(options); + + // Check that we connected successfully. + await db.pg.query('SELECT now()').catch((err) => { + if (application.worker.id === 'W1') { + console.error(`Failed to setup DB: ${err.message}`); + } + process.exit(0); + }); }; From 1545accd661c2c174fd5fa1766395d6a9c0985eb Mon Sep 17 00:00:00 2001 From: Denys Otrishko Date: Sun, 3 Apr 2022 05:54:04 +0300 Subject: [PATCH 2/2] Pass 403 error code in signin --- application/api/auth.2/signin.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/application/api/auth.2/signin.js b/application/api/auth.2/signin.js index 29e02702..9e6d600d 100644 --- a/application/api/auth.2/signin.js +++ b/application/api/auth.2/signin.js @@ -2,10 +2,10 @@ access: 'public', method: async ({ login, password }) => { const user = await api.auth.provider.getUser(login); - if (!user) throw new Error('Incorrect login or password'); + if (!user) throw new Error('Incorrect login or password', 403); const { accountId, password: hash } = user; const valid = await metarhia.metautil.validatePassword(password, hash); - if (!valid) throw new Error('Incorrect login or password'); + if (!valid) throw new Error('Incorrect login or password', 403); console.log(`Logged user: ${login}`); const token = api.auth.provider.generateToken(); const data = { accountId: user.accountId };