Let’s be careful here everyone so we don’t get into the weeds … we fixed an issue in the 2.2.x series in the streaming parser, I think thats what @gerdklingler is running into.
Any issues seen on 2.3.x are different ones! And a timeout is a general symptom of an unknown cause, not the actual issue - so any underlying parsing, network, or server issue can result in a timeout.
Blocking.blockForSingle throwing a RuntimeException with a TimeoutException can be due to many things, so I wouldn’t automatically say it is the same issue…
(edit: @daschl beat me to it)
@mlblount45 I would recommend trying with 2.2.8, yes. Can you confirm whether or not your issue happens in 2.2.8, but also check with 2.3.1?
@parasdiwan@mlblount45 it would be very interesting to try and capture a N1QL request + response from the SDK logs (assuming the timeout is triggered by a delay inside the SDK, not in the actual N1QL service responding too late).
By enabling TRACE level logs, the SDK will dump content of packets it sends and receives, so we might be able to find the last N1QL request that timed out and check if there is a response afterward. Having the packet dump, I’d be able to reconstruct the response and debug its parsing locally, see if anything problematic pops up.
@simonbasle@daschl sorry for jumping the gun and making assumptions. I’ll try to test out 2.2.8 later on today and I will let you know how it goes. I’ve already tested with 2.3.1 this is where i first discovered the issue: N1QL queries timing out when run in java sdk
@parasdiwan@mlblount45@siriousje we found a bug in the query response parser that affects 2.3.0 and 2.3.1 but it doesn’t seem related, as it would manifest as a transcoding exception when trying to get a N1qlQueryRow.value():
com.couchbase.client.java.error.TranscodingException: Error deserializing row value from bytes to JsonObject
You don’t see anything like that in your logs do you?
Has any of you been able to capture the issue with TRACE level logs enabled?
Hi…
we are getting concurrent timeout exception while running our application process.
Though we have increased the thread pool configuration default to 5 and the query endpoint to 20 , we are getting the below error
Error log:
2017-11-15 06:45:56,134 ERROR [checklist-library-Executor-4] LoggingAspect: Exception in com.pwc.adc.assurance.checklistLibrary.service.ChecklistLibraryService.createChecklistFromTags() with cause = ‘java.lang.RuntimeException: java.util.concurrent.TimeoutException’ and exception = 'java.util.concurrent.TimeoutException; nested exception is java.lang.RuntimeException: java.util.concurrent.TimeoutException’
org.springframework.dao.QueryTimeoutException: java.util.concurrent.TimeoutException; nested exception is java.lang.RuntimeException: java.util.concurrent.TimeoutException
at org.springframework.data.couchbase.core.CouchbaseExceptionTranslator.translateExceptionIfPossible(CouchbaseExceptionTranslator.java:122)
at org.springframework.data.couchbase.core.CouchbaseTemplate.execute(CouchbaseTemplate.java:539)
at org.springframework.data.couchbase.core.CouchbaseTemplate.queryN1QL(CouchbaseTemplate.java:493)
at org.springframework.data.couchbase.core.CouchbaseTemplate.findByN1QL(CouchbaseTemplate.java:428)
at org.springframework.data.couchbase.repository.query.AbstractN1qlBasedQuery.executeCollection(AbstractN1qlBasedQuery.java:155)
at org.springframework.data.couchbase.repository.query.AbstractN1qlBasedQuery.executeEntity(AbstractN1qlBasedQuery.java:161)
at org.springframework.data.couchbase.repository.query.AbstractN1qlBasedQuery.executeDependingOnType(AbstractN1qlBasedQuery.java:134)
at org.springframework.data.couchbase.repository.query.AbstractN1qlBasedQuery.execute(AbstractN1qlBasedQuery.java:105)
at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.doInvoke(RepositoryFactorySupport.java:483)