[ https://issues.apache.org/jira/browse/NIFI-4167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16080822#comment-16080822 ]
ASF subversion and git services commented on NIFI-4167: ------------------------------------------------------- Commit 87e062ff557d18aa3f1f7e2906357c81236f0328 in nifi's branch refs/heads/master from [~markap14] [ https://git-wip-us.apache.org/repos/asf?p=nifi.git;h=87e062f ] NIFI-4167: StandardResourceClaimManager should not synchronize on a ResourceClaim in order to determine the claim count. This closes #1996 > Occasional deadlock when trying to clean up old Content Claims > -------------------------------------------------------------- > > Key: NIFI-4167 > URL: https://issues.apache.org/jira/browse/NIFI-4167 > Project: Apache NiFi > Issue Type: Bug > Components: Core Framework > Reporter: Mark Payne > Assignee: Mark Payne > Priority: Critical > Fix For: 1.4.0 > > > Occasionally we'll see the Content Repository stop cleaning up old claims. A > thread dump shows: > {code} > "FileSystemRepository Workers Thread-3" Id=97 BLOCKED on > org.apache.nifi.controller.repository.claim.StandardResourceClaim@6b5aa020 > at > org.apache.nifi.controller.repository.claim.StandardResourceClaimManager.getClaimantCount(StandardResourceClaimManager.java:73) > > at > org.apache.nifi.controller.repository.claim.StandardResourceClaim.isInUse(StandardResourceClaim.java:120) > > at > org.apache.nifi.controller.repository.FileSystemRepository.remove(FileSystemRepository.java:612) > > at > org.apache.nifi.controller.repository.FileSystemRepository.access$1200(FileSystemRepository.java:83) > > at > org.apache.nifi.controller.repository.FileSystemRepository$ArchiveOrDestroyDestructableClaims.run(FileSystemRepository.java:1442) > > {code} > While another thread shows that it's being marked as Destructable: > {code} > "pool-10-thread-1" Id=132 TIMED_WAITING on > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@38063d7e > > at sun.misc.Unsafe.park(Native Method) > at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) > at > java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) > > at > java.util.concurrent.LinkedBlockingQueue.offer(LinkedBlockingQueue.java:385) > at > org.apache.nifi.controller.repository.claim.StandardResourceClaimManager.markDestructable(StandardResourceClaimManager.java:152) > > - waiting on > org.apache.nifi.controller.repository.claim.StandardResourceClaim@6b5aa020 > at > org.apache.nifi.controller.repository.WriteAheadFlowFileRepository.markDestructable(WriteAheadFlowFileRepository.java:186) > > at > org.apache.nifi.controller.repository.WriteAheadFlowFileRepository.onGlobalSync(WriteAheadFlowFileRepository.java:287) > > at > org.wali.MinimalLockingWriteAheadLog.checkpoint(MinimalLockingWriteAheadLog.java:565) > > - waiting on org.wali.MinimalLockingWriteAheadLog@65ab87e4 > at > org.apache.nifi.controller.repository.WriteAheadFlowFileRepository.checkpoint(WriteAheadFlowFileRepository.java:416) > > {code} -- This message was sent by Atlassian JIRA (v6.4.14#64029)