У меня есть приложение Grails 3.3.2 с GORM 6.1.8, и я использую плагин mongodDB grails 6.1.4.
При попытке подключиться к экземпляру 3.4 MongoDB приложение при запуске выдает ошибку:
Причина: com.mongodb.MongoCommandException: команда завершилась неудачно с
ошибка 67: «Значения в шаблоне ключа индекса v: 2 не могут иметь тип bool.
Допускаются только числа> 0, числа <0 и строки. ' на сервере
локальный: 27017. Полный ответ: {"ok": 0.0, "errmsg": "Values
в v: 2 шаблон ключа индекса не может иметь тип bool. Только цифры> 0,
числа <0, допускаются строки. "," code ": 67," codeName ":
"CannotCreateIndex"} </p>
Используя отладчик, я смог найти домен, создание индекса которого не удалось:
class MyClass{
Long field1
String field2
Long index
static mapWith = "mongo"
static mapping = {
database "databasename"
}
static constraints = {
field1 nullable: true
field2 nullable: true
}
}
Он встроен в другой домен.
Что не так с этим классом домена? Я также попытался подключиться к экземпляру MonogoDB 3.6 и 4.0 с той же ошибкой.