Query-service returns result with timeout status for parameterized query with 100 parameters.
- Cluster information: 4 nodes:
first node: index-service
second node: data-service
third node: data-service
fourth node: query-node
All nodes are in one local network (each node have 100Mb network interface)
- Primary and GSI indexes created for object’s field (test bucket have 7 secondary indexes). Also bucket have 17 views in one design document for comparing performance with view-based queries.
- How test works: I’m adding 2000 objects and after that trying execute query with 100 arguments, sample query:
SELECT * FROM
bucket_nameWHERE type=‘ObjectType1’ AND (fieldId=? OR fieldId=? OR fieldId=? …OR fieldId=?);
- N1ql query:
N1qlParams queryParams = N1qlParams.build()
N1qlQuery.parameterized(rawQuery, args, queryParams),
rawQuery - query string from #3
args - JsonArray with arguments.
5) couchbase server: 4.1 (on CentOS 6.3), couchbase java sdk: 2.2.4
This query executes several times with different arguments.
Sometimes this query works proper and returns result but most of time I have timeouts.
How I can eliminate timeouts in simple n1ql-queries or how I must modify my queries.