Forum Stats

  • 3,757,143 Users
  • 2,251,200 Discussions
  • 7,869,743 Comments

Discussions

Slow response time for createPool method

User_OBYFR
User_OBYFR Member Posts: 5 Green Ribbon

Hello,

We recently started seeing slow response times when calling createPool from our NodeJs application to our Oracle DB. Previously these calls were taking 1-2 seconds and now they are taking 6-8 seconds. Our NodeJs app is deployed as a AWS Lambda function.

We have engaged our DBAs, but they are having trouble finding any logs corresponding to the createPool method call.

We're looking for suggestions on how to pinpoint the source of the slowness. Is it our NodeJs code? The Oracle DB? Or perhaps it's a network issue. Any help would be appreciated.

Below is the snippet of code that is creating the pool:

var AWSXRay = require('aws-xray-sdk');

const oracleDB = require("oracledb");

const mysql = require("mysql2/promise");

const getConfig = require("./dbconfig.js");


const getDb = (dbType) => {

    const databases = {

        oracleDB: oracleDB,

        mysql: mysql,

    };


    return databases[dbType];

};


async function connector(_dbName, dbType, state) {

    const db = getDb(dbType);

    const seg = AWSXRay.getSegment();


    let status;

    try {

        !state[_dbName] ? (state[_dbName] = {}) : null;


       if (!state[_dbName].dbconfig){

            let sub = seg.addNewSubsegment('getConfig');

            state[_dbName].dbconfig = await getConfig(_dbName, dbType);

            sub.close();

       }


       if( !state[_dbName].pool)

        { 

            let sub = seg.addNewSubsegment('createPool');

            state[_dbName].pool = await db.createPool(state[_dbName].dbconfig);

            sub.close();

        }


        status = "success";

    } catch (error) {

        status = "[Connection creation error] Error:" + error.message;


        console.error(status);

    }

    return status;

}


module.exports = connector;

Tagged:

Best Answer

  • User_OBYFR
    User_OBYFR Member Posts: 5 Green Ribbon
    Accepted Answer

    After further troubleshooting we determined the slowness was being caused by an issue with the DNS server. After correcting the configuration on the DNS server the DB calls were responding in the expected amount of time.

Answers

  • User_OBYFR
    User_OBYFR Member Posts: 5 Green Ribbon
    Accepted Answer

    After further troubleshooting we determined the slowness was being caused by an issue with the DNS server. After correcting the configuration on the DNS server the DB calls were responding in the expected amount of time.