Return-Path: X-Original-To: apmail-felix-dev-archive@www.apache.org Delivered-To: apmail-felix-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 5B8387D29 for ; Wed, 26 Oct 2011 16:47:08 +0000 (UTC) Received: (qmail 74921 invoked by uid 500); 26 Oct 2011 16:47:08 -0000 Delivered-To: apmail-felix-dev-archive@felix.apache.org Received: (qmail 74857 invoked by uid 500); 26 Oct 2011 16:47:08 -0000 Mailing-List: contact dev-help@felix.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@felix.apache.org Delivered-To: mailing list dev@felix.apache.org Received: (qmail 74849 invoked by uid 99); 26 Oct 2011 16:47:08 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 26 Oct 2011 16:47:08 +0000 X-ASF-Spam-Status: No, hits=-2.3 required=5.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of fmeschbe@adobe.com designates 64.18.1.208 as permitted sender) Received: from [64.18.1.208] (HELO exprod6og107.obsmtp.com) (64.18.1.208) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 26 Oct 2011 16:46:59 +0000 Received: from outbound-smtp-1.corp.adobe.com ([192.150.11.134]) by exprod6ob107.postini.com ([64.18.5.12]) with SMTP; Wed, 26 Oct 2011 09:46:39 PDT Received: from inner-relay-4.eur.adobe.com (inner-relay-4.adobe.com [193.104.215.14]) by outbound-smtp-1.corp.adobe.com (8.12.10/8.12.10) with ESMTP id p9QGix53013009 for ; Wed, 26 Oct 2011 09:45:00 -0700 (PDT) Received: from nacas01.corp.adobe.com (nacas01.corp.adobe.com [10.8.189.99]) by inner-relay-4.eur.adobe.com (8.12.10/8.12.9) with ESMTP id p9QGkVLY021487 for ; Wed, 26 Oct 2011 09:46:35 -0700 (PDT) Received: from eurhub01.eur.adobe.com (10.128.4.30) by nacas01.corp.adobe.com (10.8.189.99) with Microsoft SMTP Server (TLS) id 8.3.192.1; Wed, 26 Oct 2011 09:46:33 -0700 Received: from eurmbx01.eur.adobe.com ([10.128.4.32]) by eurhub01.eur.adobe.com ([10.128.4.30]) with mapi; Wed, 26 Oct 2011 17:46:18 +0100 From: Felix Meschberger To: "dev@felix.apache.org" Date: Wed, 26 Oct 2011 17:46:20 +0100 Subject: Re: Optimization of classloading error cases Thread-Topic: Optimization of classloading error cases Thread-Index: AcyT/sgwGe5aG7nXTyGSPJGLqo3r4Q== Message-ID: <2347D7C6-394A-4FFA-8947-AA29F7953F62@adobe.com> References: <4EA83476.6010107@ungoverned.org> In-Reply-To: <4EA83476.6010107@ungoverned.org> Accept-Language: de-DE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: de-DE, en-US Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Hi, We just have to make sure that such a cache would be bounded ... Regards Felix Am 26.10.2011 um 18:25 schrieb Richard S. Hall: > On 10/26/11 05:02 , Guillaume Sauthier (OW2) wrote: >> Hi all >>=20 >> In one of our project we spotted an intensive usage of ZipFile.getEntry(= ) >> due to Felix trying to access the resource associated with a class when = the >> class is not defined yet. As the requested resource is not boot delegate= d, >> nor imported and neither inside of the bundle, getEntry() returns null a= nd >> Felix continue to follow its classloading algorithm. But trying to acces= s >> the resource is time consumming, and the impact is bigger on performance >> when the same resource is requested for each of our request. >>=20 >> I agree that we could fix this by being more smart in our usage to avoid >> theses error cases, but do you think it could be valuable for Felix to k= eep >> a "cache" of failed resource request, so that, next time Felix try to >> request the resource from the Bundle's content, we simply avoid this ste= p >> and move forward ? >>=20 >> I feel that it should be quite easy to implement that behavior, but befo= re >> starting this task, I want to have your feedback. >> So WDYT ? >=20 > Actually, I thought we already implemented something like this, but I=20 > didn't see it in the code after a quick perusal. I know for a fact that=20 > we at least investigated it at one time, so if it is not in there=20 > already, we must have deemed that it didn't make much of a difference. >=20 > If you want to open an issue and work on it, feel free to work on a=20 > patch, but please get some before and after performance numbers to show=20 > if it is worth it or not. >=20 > Thanks. >=20 > -> richard >=20 >>=20 >> --G >>=20