As identified by DRIVERS-2246, the streaming protocol used by SDAM monitoring when communicating with MongoDB 4.4+ clusters can result in socket timeouts when the underlying runtime environment resumes after being frozen/paused then (ex: Lambda).
Drivers should revert their SDAM monitoring process to use the legacy polling mechanism when a FaaS runtime environment is detected (DRIVERS-2209) to improve the developer experience when interacting with MongoDB from these environments.
- depends on
-
DRIVERS-2677 Clarify whether heartbeat started event should be emitted before connection establishment in ServerMonitor
- Implementing
- is duplicated by
-
DRIVERS-2246 Heartbeat build up with streaming protocol when driver process is stopped (FAAS)
- Closed
-
DRIVERS-2364 Only Process Last Monitor Heartbeat When Using Streaming Protocol
- Closed
- is related to
-
DRIVERS-2364 Only Process Last Monitor Heartbeat When Using Streaming Protocol
- Closed
- split to
-
RUBY-3241 Switch to polling monitoring when running within a FaaS environment
- Backlog
-
CDRIVER-4615 Switch to polling monitoring when running within a FaaS environment
- Closed
-
CSHARP-4615 Switch to polling monitoring when running within a FaaS environment
- Closed
-
CXX-2676 Switch to polling monitoring when running within a FaaS environment
- Closed
-
GODRIVER-2810 Switch to polling monitoring when running within a FaaS environment
- Closed
-
JAVA-4936 Switch to polling monitoring when running within a FaaS environment
- Closed
-
MOTOR-1120 Switch to polling monitoring when running within a FaaS environment
- Closed
-
NODE-5197 Switch to polling monitoring when running within a FaaS environment
- Closed
-
PYTHON-3668 Switch to polling monitoring when running within a FaaS environment
- Closed
-
RUST-1631 Switch to polling monitoring when running within a FaaS environment
- Closed
-
PHPC-2281 Switch to polling monitoring when running within a FaaS environment
- Closed
- tested by
-
DRIVERS-2951 Test serverMonitoringMode=poll waits after a successful heartbeat
- Implementing