Частичные индексы в TokuMX

Недавно мы перешли с MongoDB на TokuMX. В одной коллекции все наши документы имеют числовое поле «docType». Некоторые документы имеют поле «DL_Number», а другие нет. Для документов с полем «DL_Number» комбинация «docType» и «DL_Number» должна служить уникальным индексом.

Используя C ++ Legacy, мы изначально создали такой индекс:

mongo::IndexSpec().addKey("docType").addKey("DL_Number").unique().partialFilterExpression(BSON("DL_Number" << BSON("$exists" << true)));

То, к чему мы стремились, было индексом, в котором «docType» и «DL_Number» предоставили бы уникальный ключ для документов, имеющих поле «DL_Number».

Утверждение сработало как find в MongoDB, но теперь, когда мы перешли на TokuMX, частичный фильтр больше не работает. Попытка вставить второй документ без поля «DL_Number» вызывает исключение.

У кого-нибудь еще была такая проблема с TokuMX? Вы смогли найти обходной путь?

0

Решение

Частичные индексы Особенность MongoDB 3.2, но TokuMX это на основе MongoDB 3.0, поэтому эта функция MongoDB недоступна в TokuMX.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]