使用" BETEEN"在OrientDB 2.2.17中声明的LONG-EMBEDDED-LIST属性上的运算符

时间:2017-04-25 05:55:10

标签: orientdb orientdb-2.1

我正在使用OrientDB 2.2.17(企业版),我在搜索数据时遇到问题:

  1. 我有一个名为EN70的顶点,其属性为:EP70_4,类型为'嵌入列表= LONG'。

  2. 我在这个' EP70_4'中添加了一个带有[2,3,4]值的顶点的记录。属性。

  3. 此属性的索引:Not_Unique(sbtree)。 [必须支持范围查询]

  4. SELECT * FROM EN70 WHERE(EP70_4> = 1)正在运行并返回我的记录。

  5. SELECT * FROM EN70 WHERE(EP70_4< = 3)正在运行并返回我的记录。

  6. 运营商"在"之间"不是在催促并抛出异常: SELECT * FROM EN70 WHERE(EP70_4 BETWEEN 1和3)

  7. 我试图模拟"之间的#34;运营商: SELECT * FROM EN70 WHERE((EP70_4> = 1)AND(EP70_4< = 3))不工作 但它没有用。
  8. 第6和第7节都引发了一个例外:

    在查询' SELECT * FROM EN70 WHERE(EP70_4 BETWEEN 1 AND 3)'中使用索引EN70.EP70_4时出错。可能你需要重建索引。现在使用群集扫描执行查询 java.lang.ClassCastException:java.util.ArrayList无法强制转换为java.lang.Long         在com.orientechnologies.common.serialization.types.OLongSerializer.preprocess(OLongSerializer.java:36)         at com.orientechnologies.orient.core.index.sbtree.local.OSBTree.iterateEntriesBetweenAscOrder(OSBTree.java:1474)         at com.orientechnologies.orient.core.index.sbtree.local.OSBTree.iterateEntriesBetween(OSBTree.java:771)         at com.orientechnologies.orient.core.index.engine.OSBTreeIndexEngine.iterateEntriesBetween(OSBTreeIndexEngine.java:185)         at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.doIterateIndexEntriesBetween(OAbstractPaginatedStorage.java:2065)         at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.iterateIndexEntriesBetween(OAbstractPaginatedStorage.java:2053)         at com.orientechnologies.orient.core.index.OIndexMultiValues.iterateEntriesBetween(OIndexMultiValues.java:275)         at com.orientechnologies.orient.core.index.OIndexAbstractDelegate.iterateEntriesBetween(OIndexAbstractDelegate.java:104)         at com.orientechnologies.orient.core.index.OIndexTxAwareMultiValue.iterateEntriesBetween(OIndexTxAwareMultiValue.java:339)         at com.orientechnologies.orient.core.sql.operator.OQueryOperatorBetween.executeIndexQuery(OQueryOperatorBetween.java:131)         at com.orientechnologies.orient.core.sql.OCommandExecutorSQLSelect.searchForIndexes(OCommandExecutorSQLSelect.java:2184)         at com.orientechnologies.orient.core.sql.OCommandExecutorSQLSelect.searchInClasses(OCommandExecutorSQLSelect.java:1001)         at com.orientechnologies.orient.core.sql.OCommandExecutorSQLResultsetAbstract.assignTarget(OCommandExecutorSQLResultsetAbstract.java:209)         在com.orientechnologies.orient.core.sql.OCommandExecutorSQLSelect.assignTarget(OCommandExecutorSQLSelect.java:530)         在com.orientechnologies.orient.core.sql.OCommandExecutorSQLSelect.executeSearch(OCommandExecutorSQLSelect.java:512)         在com.orientechnologies.orient.core.sql.OCommandExecutorSQLSelect.execute(OCommandExecutorSQLSelect.java:488)         在com.orientechnologies.orient.core.sql.OCommandExecutorSQLDelegate.execute(OCommandExecutorSQLDelegate.java:74)         at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.executeCommand(OAbstractPaginatedStorage.java:2624)         at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.command(OAbstractPaginatedStorage.java:2570)         在com.orientechnologies.orient.core.command.OCommandRequestTextAbstract.execute(OCommandRequestTextAbstract.java:69)         在com.orientechnologies.orient.server.network.protocol.http.command.post.OServerCommandPostCommand.execute(OServerCommandPostCommand.java:106)         在com.orientechnologies.orient.graph.server.command.OServerCommandPostCommandGraph.execute(OServerCommandPostCommandGraph.java:37)         at com.orientechnologies.orient.server.network.protocol.http.ONetworkProtocolHttpAbstract.service(ONetworkProtocolHttpAbstract.java:169)         at com.orientechnologies.orient.server.network.protocol.http.ONetworkProtocolHttpAbstract.execute(ONetworkProtocolHttpAbstract.java:622)         在com.orientechnologies.common.thread.OSoftThread.run(OSoftThread.java:77)

    它能是什么?请帮帮我......

1 个答案:

答案 0 :(得分:0)

我说这是一个错误,我强烈建议您在此处报告:https://github.com/orientechnologies/orientdb/issues