diff --git a/orders/src/routes/ordersRoutes.js b/orders/src/routes/ordersRoutes.js index 1bdb4e2..2b828e5 100644 --- a/orders/src/routes/ordersRoutes.js +++ b/orders/src/routes/ordersRoutes.js @@ -10,6 +10,7 @@ router.get("/", async (req, res, next) => { let read_count = req.query.r; let write_count = req.query.w; let connection_id = req.query.c; + let conn; try { // Establish connection to SkySQL using the db.js module @@ -29,17 +30,32 @@ router.get("/", async (req, res, next) => { writes += "insert into orders (description) values('order - " + transaction_id + "');"; } - // Start latency timer - var start = Date.now(); + var promises = []; - // Asynchronously execute read and write queries - await Promise.all([conn.query(reads), conn.query(writes)]); + if (read_count > 0) { + promises.push(conn.query(reads)); + } - // Calculate latency - var delta = Date.now() - start; + if (write_count > 0) { + promises.push(conn.query(writes)); + } - // Return the results - res.send({ execution_time: delta }); + if (promises.length > 0) { + // Start latency timer + var start = Date.now(); + + // Asynchronously execute read and write queries + await Promise.all(promises); + + // Calculate latency + var delta = Date.now() - start; + + // Return the results + res.send({ execution_time: delta }); + } + else { + res.send({ execution_time: 0.0 }); + } } catch (err) { throw err; } finally {