Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Accumulo BatchWriter close()永远无法使用_Java_Accumulo - Fatal编程技术网

Java Accumulo BatchWriter close()永远无法使用

Java Accumulo BatchWriter close()永远无法使用,java,accumulo,Java,Accumulo,例如,当我使用BatchWriter写入accumulo时,我使用的代码如下: BatchWriter writer = conn.createBatchWriter("table", memBuf, timeout, numThreads) writer.add(mutation); writer.close(); 当我使用“writer.add(mutation)”时,我发现java代码卡在了“writer.close()”中。但是当我删除“writer.add(mutation

例如,当我使用BatchWriter写入accumulo时,我使用的代码如下:

BatchWriter writer =
    conn.createBatchWriter("table", memBuf, timeout, numThreads)

writer.add(mutation);
writer.close();

当我使用“writer.add(mutation)”时,我发现java代码卡在了“writer.close()”中。但是当我删除“writer.add(mutation);”时,它通过了“writer.close()”。有人知道如何解决BatchWriter close()问题吗?

检查Accumulo监视器是否存在错误。如果只添加一个变体,则在关闭BatchWriter时,它将被发送到服务器(出于性能原因,将变体批处理在一起)。您的客户端可能正在等待至少一个TabletServer的响应


您还可以从客户机和tabletserver收集stackdump,显示代码当前被卡住的位置(例如使用
jstack

检查Accumulo监视器是否存在错误。如果只添加一个变体,则在关闭BatchWriter时,它将被发送到服务器(出于性能原因,将变体批处理在一起)。您的客户端可能正在等待至少一个TabletServer的响应

您还可以从客户机和tabletserver收集stackdump,显示代码当前被卡住的位置(例如使用
jstack

(注意:没有足够的代表添加为注释)

另一个调试提示:使用accumulo外壳,您可以打开调试模式(在accumulo外壳中键入
debug
);然后,您可以尝试手动插入键,甚至只是简单地扫描要插入的行。调试信息将打印出accumulo与之通信以执行命令的服务器序列。这可以快速将您指向有问题的主机。

(注意:没有足够的代表添加为注释)


另一个调试提示:使用accumulo外壳,您可以打开调试模式(在accumulo外壳中键入
debug
);然后,您可以尝试手动插入键,甚至只是简单地扫描要插入的行。调试信息将打印出accumulo与之通信以执行命令的服务器序列。这可以快速将您指向有问题的主机。

谢谢您的回答。是的,我的同事说最好检查一下tserver日志,这肯定会有帮助。我的问题是我在accumulo的桌子不好。当我尝试向它写入变异时,它只是挂起,没有日志放在控制台中。删除坏表并创建新表后,问题解决了。奇怪,Accumulo的哪个版本?如果您还有Accumulo日志,请随时发送给我们user@accumulo.apache.org或者在我们的JIRA上创建一个问题我的版本是1.6.5。我检查了tserver日志,实际上我没有发现任何与坏表相关的内容。当表坏了时,它只是静音,这不是一件好事……我在控制台中看不到任何异常,在accumulo monitor或tserver日志中也看不到与坏表相关的错误或警告。希望这能帮助你提高accumulo:)谢谢你的回答。是的,我的同事说最好检查一下tserver日志,这肯定会有帮助。我的问题是我在accumulo的桌子不好。当我尝试向它写入变异时,它只是挂起,没有日志放在控制台中。删除坏表并创建新表后,问题解决了。奇怪,Accumulo的哪个版本?如果您还有Accumulo日志,请随时发送给我们user@accumulo.apache.org或者在我们的JIRA上创建一个问题我的版本是1.6.5。我检查了tserver日志,实际上我没有发现任何与坏表相关的内容。当表坏了时,它只是静音,这不是一件好事……我在控制台中看不到任何异常,在accumulo monitor或tserver日志中也看不到与坏表相关的错误或警告。希望这能帮助您提高accumulo:)