accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From z11373 <>
Subject Re: exception thrown during minor compaction
Date Tue, 01 Sep 2015 19:24:54 GMT
Hi Josh,
I figured it out that it's actually a human bug :-)
There is existing code somewhere which I overlooked earlier, it wrote to the
table with empty value, hence makes sense it's giving that error.

I'll try to enforce the semantic from our use case, delete the row shouldn't
happen, and instead it should insert with -1 as value, so I should be good
here. I also tested deleting a single row, without re-insert, and that row
not returned from running scan command, which is correct. I didn't try
re-add that row, which I guess would hit that bug you guys mentioned.

I have one more question, is it possible to keep the row with value is
greater than 1? For example, let say I insert:
['foo', 1]
['foo', 1]
['bar', 1]
['foo', 1]

The scan currently returns:
['bar', 1]
['foo', 3]

I want it only returns:
['foo', 3]

So basically, during compaction it doesn't include those with value = 1 to
new files, hence this will also make the stats table small since it has so
many rows with value = 1 (which we don't care). Hopefully the solution also
can be used for value is other than 1 (i.e. keep rows with value > 10)
It looks like I may be able to use the built-in RegEx filter for that, but
perhaps there is better way?

Oh, another thing that I observed during my testing:

root@dev > setiter -t combiner2 -p 15 -scan -minc -majc -n sumcombiners
-class org.apache.accumulo.core.iterators.user.SummingCombiner
SummingCombiner interprets Values as Longs and adds them together.  A
variety of encodings (variable length, fixed length, or string) are
----------> set SummingCombiner parameter all, set to true to apply Combiner
to every column, otherwise leave blank. if true, columns option will be
ignored.: true
----------> set SummingCombiner parameter columns, <col fam>[:<col
qual>]{,<col fam>[:<col qual>]} escape non-alphanum chars using %<hex>.:
----------> set SummingCombiner parameter lossy, if true, failed decodes are
ignored. Otherwise combiner will error on failed decodes (default false):
----------> set SummingCombiner parameter type,
2015-09-01 15:22:46,587 [shell.Shell] ERROR:
java.lang.IllegalArgumentException: bad encoder option

Do you know why I got that error?
'org.apache.accumulo.core.client.lexicoder.LongLexicoder' should be the
correct full class name.

Thanks a lot,

View this message in context:
Sent from the Developers mailing list archive at

View raw message