[DRIVERS-2153] Clarify whether pools should be created for non-data-bearing nodes Created: 18/Oct/19  Updated: 31/Mar/22

Status: Backlog
Project: Drivers
Component/s: SDAM
Fix Version/s: None

Type: Spec Change Priority: Major - P3
Reporter: Jeremy Mikola Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Related
Driver Changes: Needed

 Description   

In this comment in mongodb/specifications#668, oleg.pudeyev referred to a recent SDAM spec change in
SPEC-1332. The text instructs drivers to populate pools for data-bearing server types; however, it does not address other server types (e.g. RSArbiter, RSGhost, RSOther).

jeff.yemin pointed out that there is little reason to create pools for arbiters, since they are only used for monitoring; however, it may make sense to permit drivers to populate pools for RSGhost and RSOther types, since those could become queryable nodes down the line. I propose "Connection Pool Creation" section of SDAM be amended to say:

  • Drivers MUST NOT create connection pools for RSArbiter server types
  • Drivers MAY create connection pools for RSGhost and RSOther server types

This would leave PossiblePrimary and Unknown as the only unspecified server types. I'm not sure if those bear mentioning, but if so I imagine we could add them to the list of MUST NOT alongside RSArbiter. Connection Pool Creation in the SDAM spec says the pools are only created after successful server checks, so perhaps that justifies omission of PossiblePrimary and Unknown (both types are transitive states before successful isMaster checks).



 Comments   
Comment by Jeremy Mikola [ 18/Oct/19 ]

Revised the issue description to acknowledge that "Connection Pool Creation" is only specified in SDAM. CMAP admittedly "does not not define how a pool is to be created." Therefore, this change pertains entirely to SDAM.

Generated at Thu Feb 08 08:24:51 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.