【发布时间】:2018-02-24 23:34:40
【问题描述】:
Orientdb 在 Nullpointer 异常之后使用二进制协议在每个实时查询订阅上抛出:
执行实时查询订阅者时出错。 com.orientechnologies.orient.server.network.protocol.binary.OLiveCommandResultListener.onLiveResult 的 java.lang.NullPointerException(OLiveCommandResultListener.java:113) 在 com.orientechnologies.orient.core.sql.OCommandExecutorSQLLiveSelect$2.call(OCommandExecutorSQLLiveSelect.java:134) 在 com.orientechnologies.orient.core.sql.OCommandExecutorSQLLiveSelect.execInSeparateDatabase(OCommandExecutorSQLLiveSelect.java:144) 在 com.orientechnologies.orient.core.sql.OCommandExecutorSQLLiveSelect.onLiveResult(OCommandExecutorSQLLiveSelect.java:131) 在 com.orientechnologies.orient.core.query.live.OLiveQueryQueueThread.run(OLiveQueryQueueThread.java:69)
实时查询由一个客户端订阅:“从帐户中实时选择 CheckInDateTime 像“2018-02-25%””,Orientdb 也优雅地返回实时请求令牌 ID。但是,当另一个客户使用“update Account set CheckInDateTime = “2018-02-25 13:00:00””更新 Account 时,会抛出提到的 NullPointerexception。我尝试使用版本 2.2.30 和 2.2.32 社区、数据库管理员和服务器管理员帐户。插件的加载似乎也不起作用(即使使用的版本是 2.2.30 和 2.2.32,默认情况下应该在服务器上启用 Live Query)。似乎没有什么可以帮助完成这项工作,还有诸如“从帐户中实时选择”之类的查询(没有 where ...)。
还有什么想法吗?谢谢。
【问题讨论】: