Skip to main content
Announcements
Accelerate Your Success: Fuel your data and AI journey with the right services, delivered by our experts. Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
KKlimczuk1618309742
Contributor
Contributor

Timeout exception when querying from server with multiple nodes

I am connecting with server which consists of 3 nodes, only one of them has query service installed. When configuring tCouchbaseInput component I enter every couchbase node address in field "Bootstrap Nodes". When running job (simple migration from Couchbase to MySQL) I receive TimeoutException, which can be caused by primary index creating timeout:

 

Exception in component tCouchbaseInput_1

java.lang.RuntimeException: java.util.concurrent.TimeoutException

at com.couchbase.client.java.util.Blocking.blockForSingle(Blocking.java:77)

at com.couchbase.client.java.bucket.DefaultBucketManager.createN1qlPrimaryIndex(DefaultBucketManager.java:240)

at com.couchbase.client.java.bucket.DefaultBucketManager.createN1qlPrimaryIndex(DefaultBucketManager.java:235)

at org.talend.components.couchbase.source.CouchbaseInput.init(CouchbaseInput.java:89)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at org.talend.sdk.component.runtime.base.LifecycleImpl.doInvoke(LifecycleImpl.java:65)

at org.talend.sdk.component.runtime.base.LifecycleImpl.lambda$invoke$0(LifecycleImpl.java:57)

at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)

at java.util.stream.ReferencePipeline$11$1.accept(ReferencePipeline.java:440)

at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)

at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)

at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)

at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)

at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)

at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)

at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)

at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:485)

at org.talend.sdk.component.runtime.base.LifecycleImpl.invoke(LifecycleImpl.java:57)

at org.talend.sdk.component.runtime.base.LifecycleImpl.start(LifecycleImpl.java:48)

at org.talend.sdk.component.runtime.manager.chain.ChainedInput.next(ChainedInput.java:37)

at local_project.sqltocb_0_1.sqlToCb.tCouchbaseInput_1Process(sqlToCb.java:653)

at local_project.sqltocb_0_1.sqlToCb.runJobInTOS(sqlToCb.java:1222)

at local_project.sqltocb_0_1.sqlToCb.main(sqlToCb.java:1071)

Caused by: java.util.concurrent.TimeoutException

... 26 more

 

I believe thath this line is key: "

at com.couchbase.client.java.bucket.DefaultBucketManager.createN1qlPrimaryIndex(DefaultBucketManager.java:240)".

 

Bucket consists of 44k documents which weight 0,5 GB. Im using Talend for big data v7.3.1.

 

Why am I receiving TimeoutException, is it caused by having three nodes which only one has query service? Should every node has query service? Additionally this bucket has primary index, why Talend want to create another?

Labels (2)
2 Replies
Anonymous
Not applicable

Hello,

Which CouchDB version are you using?

Are you able to run queries in the Coucbase UI with the "Use N1QL" box?

Best regards

Sabrina

KKlimczuk1618309742
Contributor
Contributor
Author

I am using CB server v6.0, I can run queries only on one node, on other nodes I see information that this node is not able to run queries (only one node has query service installed)