I got Error with above 2.3.5 versions

I’m using 2.3.4 version and It’s working fine.
But If I switch to above 2.3.5 version, I got error like these.
Please see below message.

==================================================================
17:01:55.172 INFO c.c.client.core.CouchbaseCore[info:115] - CouchbaseEnvironment: {sslEnabled=false, sslKeystoreFile=‘null’, sslKeystorePassword=false, sslKeystore=null, bootstrapHttpEnabled=true, bootstrapCarrierEnabled=true, bootstrapHttpDirectPort=8091, bootstrapHttpSslPort=18091, bootstrapCarrierDirectPort=11210, bootstrapCarrierSslPort=11207, ioPoolSize=4, computationPoolSize=8, responseBufferSize=16384, requestBufferSize=16384, kvServiceEndpoints=1, viewServiceEndpoints=1, queryServiceEndpoints=1, searchServiceEndpoints=1, ioPool=NioEventLoopGroup, coreScheduler=CoreScheduler, eventBus=DefaultEventBus, packageNameAndVersion=couchbase-java-client/2.3.5 (git: 2.3.5, core: 1.3.5-dirty), dcpEnabled=false, retryStrategy=BestEffort, maxRequestLifetime=75000, retryDelay=ExponentialDelay{growBy 1.0 MICROSECONDS, powers of 2; lower=100, upper=100000}, reconnectDelay=ExponentialDelay{growBy 1.0 MILLISECONDS, powers of 2; lower=32, upper=4096}, observeIntervalDelay=ExponentialDelay{growBy 1.0 MICROSECONDS, powers of 2; lower=10, upper=100000}, keepAliveInterval=30000, autoreleaseAfter=10000, bufferPoolingEnabled=true, tcpNodelayEnabled=true, mutationTokensEnabled=false, socketConnectTimeout=1000, dcpConnectionBufferSize=20971520, dcpConnectionBufferAckThreshold=0.2, dcpConnectionName=dcp/core-io, callbacksOnIoPool=false, disconnectTimeout=25000, requestBufferWaitStrategy=com.couchbase.client.core.env.DefaultCoreEnvironment$2@6125072b, queryTimeout=75000, viewTimeout=75000, kvTimeout=75000, connectTimeout=75000, dnsSrvEnabled=false}
17:01:55.441 WARN c.c.client.core.CouchbaseCore[warn:160] - Exception while Handling Request Events RequestEvent{request=null}
java.lang.NoSuchMethodError: rx.Single.onErrorResumeNext(Lrx/functions/Func1;)Lrx/Single;
at com.couchbase.client.core.endpoint.AbstractEndpoint.doConnect(AbstractEndpoint.java:310) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.core.endpoint.AbstractEndpoint.connect(AbstractEndpoint.java:284) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.core.endpoint.AbstractEndpoint.connect(AbstractEndpoint.java:266) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.core.service.AbstractOnDemandService.dispatch(AbstractOnDemandService.java:48) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.core.service.AbstractDynamicService.send(AbstractDynamicService.java:129) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.core.node.CouchbaseNode.send(CouchbaseNode.java:191) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.core.node.locate.ConfigLocator.locateAndDispatch(ConfigLocator.java:44) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.core.RequestHandler.dispatchRequest(RequestHandler.java:238) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.core.RequestHandler.onEvent(RequestHandler.java:195) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.core.RequestHandler.onEvent(RequestHandler.java:71) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.deps.com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:129) ~[core-io-1.3.5.jar:na]
at com.couchbase.client.deps.io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144) [core-io-1.3.5.jar:na]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_66]

==================================================================

I don’t konw what is the problem. Please help me out!~

Hi @andypark,

In 2.3.5, a safeguard against netty connect callback was added. A future callback which returns success or failure is expected from netty connect operation, in some environments the future did not return so we added a safeguard timeout for 2s. It may be in your environment, the connection takes a bit longer, you can possibly look at the underlying cause or increase the safeguard timeout using system property com.couchbase.connectCallbackGracePeriod.

Make sure to upgrade RxJava as well to the right version when you update the client! Which version are you using?

Thanks you guys…

By the way, Which version of RxJava should I use?
Currently, I use 1.2.1 version.

Always try to use the RxJava version we ship with the download and that is defined as a dependency, since that is what we test with.

So 2.3.5 is tested with RxJava 1.1.8. If you upgrade to 2.4.1 java SDK then you can use RxJava 1.2.3