diff --git a/src/Client.php b/src/Client.php index 7a2273c..975d624 100644 --- a/src/Client.php +++ b/src/Client.php @@ -404,8 +404,11 @@ public function createIndexes(string $collection, array $indexes, array $options if (\array_key_exists('unique', $index) && $index['unique'] == true) { /** * TODO: Unique Indexes are now sparse indexes, which results into incomplete indexes. + * However, if partialFilterExpression is present, we can't use sparse. */ - $indexes[$key] = \array_merge($index, ['sparse' => true]); + if (!\array_key_exists('partialFilterExpression', $index)) { + $indexes[$key] = \array_merge($index, ['sparse' => true]); + } } }