From 84de0967dbadfe819a738462845f434d23f5ca92 Mon Sep 17 00:00:00 2001 From: Durran Jordan Date: Thu, 6 Jun 2024 16:44:54 +0200 Subject: [PATCH 1/4] fix(NODE-6174): use client.s.options in session --- src/sessions.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sessions.ts b/src/sessions.ts index 20699d24ac..544bef897c 100644 --- a/src/sessions.ts +++ b/src/sessions.ts @@ -174,7 +174,7 @@ export class ClientSession extends TypedEventEmitter { this.sessionPool = sessionPool; this.hasEnded = false; this.clientOptions = clientOptions; - this.timeoutMS = options.defaultTimeoutMS ?? client.options?.timeoutMS; + this.timeoutMS = options.defaultTimeoutMS ?? client.s.options?.timeoutMS; this.explicit = !!options.explicit; this[kServerSession] = this.explicit ? this.sessionPool.acquire() : null; From f38aea5c2c690746f056d7c3cabb41a4bd42d50b Mon Sep 17 00:00:00 2001 From: Durran Jordan Date: Mon, 10 Jun 2024 14:39:19 +0200 Subject: [PATCH 2/4] refactor: return koptions directly --- src/mongo_client.ts | 2 +- src/sessions.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mongo_client.ts b/src/mongo_client.ts index aee241076f..9dc196bfcf 100644 --- a/src/mongo_client.ts +++ b/src/mongo_client.ts @@ -425,7 +425,7 @@ export class MongoClient extends TypedEventEmitter { /** @see MongoOptions */ get options(): Readonly { - return Object.freeze({ ...this[kOptions] }); + return this[kOptions]; } get serverApi(): Readonly { diff --git a/src/sessions.ts b/src/sessions.ts index 544bef897c..20699d24ac 100644 --- a/src/sessions.ts +++ b/src/sessions.ts @@ -174,7 +174,7 @@ export class ClientSession extends TypedEventEmitter { this.sessionPool = sessionPool; this.hasEnded = false; this.clientOptions = clientOptions; - this.timeoutMS = options.defaultTimeoutMS ?? client.s.options?.timeoutMS; + this.timeoutMS = options.defaultTimeoutMS ?? client.options?.timeoutMS; this.explicit = !!options.explicit; this[kServerSession] = this.explicit ? this.sessionPool.acquire() : null; From e0a9bae0211db7c4e09668196b0b15adfa7daab5 Mon Sep 17 00:00:00 2001 From: Durran Jordan Date: Tue, 11 Jun 2024 17:13:14 +0200 Subject: [PATCH 3/4] Revert "refactor: return koptions directly" This reverts commit f38aea5c2c690746f056d7c3cabb41a4bd42d50b. --- src/mongo_client.ts | 2 +- src/sessions.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mongo_client.ts b/src/mongo_client.ts index 9dc196bfcf..aee241076f 100644 --- a/src/mongo_client.ts +++ b/src/mongo_client.ts @@ -425,7 +425,7 @@ export class MongoClient extends TypedEventEmitter { /** @see MongoOptions */ get options(): Readonly { - return this[kOptions]; + return Object.freeze({ ...this[kOptions] }); } get serverApi(): Readonly { diff --git a/src/sessions.ts b/src/sessions.ts index 20699d24ac..544bef897c 100644 --- a/src/sessions.ts +++ b/src/sessions.ts @@ -174,7 +174,7 @@ export class ClientSession extends TypedEventEmitter { this.sessionPool = sessionPool; this.hasEnded = false; this.clientOptions = clientOptions; - this.timeoutMS = options.defaultTimeoutMS ?? client.options?.timeoutMS; + this.timeoutMS = options.defaultTimeoutMS ?? client.s.options?.timeoutMS; this.explicit = !!options.explicit; this[kServerSession] = this.explicit ? this.sessionPool.acquire() : null; From 8a403422efd6a47d1f08147491ad80132c6a7b81 Mon Sep 17 00:00:00 2001 From: Durran Jordan Date: Wed, 12 Jun 2024 21:35:11 +0200 Subject: [PATCH 4/4] test: fix unit test --- test/unit/sessions.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/unit/sessions.test.ts b/test/unit/sessions.test.ts index f889ed9c6a..390b89233a 100644 --- a/test/unit/sessions.test.ts +++ b/test/unit/sessions.test.ts @@ -333,7 +333,7 @@ describe('Sessions - unit', function () { before(() => { serverSessionSymbol = getSymbolFrom( - new ClientSession({}, serverSessionPool, {}), + new ClientSession(client, serverSessionPool, {}), 'serverSession' ); });