Description
Basically when I run this command either through my UI or through CBQ:
select curl('http://192.168.10.10:8093/query/service', {'data' : 'statement=select * from bucket0 limit 5'})
The statement does not finish executing. I have a primary index on the bucket in question and everything is whitelisted (all_access=True). Logs will be attached I am running a 3 node cluster with each node having query service data service and index service. I do not know if this specifically a curl issue, but simply doing select * from bucket0 limit 5 works as expected.
Here is the explain:
{
"plan": {
"#operator": "Sequence",
"~children": [
{
"#operator": "DummyScan"
},
{
"#operator": "Parallel",
"maxParallelism": 1,
"~child": {
"#operator": "Sequence",
"~children": [
{
"#operator": "InitialProject",
"result_terms": [
{
"expr": "curl(\"http://192.168.10.10:8093/query/service\", {\"data\": \"statement=select * from bucket0 limit 5\"})"
}
]
},
{
"#operator": "FinalProject"
}
]
}
}
]
},
"text": "select curl('http://192.168.10.10:8093/query/service', {'data' : 'statement=select * from bucket0 limit 5'})"
}
The hang is reliably reproducable if you run this testrunner command with 3 server nodes in your .ini(sample .ini at the bottom of the file)
./testrunner -i VMs.ini -p doc-per-day=4,nodes_init=3,sasl_buckets=1,bucket_size=400,gsi_type=plasma -t tuqquery.tuq_curl.QueryCurlTests.test_protected_bucket_noauth
Build 5.1.0-1394 is the last build I can find on greenboard where this job reliably passes.
[global]
username:root
password:couchbase
port:8091
[membase]
rest_username:Administrator
rest_password:password
[servers]
1:_1
2:_2
3:_3
[_1]
ip:192.168.10.10
services:kv,index,n1ql,fts
[_2]
ip:192.168.10.11
services:kv,index,n1ql,fts