Return-Path: Delivered-To: apmail-myfaces-dev-archive@www.apache.org Received: (qmail 83833 invoked from network); 5 Feb 2010 16:14:22 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 5 Feb 2010 16:14:22 -0000 Received: (qmail 71861 invoked by uid 500); 5 Feb 2010 16:14:22 -0000 Delivered-To: apmail-myfaces-dev-archive@myfaces.apache.org Received: (qmail 71793 invoked by uid 500); 5 Feb 2010 16:14:22 -0000 Mailing-List: contact dev-help@myfaces.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "MyFaces Development" Delivered-To: mailing list dev@myfaces.apache.org Received: (qmail 71785 invoked by uid 99); 5 Feb 2010 16:14:22 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 05 Feb 2010 16:14:22 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of lu4242@gmail.com designates 209.85.216.174 as permitted sender) Received: from [209.85.216.174] (HELO mail-px0-f174.google.com) (209.85.216.174) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 05 Feb 2010 16:14:11 +0000 Received: by pxi4 with SMTP id 4so4144621pxi.32 for ; Fri, 05 Feb 2010 08:13:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type; bh=T9eBe82aim6Voz+ViH7Bp/FUevENwwiZ+6E+gKbXiso=; b=miBGulQC9pDdP10OKPi5TAk7AcdT5DtnGpNGQXl26AMylTQAwLGuTvo+2/XhQBSt1F j6yQ8TbRNxADaHynvT72onTXz9ZH3nzbHXSjyI2ZSouqdlf2eYvJbggErrGGxkBrOAvt Wo+Jmf+9gcexI2ktAfMQ8IsN0tYz34i2VGaWg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=rCqwjnbBXJCaBUzJshZqeONerFM0jAX9SRs+qY52/PjZAPbf4eteIoBIH6J/gRUbJa eOYussZX/Su1E0GLoyeOyn5zh7Zi/362f24QeIu7CQZGy7ITocRnvz8BWgowljAQ2+wh NP+PeWFaFlYSsBxrVMN1Sm11S08Y2Ey6sU/pE= MIME-Version: 1.0 Received: by 10.142.119.42 with SMTP id r42mr1851238wfc.188.1265386430266; Fri, 05 Feb 2010 08:13:50 -0800 (PST) In-Reply-To: <1265382390.4637.16.camel@markoc-desktop> References: <1265382390.4637.16.camel@markoc-desktop> Date: Fri, 5 Feb 2010 11:13:50 -0500 Message-ID: Subject: Re: [core] ClassLoaderResourceLoader.getLibraryVersion(String) performace From: Leonardo Uribe To: MyFaces Development Content-Type: multipart/alternative; boundary=001636e0ba01adfe31047edcbc48 X-Virus-Checked: Checked by ClamAV on apache.org --001636e0ba01adfe31047edcbc48 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi Yes, that one is a big problem. There is no way to "traverse" a jar file without iterating over all entries to get the library version and resource version. That means the current algorithm do that all times a resource is rendered. This is really bad. I remember someone commented that on jsr-314-open at jcp.org mailing list, and checking the latest ri code (2.0.2-b10), library and resource version feature was removed. It seems a decision was taken there. Checking more, the topic describing this is: [jsr-314-open] Need guidance: invalid assumptions in design of resource versioning feature We should change our algorithm too to prevent this performance problem. regards, Leonardo Uribe 2010/2/5 Martin Koci > Hi, > > during profiling YourKitProfiler always marks > org.apache.myfaces.resource.ClassLoaderResourceLoader.getLibraryVersion(S= tring) > as hotspot - that method always takes 30--50% CPU time per one > request/response. Is it a known problem? I will provide more information > later. > > Regards, > > Martin Ko=C4=8D=C3=AD > > > > > --001636e0ba01adfe31047edcbc48 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi

Yes, that one is a big problem. There is no way to "traverse= " a jar file without iterating over all entries to get the library ver= sion and resource version. That means the current algorithm do that all tim= es a resource is rendered. This is really bad.

I remember someone commented that on jsr-314-open at jcp.org mailing list, and checking the latest ri code (2.0.2-b= 10), library and resource version feature was removed. It seems a decision = was taken there.

Checking more, the topic describing this is:

[jsr-314-open] Need= guidance: invalid assumptions in design of resource versioning feature
=
We should change our algorithm too to prevent this performance problem.=

regards,

Leonardo Uribe

2010/2= /5 Martin Koci <martin.koci@aura.cz>
Hi,

during =C2=A0profiling YourKitProfiler always marks
org.apache.myfaces.resource.ClassLoaderResourceLoader.getLibraryVersion(Str= ing) as hotspot - that method always takes 30--50% CPU time per one request= /response. Is it a known problem? I will provide more information later.
Regards,

Martin Ko=C4=8D=C3=AD





--001636e0ba01adfe31047edcbc48--