Uploaded image for project: 'Hadoop YARN'
  1. Hadoop YARN
  2. YARN-8291

RMRegistryOperationService don't have limit on AsyncPurge threads

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 3.0.0
    • None
    • yarn
    • None

    Description

      When there are more than 10000+ containers finished - RMRegistryOperationService will create 10000+ threads for performing AsyncPurge which can slowdown the ResourceManager process. There should be a limit on the number of threads.

      "RegistryAdminService 554485" #824351 prio=5 os_prio=0 tid=0x00007fe4b2bc9800 nid=0xf8ed in Object.wait() [0x00007fe31a5e4000]
         java.lang.Thread.State: WAITING (on object monitor)
              at java.lang.Object.wait(Native Method)
              at java.lang.Object.wait(Object.java:502)
              at org.apache.zookeeper.ClientCnxn.submitRequest(ClientCnxn.java:1386)
              - locked <0x00000007902ec7d8> (a org.apache.zookeeper.ClientCnxn$Packet)
              at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1040)
              at org.apache.curator.framework.imps.ExistsBuilderImpl$2.call(ExistsBuilderImpl.java:172)
              at org.apache.curator.framework.imps.ExistsBuilderImpl$2.call(ExistsBuilderImpl.java:161)
              at org.apache.curator.RetryLoop.callWithRetry(RetryLoop.java:107)
              at org.apache.curator.framework.imps.ExistsBuilderImpl.pathInForeground(ExistsBuilderImpl.java:158)
              at org.apache.curator.framework.imps.ExistsBuilderImpl.forPath(ExistsBuilderImpl.java:148)
              at org.apache.curator.framework.imps.ExistsBuilderImpl.forPath(ExistsBuilderImpl.java:36)
              at org.apache.hadoop.registry.client.impl.zk.CuratorService.zkStat(CuratorService.java:455)
              at org.apache.hadoop.registry.client.impl.zk.RegistryOperationsService.stat(RegistryOperationsService.java:137)
              at org.apache.hadoop.registry.client.binding.RegistryUtils.statChildren(RegistryUtils.java:210)
              at org.apache.hadoop.registry.server.services.RegistryAdminService.purge(RegistryAdminService.java:450)
              at org.apache.hadoop.registry.server.services.RegistryAdminService.purge(RegistryAdminService.java:520)
              at org.apache.hadoop.registry.server.services.RegistryAdminService$AsyncPurge.call(RegistryAdminService.java:570)
              at org.apache.hadoop.registry.server.services.RegistryAdminService$AsyncPurge.call(RegistryAdminService.java:543)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
              at java.lang.Thread.run(Thread.java:745)
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            prabhujoseph Prabhu Joseph
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: