org.voltdb.Distributer.getPartitionKeys中的NPE

时间:2019-03-31 10:46:49

标签: voltdb

我注册了吉拉。.除了拉取请求外,我不确定如何报告问题。这里存在一个错误,因为.get()的结果可以为null。我认为可能有更好的信息可用于补充异常。

在org.voltdb.Distributer中

    if (m_partitionUpdateStatus.get().getStatus() != ClientResponse.SUCCESS) {
        throw new ProcCallException(m_partitionUpdateStatus.get(), null, null);
    }

示例堆栈跟踪

org.voltdb.client.ProcCallException: null
at org.voltdb.client.Distributer.getPartitionKeys(Distributer.java:1561) ~[voltdbclient-8.4.1.jar!/:?]
at org.voltdb.client.ClientImpl.callAllPartitionProcedure(ClientImpl.java:1071) ~[voltdbclient-8.4.1.jar!/:?]
at zipkin2.autoconfigure.storage.voltdb.VoltDBScheduledTasks.processCompleteTraces(VoltDBScheduledTasks.java:54) ~[voltdb.jar!/:?]

1 个答案:

答案 0 :(得分:1)

我为此记录了一个故障单:https://issues.voltdb.com/browse/ENG-15784

如果捕获到异常,则可以调用ProcCallException.getClientResponse()。getStatusString(),该信息应说明为什么客户端无法获取其处理callAllPartitionProcedure()调用所需的分区键值。

披露:我在VoltDB工作