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 available ----------> 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): <TRUE|FALSE>: ----------> set SummingCombiner parameter type, <VARLEN|FIXEDLEN|STRING|fullClassName>: org.apache.accumulo.core.client.lexicoder.LongLexicoder 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, Z -- View this message in context: http://apache-accumulo.1065345.n5.nabble.com/exception-thrown-during-minor-compaction-tp15010p15030.html Sent from the Developers mailing list archive at Nabble.com.