accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Josh Elser (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ACCUMULO-3774) Deadlock after recovering root tablet
Date Tue, 12 May 2015 18:20:00 GMT

    [ https://issues.apache.org/jira/browse/ACCUMULO-3774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14540395#comment-14540395
] 

Josh Elser commented on ACCUMULO-3774:
--------------------------------------

Would it make things easier if we pinned a specific WAL _just_ for the root tablet? We could
have a single place in ZK to track that and then specific logic for tservers. I'm not sure
how much more complexity that would add though. Then we should use ZK+sync to make sure we
always have a consistent view of the WAL for root (and have some great logging whenever we
do something to it).

> Deadlock after recovering root tablet
> -------------------------------------
>
>                 Key: ACCUMULO-3774
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-3774
>             Project: Accumulo
>          Issue Type: Bug
>         Environment: Hadoop 2.7.0, ZK 3.4.6, Accumulo 83d1b8388ad807d678c9a3a922e5025faa9a5933,
20 node m3.large EC2 cluster
>            Reporter: Keith Turner
>            Assignee: Eric Newton
>            Priority: Blocker
>              Labels: 1.7.0_QA
>             Fix For: 1.8.0
>
>         Attachments: ACCUMULO-3774-01.patch
>
>
> I started CI running against 1.7.0-SNAP.   After CI ran for while I started agitation.
  Then everything froze up.   The root tablet node was killed, the root tablet had a lot of
walogs (will open a seperate issue for this), the root tablet was reloaded on another machine.
 However it hung up while loading with the following issue.  The minor compaction after recovery
was trying to write to the root tablet.  This happened before the root tablet location was
set.
> {noformat}
> "Minor compacting +r<<" daemon prio=10 tid=0x00000000046cd800 nid=0x3508 in Object.wait()
[0x00007fb0ac3b1000]
>    java.lang.Thread.State: WAITING (on object monitor)
>         at java.lang.Object.wait(Native Method)
>         at java.lang.Object.wait(Object.java:503)
>         at org.apache.accumulo.core.client.impl.TabletServerBatchWriter.waitRTE(TabletServerBatchWriter.java:459)
>         at org.apache.accumulo.core.client.impl.TabletServerBatchWriter.close(TabletServerBatchWriter.java:352)
>         - locked <0x000000078d154840> (a org.apache.accumulo.core.client.impl.TabletServerBatchWriter)
>         at org.apache.accumulo.core.client.impl.BatchWriterImpl.close(BatchWriterImpl.java:54)
>         at org.apache.accumulo.server.util.MetadataTableUtil.markLogUnused(MetadataTableUtil.java:1131)
>         at org.apache.accumulo.tserver.TabletServer.markUnusedWALs(TabletServer.java:3032)
>         at org.apache.accumulo.tserver.TabletServer.minorCompactionFinished(TabletServer.java:2917)
>         at org.apache.accumulo.tserver.tablet.DatafileManager.bringMinorCompactionOnline(DatafileManager.java:440)
>         at org.apache.accumulo.tserver.tablet.Tablet.minorCompact(Tablet.java:956)
>         at org.apache.accumulo.tserver.tablet.MinorCompactionTask.run(MinorCompactionTask.java:84)
>         at org.apache.accumulo.tserver.tablet.Tablet.minorCompactNow(Tablet.java:1080)
>         at org.apache.accumulo.tserver.TabletServer$AssignmentHandler.run(TabletServer.java:2124)
>         at org.apache.accumulo.tserver.TabletServer$ThriftClientHandler$3.run(TabletServer.java:1510)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message