serverSideTimeout setting in N1qlParams doesn't seem to be working

N1QL query seems to be bounded by the serverside timeout.
Thus I use the following code to set the serverSideTimeout.

var qparams =
qparams.serverSideTimeout(1, concurrent.TimeUnit.HOURS)

But the query only ran for minutes and returned partial results.
I am expecting millions of rows, instead I got just around 100k rows.

Is my settings overridden by the system?
Please kindly shed a light.

BTW, I am using couchbase4.1


You need to set the indexer timeout, which is separate. Sorry about the confusion. Let me dig around and find an example.

@geraldss Any updates?

Just found a link to set the indexer scan timeout.

My question is what is the downside to set this timeout value higher, for example 3600000ms.

In your case (expecting millions of rows), it should be okay to increase the timeout appropriately. In general, longer timeout can have indirect side effects, depending on why it is timing-out. For example, if u are seeing timeouts due to stale=false latency (i.e because of indexer catching up with KV updates), then using memory optimized indexes (MOI) may help better. Long scan timeouts may hold resources/memory/snapshots, and impact garbage collection etc.,