Hello Mailing List:

I have an iterator that will scan an entire table and only return keys that
match these criteria:

   1. If a specific CF is "invalid" according to some criteria
   2. If a specific CF is missing on a row
   3. If there are multiple entries for a specific CF

#1 would be easy to accomplish with a Filter, however #2 and #3 have proven
to be more tricky. As I understand the problem, Accumulo can, at any point,
destroy an iterator and re-call init. I am keeping some internal state
related to a row (namely a count of how many times I've seen that specific
CF).

How can I keep the state I need for an entire row?

I've looked at the RowEncodingIterator along with the WholeRowIterator, but
based on my understanding, it feels like Accumulo should be allowed to
destroy their state at any time and cause them to effectively break. Is
there a guarantee that an iterator won't get destroyed mid row?

Thanks,

- Logan

Reply via email to