-
Type: Bug
-
Status: Resolved
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 6.0
-
Component/s: Core MongoDB
Implement NXQL BETWEEN for MongoDB because it's useful and currently fails:
Caused by: java.lang.UnsupportedOperationException: BETWEEN at org.nuxeo.ecm.core.storage.mongodb.MongoDBQueryBuilder.walkExpression(MongoDBQueryBuilder.java:144) at org.nuxeo.ecm.core.storage.mongodb.MongoDBQueryBuilder.walkOperand(MongoDBQueryBuilder.java:474) at org.nuxeo.ecm.core.storage.mongodb.MongoDBQueryBuilder.walkOperandList(MongoDBQueryBuilder.java:529) at org.nuxeo.ecm.core.storage.mongodb.MongoDBQueryBuilder.walkAnd(MongoDBQueryBuilder.java:361) at org.nuxeo.ecm.core.storage.mongodb.MongoDBQueryBuilder.walkMultiExpression(MongoDBQueryBuilder.java:353) at org.nuxeo.ecm.core.storage.mongodb.MongoDBQueryBuilder.walkExpression(MongoDBQueryBuilder.java:119) at org.nuxeo.ecm.core.storage.mongodb.MongoDBRepository.queryAndFetch(MongoDBRepository.java:602) at org.nuxeo.ecm.core.storage.dbs.DBSSession.doQueryAndFetch(DBSSession.java:1555) at org.nuxeo.ecm.core.storage.dbs.DBSSession.doQuery(DBSSession.java:1482) at org.nuxeo.ecm.core.storage.dbs.DBSSession.query(DBSSession.java:1455) at sun.reflect.GeneratedMethodAccessor57.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.nuxeo.ecm.core.storage.dbs.DBSRepositoryBase$DBSSessionInvoker.invoke(DBSRepositoryBase.java:297) at com.sun.proxy.$Proxy45.query(Unknown Source) at org.nuxeo.ecm.core.api.AbstractSession.query(AbstractSession.java:1329)
This can be implemented by converting d BETWEEN a AND b into d >= a AND d <= b.