You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Leonardo Uribe (JIRA)" <de...@myfaces.apache.org> on 2010/02/05 17:37:27 UTC

[jira] Created: (MYFACES-2538) Remove resourceVersion and libraryVersion from resource identifiers

Remove resourceVersion and libraryVersion from resource identifiers
-------------------------------------------------------------------

                 Key: MYFACES-2538
                 URL: https://issues.apache.org/jira/browse/MYFACES-2538
             Project: MyFaces Core
          Issue Type: Task
          Components: JSR-314
    Affects Versions: 2.0.0-beta
            Reporter: Leonardo Uribe
            Assignee: Leonardo Uribe
            Priority: Critical


Martin Koci From dev list:

"...during  profiling YourKitProfiler always marks
org.apache.myfaces.resource.ClassLoaderResourceLoader.getLibraryVersion(String) 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...."

Answer from Leonardo:

"....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....."

This one is critical to be solved before release beta 2, because it cause a really seriour performance problem.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (MYFACES-2538) Remove resourceVersion and libraryVersion from resource identifiers

Posted by "Leonardo Uribe (JIRA)" <de...@myfaces.apache.org>.
    [ https://issues.apache.org/jira/browse/MYFACES-2538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12830181#action_12830181 ] 

Leonardo Uribe commented on MYFACES-2538:
-----------------------------------------

On:

http://wiki.jcp.org/wiki/index.php?page=JSF+2.0+Rev+A+Change+Log

It is marked like this:


> Remove resourceVersion and libraryVersion from resource identifiers
> -------------------------------------------------------------------
>
>                 Key: MYFACES-2538
>                 URL: https://issues.apache.org/jira/browse/MYFACES-2538
>             Project: MyFaces Core
>          Issue Type: Task
>          Components: JSR-314
>    Affects Versions: 2.0.0-beta
>            Reporter: Leonardo Uribe
>            Assignee: Leonardo Uribe
>            Priority: Critical
>
> Martin Koci From dev list:
> "...during  profiling YourKitProfiler always marks
> org.apache.myfaces.resource.ClassLoaderResourceLoader.getLibraryVersion(String) 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...."
> Answer from Leonardo:
> "....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....."
> This one is critical to be solved before release beta 2, because it cause a really seriour performance problem.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (MYFACES-2538) Remove resourceVersion and libraryVersion from resource identifiers

Posted by "Leonardo Uribe (JIRA)" <de...@myfaces.apache.org>.
    [ https://issues.apache.org/jira/browse/MYFACES-2538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12830181#action_12830181 ] 

Leonardo Uribe edited comment on MYFACES-2538 at 2/5/10 5:27 PM:
-----------------------------------------------------------------

On:

http://wiki.jcp.org/wiki/index.php?page=JSF+2.0+Rev+A+Change+Log

It is marked like this:

C033 	 Errata 	 Modify the javadoc for ResourceHandler to state that for resources residing at "META-INF/resources/" the implementation is not required to support the optional libraryVersion and resourceVersion segments 

      was (Author: lu4242):
    On:

http://wiki.jcp.org/wiki/index.php?page=JSF+2.0+Rev+A+Change+Log

It is marked like this:

  
> Remove resourceVersion and libraryVersion from resource identifiers
> -------------------------------------------------------------------
>
>                 Key: MYFACES-2538
>                 URL: https://issues.apache.org/jira/browse/MYFACES-2538
>             Project: MyFaces Core
>          Issue Type: Task
>          Components: JSR-314
>    Affects Versions: 2.0.0-beta
>            Reporter: Leonardo Uribe
>            Assignee: Leonardo Uribe
>            Priority: Critical
>
> Martin Koci From dev list:
> "...during  profiling YourKitProfiler always marks
> org.apache.myfaces.resource.ClassLoaderResourceLoader.getLibraryVersion(String) 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...."
> Answer from Leonardo:
> "....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....."
> This one is critical to be solved before release beta 2, because it cause a really seriour performance problem.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (MYFACES-2538) Remove resourceVersion and libraryVersion from resource identifiers

Posted by "Leonardo Uribe (JIRA)" <de...@myfaces.apache.org>.
     [ https://issues.apache.org/jira/browse/MYFACES-2538?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Leonardo Uribe resolved MYFACES-2538.
-------------------------------------

       Resolution: Fixed
    Fix Version/s: 2.0.0-beta-2

Solved as rev A change log says, so libraryVersion and resourceVersion now it is optional on resources under META-INF/resources/. Since ri implements this behavior too, we are safe.

> Remove resourceVersion and libraryVersion from resource identifiers
> -------------------------------------------------------------------
>
>                 Key: MYFACES-2538
>                 URL: https://issues.apache.org/jira/browse/MYFACES-2538
>             Project: MyFaces Core
>          Issue Type: Task
>          Components: JSR-314
>    Affects Versions: 2.0.0-beta
>            Reporter: Leonardo Uribe
>            Assignee: Leonardo Uribe
>            Priority: Critical
>             Fix For: 2.0.0-beta-2
>
>
> Martin Koci From dev list:
> "...during  profiling YourKitProfiler always marks
> org.apache.myfaces.resource.ClassLoaderResourceLoader.getLibraryVersion(String) 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...."
> Answer from Leonardo:
> "....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....."
> This one is critical to be solved before release beta 2, because it cause a really seriour performance problem.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.