added a comment - Verified on 6.6.2-9579
cbq> explain select * from default where meta().id like "abc%" and (c1 = 1 or c2 = 2 or c3 = 3 );
{
"requestID" : "8b40e917-28cf-4a88-a531-706a922e6dec" ,
"signature" : "json" ,
"results" : [
{
"plan" : {
"#operator" : "Sequence" ,
"~children" : [
{
"#operator" : "UnionScan" ,
"scans" : [
{
"#operator" : "IndexScan3" ,
"index" : "ix1" ,
"index_id" : "d277516edab8195c" ,
"index_projection" : {
"primary_key" : true
},
"keyspace" : "default" ,
"namespace" : "default" ,
"spans" : [
{
"exact" : true ,
"range" : [
{
"high" : "1" ,
"inclusion" : 3 ,
"low" : "1"
}
]
}
],
"using" : "gsi"
},
{
"#operator" : "IndexScan3" ,
"index" : "ix2" ,
"index_id" : "139017fb29197a7d" ,
"index_projection" : {
"primary_key" : true
},
"keyspace" : "default" ,
"namespace" : "default" ,
"spans" : [
{
"exact" : true ,
"range" : [
{
"high" : "2" ,
"inclusion" : 3 ,
"low" : "2"
}
]
}
],
"using" : "gsi"
},
{
"#operator" : "IndexScan3" ,
"index" : "ix3" ,
"index_id" : "bc86ce0502c77deb" ,
"index_projection" : {
"primary_key" : true
},
"keyspace" : "default" ,
"namespace" : "default" ,
"spans" : [
{
"exact" : true ,
"range" : [
{
"high" : "3" ,
"inclusion" : 3 ,
"low" : "3"
}
]
}
],
"using" : "gsi"
}
]
},
{
"#operator" : "Fetch" ,
"keyspace" : "default" ,
"namespace" : "default"
},
{
"#operator" : "Parallel" ,
"~child" : {
"#operator" : "Sequence" ,
"~children" : [
{
"#operator" : "Filter" ,
"condition" : "(((meta(`default`).`id`) like \"abc%\") and ((((`default`.`c1`) = 1) or ((`default`.`c2`) = 2)) or ((`default`.`c3`) = 3)))"
},
{
"#operator" : "InitialProject" ,
"result_terms" : [
{
"expr" : "self" ,
"star" : true
}
]
},
{
"#operator" : "FinalProject"
}
]
}
}
]
},
"text" : "select * from default where meta().id like \"abc%\" and (c1 = 1 or c2 = 2 or c3 = 3);"
}
],
"status" : "success" ,
"metrics" : {
"elapsedTime" : "20.599205ms" ,
"executionTime" : "20.36905ms" ,
"resultCount" : 1 ,
"resultSize" : 4630
}
}
Build couchbase-server-6.6.2-9579 contains query commit 6af8c88 with commit message:
MB-45273Favor UNION SCAN over PRIMARY SCAN