function onSignal () { console.log('server is starting cleanup') return client.end().then(() => console.log('client has disconnected')) .catch(err => console.error('error during disconnection', err.stack)) }
async function startServer () { await client.connect() console.log('db connected') terminus(http.createServer(app), { logger: console.log, signal: 'SIGINT', healthChecks: { '/healthcheck': onHealthCheck }, onSignal }).listen(3000) }
async function onHealthCheck () { return client.query('SELECT 1') }
app.get('/', async (req, res) => { const result = await client.query('SELECT $1::text as message', ['Hello world!']) res.send(result.rows[0].message) })
pgClient.on('notification', function(data) { console.log('_____________________'); console.log('Change notification'); io.emit("change"); });
client.query(grantPrivilegesSql, function(err, result) { if (err) { console.log('error: ', err); process.exit(1); } console.log(`Granted privileges to '${userName}' successfully:`, result); console.log("Database creation success!"); process.exit(0); });
client.query(alterPrivilegesSequencesSql, function(err, result) { if (err) { console.log('error: ', err); process.exit(1); } console.log(`Altered privileges to '${userName}' sequences successfully:`, result); });
function onSignal () { console.log('server is starting cleanup') return client.end().then(() => console.log('client has disconnected')) .catch(err => console.error('error during disconnection', err.stack)) }
async function startServer () { await client.connect() console.log('db connected') terminus(http.createServer(app), { logger: console.log, signal: 'SIGINT', healthChecks: { '/healthcheck': onHealthCheck }, onSignal }).listen(3000) }
app.get('/', async (req, res) => { const result = await client.query('SELECT $1::text as message', ['Hello world!']) res.send(result.rows[0].message) })
async function onHealthCheck () { return client.query('SELECT 1') }
// write a checkpoint to keep track of where we got to // with each table const writeCheckpoint = async (tablename, seq) => { const sql = 'INSERT INTO couchwarehouse_checkpoints (tablename,seq) VALUES ($1,$2)' await client.query(sql, [tablename, seq]) }