From issues-return-82179-archive-asf-public=cust-asf.ponee.io@ambari.apache.org Sun Jan 31 11:02:02 2021 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mxout1-he-de.apache.org (mxout1-he-de.apache.org [95.216.194.37]) by mx-eu-01.ponee.io (Postfix) with ESMTPS id 8335118065D for ; Sun, 31 Jan 2021 12:02:02 +0100 (CET) Received: from mail.apache.org (mailroute1-lw-us.apache.org [207.244.88.153]) by mxout1-he-de.apache.org (ASF Mail Server at mxout1-he-de.apache.org) with SMTP id EF72B62A2B for ; Sun, 31 Jan 2021 11:02:01 +0000 (UTC) Received: (qmail 11117 invoked by uid 500); 31 Jan 2021 11:02:01 -0000 Mailing-List: contact issues-help@ambari.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ambari.apache.org Delivered-To: mailing list issues@ambari.apache.org Received: (qmail 11105 invoked by uid 99); 31 Jan 2021 11:02:01 -0000 Received: from ec2-52-204-25-47.compute-1.amazonaws.com (HELO mailrelay1-ec2-va.apache.org) (52.204.25.47) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 31 Jan 2021 11:02:01 +0000 Received: from jira2-he-de.apache.org (jira2-he-de.apache.org [168.119.33.54]) by mailrelay1-ec2-va.apache.org (ASF Mail Server at mailrelay1-ec2-va.apache.org) with ESMTPS id D46AC3E86D for ; Sun, 31 Jan 2021 11:02:00 +0000 (UTC) Received: from jira2-he-de.apache.org (localhost.localdomain [127.0.0.1]) by jira2-he-de.apache.org (ASF Mail Server at jira2-he-de.apache.org) with ESMTP id 1C9F1C801C6 for ; Sun, 31 Jan 2021 11:02:00 +0000 (UTC) Date: Sun, 31 Jan 2021 11:02:00 +0000 (UTC) From: "Suraj Naik (Jira)" To: issues@ambari.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Created] (AMBARI-25613) Concurrent Host Modification exception while sending INSTALL/START Host request MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 Suraj Naik created AMBARI-25613: ----------------------------------- Summary: Concurrent Host Modification exception while sending = INSTALL/START Host request Key: AMBARI-25613 URL: https://issues.apache.org/jira/browse/AMBARI-25613 Project: Ambari Issue Type: Bug Components: ambari-server Affects Versions: 2.7.6 Reporter: Suraj Naik java.lang.RuntimeException: START Host request submission failed: java.lang= .RuntimeException: Update Host request submission failed: java.util.Concurr= entModificationException at org.apache.ambari.server.topology.AmbariContext.startHost(AmbariContext.= java:497) at org.apache.ambari.server.topology.ClusterTopologyImpl.startHost(ClusterT= opologyImpl.java:268) at org.apache.ambari.server.topology.tasks.StartHostTask.runTask(StartHostT= ask.java:51) at org.apache.ambari.server.topology.tasks.TopologyHostTask.run(TopologyHos= tTask.java:55) at org.apache.ambari.server.topology.HostOfferResponse$1.run(HostOfferRespo= nse.java:85) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.jav= a:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.ja= va:624) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.RuntimeException: Update Host request submission faile= d: java.util.ConcurrentModificationException at org.apache.ambari.server.controller.internal.HostComponentResourceProvid= er$4.invoke(HostComponentResourceProvider.java:865) at org.apache.ambari.server.controller.internal.HostComponentResourceProvid= er$4.invoke(HostComponentResourceProvider.java:852) at org.apache.ambari.server.controller.internal.AbstractResourceProvider.in= vokeWithRetry(AbstractResourceProvider.java:465) at org.apache.ambari.server.controller.internal.AbstractResourceProvider.mo= difyResources(AbstractResourceProvider.java:346) at org.apache.ambari.server.controller.internal.HostComponentResourceProvid= er.doUpdateResources(HostComponentResourceProvider.java:852) at org.apache.ambari.server.controller.internal.HostComponentResourceProvid= er.start(HostComponentResourceProvider.java:492) at org.apache.ambari.server.topology.AmbariContext.startHost(AmbariContext.= java:494) at org.apache.ambari.server.topology.ClusterTopologyImpl.startHost(ClusterT= opologyImpl.java:268) at org.apache.ambari.server.topology.tasks.StartHostTask.runTask(StartHostT= ask.java:51) at org.apache.ambari.server.topology.tasks.TopologyHostTask.run(TopologyHos= tTask.java:55) at org.apache.ambari.server.topology.HostOfferResponse$1.run(HostOfferRespo= nse.java:85) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.jav= a:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.ja= va:624) at java.lang.Thread.run(Thread.java:748) Caused by: java.util.ConcurrentModificationException: NA at java.util.HashMap$HashIterator.nextNode(HashMap.java:1445) at java.util.HashMap$EntryIterator.next(HashMap.java:1479) at java.util.HashMap$EntryIterator.next(HashMap.java:1477) at java.util.HashMap.putMapEntries(HashMap.java:512) at java.util.HashMap.(HashMap.java:490) at org.apache.ambari.server.topology.HostRequest.getPhysicalTaskMapping(Hos= tRequest.java:458) at org.apache.ambari.server.topology.LogicalRequest.getStageSummaries(Logic= alRequest.java:286) at org.apache.ambari.server.topology.TopologyManager.getPendingHostComponen= ts(TopologyManager.java:823) at org.apache.ambari.server.utils.StageUtils.getClusterHostInfo(StageUtils.= java:306) at org.apache.ambari.server.controller.AmbariManagementControllerImpl.doSta= geCreation(AmbariManagementControllerImpl.java:2788) at org.apache.ambari.server.controller.AmbariManagementControllerImpl.addSt= ages(AmbariManagementControllerImpl.java:3513) at org.apache.ambari.server.controller.internal.HostComponentResourceProvid= er.updateHostComponents(HostComponentResourceProvider.java:707) at org.apache.ambari.server.controller.internal.HostComponentResourceProvid= er$4.invoke(HostComponentResourceProvider.java:857) at org.apache.ambari.server.controller.internal.HostComponentResourceProvid= er$4.invoke(HostComponentResourceProvider.java:852) at org.apache.ambari.server.controller.internal.AbstractResourceProvider.in= vokeWithRetry(AbstractResourceProvider.java:465) at org.apache.ambari.server.controller.internal.AbstractResourceProvider.mo= difyResources(AbstractResourceProvider.java:346) at org.apache.ambari.server.controller.internal.HostComponentResourceProvid= er.doUpdateResources(HostComponentResourceProvider.java:852) at org.apache.ambari.server.controller.internal.HostComponentResourceProvid= er.start(HostComponentResourceProvider.java:492) at org.apache.ambari.server.topology.AmbariContext.startHost(AmbariContext.= java:494) at org.apache.ambari.server.topology.ClusterTopologyImpl.startHost(ClusterT= opologyImpl.java:268) at org.apache.ambari.server.topology.tasks.StartHostTask.runTask(StartHostT= ask.java:51) at org.apache.ambari.server.topology.tasks.TopologyHostTask.run(TopologyHos= tTask.java:55) at org.apache.ambari.server.topology.HostOfferResponse$1.run(HostOfferRespo= nse.java:85) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.jav= a:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.ja= va:624) at java.lang.Thread.run(Thread.java:748) =C2=A0 =C2=A0 My teammate [~ramkrishna]=C2=A0did some analysis on this one by adding logs= and latches and found=C2=A0that the installation and registration though d= one parallely each thread tries to get the entire cluster=E2=80=99s view of= the current physical tasks. So it is bound to happen that when a registrat= ion is happening the other thread can do a getPhysicalTaskMapping(). =C2=A0= (leading to CME) =C2=A0 =C2=A0 =C2=A0 =C2=A0 -- This message was sent by Atlassian Jira (v8.3.4#803005)