UnambiguousTimeoutException if a collection does not exist

Hi Everyone,
my question is why do i get a UnambiguousTimeoutException if a collection does not exist?
It is eaven retried 6 times. Why is ther no Collection Does not exist exception or something similar thrown. This also complicates my code because sometimes i want to add a new collection if it does not exist…

CouchBase.CacheDataProviderCouchBase.MoveNext - Collection: Trbc did not exist! - line=185
Couchbase.Core.Exceptions.UnambiguousTimeoutException: The operation 16532694/ timed out after 00:00:00.0026985. It was retried 6 times using Couchbase.Core.Retry.BestEffortRetryStrategy.
at Couchbase.Utils.ThrowHelper.ThrowTimeoutException(IOperation operation, IErrorContext context)
at Couchbase.Core.Retry.RetryOrchestrator.d__4.MoveNext()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Couchbase.KeyValue.CouchbaseCollection.d__58.MoveNext()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Couchbase.KeyValue.CouchbaseCollection.d__59.MoveNext()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Couchbase.KeyValue.CouchbaseCollection.d__57.MoveNext()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Couchbase.KeyValue.CouchbaseCollection.d__33.MoveNext()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at FBI.DataProvider.Cache.CouchBase.CacheDataProviderCouchBase.d__27.MoveNext() in C:\buildAgent\work\1eec5074626551a9\Implementation\FBI.DataProvider\Cache\CouchBase\CacheDataProviderCouchBase.cs:line 174 -----------------------Context Info--------------------------- {“dispatchedFrom”:“188.14.94.41”,“dispatchedTo”:“188.14.94.43”,“documentKey”:“”,“clientContextId”:“16532694”,“cas”:0,“status”:“success”,“bucketName”:null,“collectionName”:null,“scopeName”:null,“message”:null,“opCode”:“getCidByName”,“retryReasons”:[“CollectionNotFound”,“CollectionNotFound”,“CollectionNotFound”,“CollectionNotFound”,“CollectionNotFound”,“CollectionNotFound”]}

CouchbaseNetClient version=“3.3.4”
Server 7.1.1 community

I feel your pain. I believe the logic is that the bucket might have just been created and is not yet available, so it’s going to retry until timeout. There are issues for all the SDKS - https://issues.couchbase.com/browse/NCBC-2822

Hmm, for me this is like the standard behavior I see. It does not matter when the collection was created it is always doing this. The rest of the communication for existing ones is fine though…

@p.klein - I don’t understand your post. “It does no matter when the collection was created” for collections that don’t exist??

@mreiche: I was refering to your post and wanted to say its not only when the collection is in some just created intermediate state, it happens always for me if the collection does not exist.

But I understand you just wanted to say the current code assumes it. So it’s all fine :slight_smile:

1 Like