accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From John Vines <john.w.vi...@ugov.gov>
Subject Re: How Can Accumulo Gracefully Recover From "must specify columns" error?
Date Sat, 17 Mar 2012 07:28:38 GMT
This is a known bug. The compaction code never breaks out from itself to
reload various iterator configurations.

To get around this issue in the meantime, disable the iterator (in your
case, combiner) and then kill the tserver process which is throwing the
errors. You can restart the tserver right away and you should be fine.

Sent from my phone, so pardon the typos and brevity.
On Mar 17, 2012 2:45 AM, "David Medinets" <david.medinets@gmail.com> wrote:

> I am playing with the Combiner feature. I created my own combiner, put
> it in a jar file in the lib/ext directory. Then started Accumulo and
> used a java program to create a table and add an iterator. Of course,
> I defined the combiner incorrectly and broke the system. I shut
> accumulo down, then restarted and tried to delete the offending table.
> The system hung on the deletetable command.
>
> I feel accumulo needs to be more robust to that it can handle this
> kind of user mistake.
>
> At the moment, it seems like my accumulo instance is hosed. I think I
> need to delete it from hdfs and initialize again. Before I do that
> however, can I do something to save the state and pass it along to
> someone to add testing or debugging?
>
> I will shutdown accumulo and leave the system alone until I hear back.
> I'd have to lose the current, corrupted state if it is useful to
> someone.
>
> Here are the errors from the log files.
>
> 16 22:35:46,829 [tabletserver.MinorCompactor] WARN : MinC failed (Must
> specify columns option) to create
> /accumulo/tables/a/default_tablet/F00000hp.rf_tmp retrying ...
> java.lang.IllegalArgumentException: Must specify columns option
>        at
> org.apache.accumulo.core.iterators.Combiner.init(Combiner.java:221)
>        at
> org.apache.accumulo.core.iterators.IteratorUtil.loadIterators(IteratorUtil.java:234)
>        at
> org.apache.accumulo.core.iterators.IteratorUtil.loadIterators(IteratorUtil.java:210)
>        at
> org.apache.accumulo.core.iterators.IteratorUtil.loadIterators(IteratorUtil.java:188)
>        at
> org.apache.accumulo.core.iterators.IteratorUtil.loadIterators(IteratorUtil.java:182)
>        at
> org.apache.accumulo.server.tabletserver.Compactor.compactLocalityGroup(Compactor.java:261)
>        at
> org.apache.accumulo.server.tabletserver.Compactor.call(Compactor.java:139)
>        at
> org.apache.accumulo.server.tabletserver.MinorCompactor.call(MinorCompactor.java:80)
>        at
> org.apache.accumulo.server.tabletserver.Tablet.minorCompact(Tablet.java:2135)
>        at
> org.apache.accumulo.server.tabletserver.Tablet.access$4300(Tablet.java:141)
>        at
> org.apache.accumulo.server.tabletserver.Tablet$MinorCompactionTask.run(Tablet.java:2214)
>        at
> org.apache.accumulo.core.util.LoggingRunnable.run(LoggingRunnable.java:34)
>        at
> org.apache.accumulo.cloudtrace.instrument.TraceRunnable.run(TraceRunnable.java:47)
>        at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>        at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>        at java.lang.Thread.run(Thread.java:722)
>
> 16 22:39:41,562 [log.TabletServerLogger] INFO : Log write failed:
> another thread probably closed the log
> 16 22:39:41,586 [log.TabletServerLogger] ERROR: Unable to cleanly
> close logger 127.0.0.1:11224: NoSuchLogIDException()
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message