Skip to content

Commit

Permalink
fix: ensure a single connection is created
Browse files Browse the repository at this point in the history
  • Loading branch information
frankpagan committed Oct 25, 2023
1 parent 4b1f203 commit f3856af
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ const clients = new Map()
async function dbClient(data) {
if (data.storageUrl) {
let client = clients.get(data.storageUrl)
if (!client) {
if (!client && !clients.has(data.storageUrl)) {
try {
clients.set(data.storageUrl, client)
client = await MongoClient.connect(data.storageUrl, { useNewUrlParser: true, useUnifiedTopology: true });
clients.set(data.storageUrl, client)
} catch (error) {
clients.delete(data.storageUrl)
console.error(`${data.organization_id}: storageName ${data.storageName} failed to connect to mongodb`)
errorHandler(data, error)
return { status: false }
Expand Down Expand Up @@ -43,7 +43,7 @@ function database(action, data) {

try {
const client = await dbClient(data)
if (client.status === false)
if (!client || client.status === false)
return data
if (action == 'readDatabase') {
const db = client.db().admin();
Expand Down Expand Up @@ -97,7 +97,7 @@ function array(action, data) {

try {
const client = await dbClient(data)
if (client.status === false)
if (!client || client.status === false)
return data

if (data.request)
Expand Down Expand Up @@ -243,7 +243,7 @@ function object(action, data) {
return new Promise(async (resolve, reject) => {
try {
const client = await dbClient(data)
if (client.status === false)
if (!client || client.status === false)
return data

let dataTransferedIn = 0
Expand Down

0 comments on commit f3856af

Please sign in to comment.