[CSHARP-3963] MongoConnectionPoolPausedException should be resumable for change stream Created: 10/Nov/21  Updated: 28/Oct/23  Resolved: 15/Nov/21

Status: Closed
Project: C# Driver
Component/s: Read Operations
Affects Version/s: None
Fix Version/s: 2.14.0

Type: Bug Priority: Major - P3
Reporter: Jeffrey Yemin Assignee: Dmitry Lukyanov (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Issue split
split to CSHARP-3964 Consider the range of possible client... Backlog
Related
related to JAVA-4289 Change stream cursors should be resil... Closed

 Description   

From a recent test, this stack trace has been observed:

Unhandled exception. MongoDB.Driver.MongoConnectionPoolPausedException: The connection pool is in paused state for server autodispo1-shard-00-01-pri.fmh6e.mongodb.net:27016.
 at MongoDB.Driver.Core.ConnectionPools.ExclusiveConnectionPool.PoolState.ThrowIfNotReady()
 at MongoDB.Driver.Core.ConnectionPools.ExclusiveConnectionPool.AcquireConnectionHelper.StartCheckingOut()
 at MongoDB.Driver.Core.ConnectionPools.ExclusiveConnectionPool.AcquireConnectionHelper.AcquireConnection(CancellationToken cancellationToken)
 at MongoDB.Driver.Core.ConnectionPools.ExclusiveConnectionPool.AcquireConnection(CancellationToken cancellationToken)
 at MongoDB.Driver.Core.Servers.Server.GetChannel(CancellationToken cancellationToken)
 at MongoDB.Driver.Core.Bindings.ServerChannelSource.GetChannel(CancellationToken cancellationToken)
 at MongoDB.Driver.Core.Bindings.ChannelSourceHandle.GetChannel(CancellationToken cancellationToken)
 at MongoDB.Driver.Core.Operations.AsyncCursor`1.GetNextBatch(CancellationToken cancellationToken)
 at MongoDB.Driver.Core.Operations.AsyncCursor`1.MoveNext(CancellationToken cancellationToken)
 at MongoDB.Driver.Core.Operations.ChangeStreamCursor`1.MoveNext(CancellationToken cancellationToken)
 at MongoDB.Driver.Core.Operations.AsyncCursorEnumerator`1.MoveNext()
 at MongoTest.Program.Main(String[] args) in /RiderProjects/MongoTest/MongoTest/Program.cs:line 148

This exception should be resumable in addition to being retryable.

Note that in scope of JAVA-4289 we decided to make all MongoClientException resumable. We should consider the same for C#.



 Comments   
Comment by Githook User [ 15/Nov/21 ]

Author:

{'name': 'Dmitry Lukyanov', 'email': 'dmitry.lukyanov@mongodb.com', 'username': 'DmitryLukyanov'}

Message: CSHARP-3963: MongoConnectionPoolPausedException should be resumable for change stream. (#676)
Branch: master
https://github.com/mongodb/mongo-csharp-driver/commit/9a62d16b4f7cd3a45484a360203fed74e988e0c7

Generated at Wed Feb 07 21:46:47 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.