Hello!
Tried to create unique and partial index for my notifications collection through NodeJS driver:
db.notifications.createIndex(
{ userId: 1, date: 1, type: 1 },
{ unique: true, partialFilterExpression:
{ type: { $in: ["approveDate", "completeDate"] } }
},
);
But it hasn’t been created.
Tried to do it through Studio3T:
And got the following error:
Mongo Server error (MongoCommandException):
Command failed with error 67 (CannotCreateIndex):
'Error in specification
{ key: { userId: 1, type: 1, date: 1 },
name: "userId_1_type_1_date_1", unique: true,
partialFilterExpression: { type: { $in: [ "approveDate", "completeDate" ] } },
v: 2 }
:: caused by :: Expression not supported in partial index: type $in [ "approveDate" "completeDate" ]
My MongoDB version is 6.0.8. Upgraded to 6.0.9 - results are the same.
According to the documentation everything should work.
But why it is not? What is my mistake here?