0

我在涉及 WholeRowIterator 的 Accumulo 1.5.1 遇到问题,并在通过一个键指定范围时让过滤器返回行。

Range testRange = new Range("aa", true, "aa\0", false);

当我将此范围设置为具有关联 WholeRowIterator 的扫描仪时,过滤器不会将指定的行“aa”返回给客户端,即使覆盖的过滤器函数为此范围返回 true。

使用 WholeRowIterator 的扫描仪的范围是否格式错误?什么是正确的范围?

谢谢。

4

2 回答 2

1

您指定的Range应该是正确的。为简单起见,您也可以尝试使用new Range(CharSequence)构造函数。

验证您的数据是否按照您的想法形成 - 您可能会遇到阻碍或其他问题的可见性。转到 shell 并执行 ascan -t [table] -r aa并确保获得结果。

于 2014-09-03T02:03:34.870 回答
0

经过大量挖掘,我能够找到这篇文章:

http://mail-archives.apache.org/mod_mbox/accumulo-user/201207.mbox/%3CCAPMpPc5v83wn_PTqh-Hh1-TfP-PxLELwPQsDHkCKK_KzR3yqUg@mail.gmail.com%3E

WholeRowIterator 需要将其优先级设置为 21 或更高,以免与版本迭代器发生冲突行为。

这是一个烦人的错误,因为它在测试中提供了许多误报。

于 2014-09-05T20:39:09.830 回答