Return-Path: Delivered-To: apmail-harmony-dev-archive@www.apache.org Received: (qmail 57663 invoked from network); 29 Jun 2007 07:40:37 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 29 Jun 2007 07:40:37 -0000 Received: (qmail 60163 invoked by uid 500); 29 Jun 2007 07:40:38 -0000 Delivered-To: apmail-harmony-dev-archive@harmony.apache.org Received: (qmail 60139 invoked by uid 500); 29 Jun 2007 07:40:38 -0000 Mailing-List: contact dev-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 dev@harmony.apache.org Received: (qmail 60130 invoked by uid 99); 29 Jun 2007 07:40:38 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 29 Jun 2007 00:40:38 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: local policy) Received: from [134.134.136.20] (HELO mga02.intel.com) (134.134.136.20) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 29 Jun 2007 00:40:33 -0700 Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga101.jf.intel.com with ESMTP; 29 Jun 2007 00:40:12 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.16,473,1175497200"; d="scan'208";a="260278537" Received: from fmsmsx334.amr.corp.intel.com ([132.233.42.1]) by orsmga001.jf.intel.com with ESMTP; 29 Jun 2007 00:40:08 -0700 Received: from mssmsx411.ccr.corp.intel.com ([10.125.2.10]) by fmsmsx334.amr.corp.intel.com with Microsoft SMTPSVC(6.0.3790.1830); Fri, 29 Jun 2007 00:40:08 -0700 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-MimeOLE: Produced By Microsoft Exchange V6.5 Subject: RE: [classlib][awt] test org.apache.harmony.awt.ListenerListTest failed on Linux x86_64 Date: Fri, 29 Jun 2007 11:40:03 +0400 Message-ID: <2A786EB15713B544AB79607529273B04DB20E4@mssmsx411> In-Reply-To: <2A786EB15713B544AB79607529273B04DB1F66@mssmsx411> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: [classlib][awt] test org.apache.harmony.awt.ListenerListTest failed on Linux x86_64 thread-index: Ace5g9RGmiWhkGjQQWGGD8beCpZ3OQAA5geQACTIBsA= References: <7273946b0706212321u6c934b75m63ff2fc134083e51@mail.gmail.com> <2A786EB15713B544AB79607529273B04DB1F24@mssmsx411> <2c9597b90706280556w7802013n5cace686ae9d0057@mail.gmail.com> <2A786EB15713B544AB79607529273B04DB1F66@mssmsx411> From: "Pavlenko, Andrey A" To: X-OriginalArrivalTime: 29 Jun 2007 07:40:08.0213 (UTC) FILETIME=[B7683C50:01C7BA20] X-Virus-Checked: Checked by ClamAV on apache.org I've added additional test case to this test: static class Tmp implements Serializable {} private ArrayList l =3D new ArrayList(); public void test() throws IOException { l.add(new Tmp()); ByteArrayOutputStream byteStream =3D new ByteArrayOutputStream(512); ObjectOutputStream oos =3D new ObjectOutputStream(byteStream); oos.writeObject(l); oos.flush(); oos.close(); } This test case also fails with the same error: java.lang.NullPointerException at java.io.ObjectStreamClass.buildFieldDescriptors(ObjectStreamClass.java:3 22) at java.io.ObjectStreamClass.createClassDesc(ObjectStreamClass.java:229) at java.io.ObjectStreamClass.lookupStreamClass(ObjectStreamClass.java:907) at java.io.ObjectStreamClass.lookupStreamClass(ObjectStreamClass.java:884) at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1 844) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1770) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1734) at org.apache.harmony.awt.ListenerListTest.test(ListenerListTest.java:44) at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java) So, it seems to be not AWT issue. The NPE happens because the method java.io.ObjectStreamField.getType() sometimes returns null. This happens intermittent and only when I run the test in batch with other AWT tests. The null value of the field type appears in the method ObjectStreamField.getTypeInternal() which extracts the type from a weak reference. See the following code: --- ObjectStreamField.java --- private Class getTypeInternal() { if (type instanceof WeakReference) { return (Class) ((WeakReference) type).get(); <-- !!! } return (Class) type; } public Class getType() { Class cl =3D getTypeInternal(); if (isDeserialized && !cl.isPrimitive()) { return Object.class; } return cl; } -------------------- Could somebody take a look at this issue? -----Original Message----- From: Pavlenko, Andrey A [mailto:andrey.a.pavlenko@intel.com]=20 Sent: Thursday, June 28, 2007 5:40 PM To: dev@harmony.apache.org Subject: RE: [classlib][awt] test org.apache.harmony.awt.ListenerListTest failed on Linux x86_64 I used debug. I reproduced the failure on release build. Now I can reproduce the failure only using release build and only running this test in a batch with all AWT tests, but in standalone mode this test passes.=20 -----Original Message----- From: Alexei Zakharov [mailto:alexei.zakharov@gmail.com]=20 Sent: Thursday, June 28, 2007 4:56 PM To: dev@harmony.apache.org Subject: Re: [classlib][awt] test org.apache.harmony.awt.ListenerListTest failed on Linux x86_64 Andrey, Do you use the release version of classlib & DRLVM builds? Or debug? Regards, 2007/6/28, Pavlenko, Andrey A : > Vladimir, > > I can't reproduce this failure on SLES9 x86_64. > > -----Original Message----- > From: Vladimir Ivanov [mailto:ivavladimir@gmail.com] > Sent: Friday, June 22, 2007 10:21 AM > To: dev > Subject: [classlib][awt] test org.apache.harmony.awt.ListenerListTest > failed on Linux x86_64 > > Classlib test org.apache.harmony.awt.ListenerListTest failed DRLVM on > Linux x86_64 with execution log: > ------------------------------------------------------------------- > org.apache.harmony.awt.ListenerListTest > java.lang.NullPointerException > at > java.io.ObjectStreamClass.buildFieldDescriptors(ObjectStreamClass.java:3 > 22) > at > java.io.ObjectStreamClass.createClassDesc(ObjectStreamClass.java:229) > at > java.io.ObjectStreamClass.lookupStreamClass(ObjectStreamClass.java:907) > at > java.io.ObjectStreamClass.lookupStreamClass(ObjectStreamClass.java:884) > at > java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1 > 848) > at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1774) > at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1738) > at > org.apache.harmony.awt.ListenerList.writeObject(ListenerList.java:180) > at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java) > at > java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1305) > at > java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1663) > at > java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1 > 931) > at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1774) > at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1738) > at > org.apache.harmony.awt.ListenerListTest.writeAndRead(ListenerListTest.ja > va:57) > at > org.apache.harmony.awt.ListenerListTest.testSerialize(ListenerListTest.j > ava:46) > at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java) > --------------------------------------------- > > Could someone take care about this issue? > thanks, Vladimir > --=20 Alexei Zakharov, Intel ESSD