Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 49780 invoked from network); 31 May 2007 15:39:37 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 31 May 2007 15:39:37 -0000 Received: (qmail 37193 invoked by uid 500); 31 May 2007 15:39:41 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 37176 invoked by uid 500); 31 May 2007 15:39:41 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 37167 invoked by uid 99); 31 May 2007 15:39:40 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 31 May 2007 08:39:40 -0700 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 31 May 2007 08:39:36 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 33CEC714182 for ; Thu, 31 May 2007 08:39:16 -0700 (PDT) Message-ID: <9209330.1180625956209.JavaMail.jira@brutus> Date: Thu, 31 May 2007 08:39:16 -0700 (PDT) From: "Andrey Yakushev (JIRA)" To: commits@harmony.apache.org Subject: [jira] Updated: (HARMONY-3314) [drlvm][shutdown][thread] DRLVM hangs on exit while detaching thread In-Reply-To: <11304542.1173198024499.JavaMail.root@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HARMONY-3314?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrey Yakushev updated HARMONY-3314: ------------------------------------- Attachment: 3314.patch One of JDWP agent daemon locked thread group monitor and was killed by vm shutdown process. Main thread tries deregistering themselves in thread group and hangs on monitor waiting. Race condition appeared because JDWP agent didn't wait its daemon threads finishing when handles VMDeath event. It only waits his proc exit. I've tried to correct agent and add Thread.join for daemons, see 3314.patch attached. Not deep testing on Windows showed no fails on VMDeathTest during 1 hour test run (219 iterations). I'm going to run this test overnight and check other tests and Linux later. So the attached patch is not for immediate commit, but rather for evaluation. > [drlvm][shutdown][thread] DRLVM hangs on exit while detaching thread > -------------------------------------------------------------------- > > Key: HARMONY-3314 > URL: https://issues.apache.org/jira/browse/HARMONY-3314 > Project: Harmony > Issue Type: Bug > Components: DRLVM, JDK > Environment: Linux/ia32, Windows/ia32, Harmony-jdk-r514598, Harmony-jdk-r533073 > Reporter: Ivan Popov > Assignee: weldon washburn > Attachments: 3314.patch > > > Many JDWP tests run long time on Linux because DRLVM intermittently crashed at exit. > For example, the following test > org.apache.harmony.jpda.tests.jdwp.Events.VMDeathTest > Here is typical diagnostics in the test output: > Waiting for debuggee exit > STDERR> SIGSEGV in VM code. > STDERR> Stack trace: > STDERR> 1: ?? (??:-1) > STDERR> addr2line: '[heap]': No such file > Ignoring exception in ProcessWaiter thread interrupted: java.lang.InterruptedException > # ERROR: Enforced debuggee termination > To reproduce this failure: > 1. create Harmony JDK with federated build: > svn checkout https://svn.apache.org/repos/asf/harmony/enhanced/trunk > cd trunk > ant > 2. goto jdktools directory, add junit to classpath, and run particular test: > cd working_jdktools > export CLASSPATH=<...>/trunk/common_resources/depends/jars/junit_3.8.2/junit.jar > ant test -Dbuild.module=jpda -Dtest.case=org.apache.harmony.jpda.tests.jdwp.Events.VMDeathTest > 3. see results in <...>/trunk/working_jdktools/build/test_report/html/index.html > It is possible also to run test directly from command line: > cd working_jdktools > deploy/jdk/bin/java -classpath ../common_resources/depends/jars/junit_3.8.2/junit.jar:build/tests/classes \ > org.apache.harmony.jpda.tests.jdwp.Events.VMDeathTest -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.