[SERVER-83915] Ensure safe initialization and use of LogicalSessionCache in embedded router mode Created: 05/Dec/23  Updated: 24/Jan/24  Resolved: 24/Jan/24

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 8.0.0-rc0

Type: Task Priority: Major - P3
Reporter: George Wangensteen Assignee: Pol Pinol
Resolution: Fixed Votes: 0
Labels: pm-635-milestone-1
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Service Arch
Backwards Compatibility: Fully Compatible
Sprint: CAR Team 2024-01-08, CAR Team 2024-01-22, CAR Team 2024-02-05
Participants:

 Description   

Today, mongod and mongos share a core logical session cache implementation, but use different resources (through the ServiceLiason API and injected reapSessionsOlderThanFn) to kill cursors and reap transaction table entries (in-memory on the router, both in-memory and durably on the shard) when required.
This ticket tracks ensuring that we can share an in-memory logical session cache representation when running in embedded router mode, as well as making whatever changes are required to ensure that ClusterCursors managed by the router are killed when required, and that in-memory transaction table cleanup works correctly. Alternatively, if needed, we could use two session caches, one for each role.

Additionally document the architecture of the logical session cache when mongod runs in embedded-router mode.



 Comments   
Comment by Githook User [ 23/Jan/24 ]

Author:

{'name': 'Pol Pinol Castuera', 'email': 'pol.pinol@mongodb.com', 'username': 'PolPinol'}

Message: SERVER-83915 Ensure safe initialization and use of LogicalSessionCache in embedded router mode

GitOrigin-RevId: ed92bf71531a3ccf3e4c62b43c8244b3f22f78f4
Branch: master
https://github.com/mongodb/mongo/commit/448524b9f196aca38d5f8e9d587aaced5f06c3f3

Generated at Thu Feb 08 06:53:31 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.