In a simple case, changing the order doesn’t make a different as long as you’re using both keys in your predicate.
What query are you issuing after you create the second index?
cbq> create index ipm on beer-sample
(name,meta().id);
cbq> explain select name, meta().id from beer-sample
where name = ‘a’ and meta().id = “a1”;
{
“requestID”: “dc528609-db9e-43be-8532-fbed77bdc8aa”,
“signature”: “json”,
“results”: [
{
"#operator": “Sequence”,
"~children": [
{
"#operator": “IndexScan”,
“covers”: [
“cover((meta(beer-sample
).id
))”,
“cover((beer-sample
.name
))”,
“cover((meta(beer-sample
).id
))”
],
drop index beer-sample
.ipm;
create index ipm on beer-sample
(meta().id,name);
cbq> explain select name, meta().id from beer-sample
where name = ‘a’ and meta().id = “a1”;
{
“requestID”: “768817fd-8f80-43f9-bc6e-1650fd6906e4”,
“signature”: “json”,
“results”: [
{
"#operator": “Sequence”,
"~children": [
{
"#operator": “IndexScan”,
“covers”: [
“cover((meta(beer-sample
).id
))”,
“cover((meta(beer-sample
).id
))”,
“cover((beer-sample
.name
))”
],