You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Gabrielle Crawford (JIRA)" <de...@myfaces.apache.org> on 2008/01/19 01:48:34 UTC

[jira] Issue Comment Edited: (TRINIDAD-906) optimize getClientId - use per thread shared StringBuilder

    [ https://issues.apache.org/jira/browse/TRINIDAD-906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12560618#action_12560618 ] 

gabrielle edited comment on TRINIDAD-906 at 1/18/08 4:46 PM:
----------------------------------------------------------------------

Completed: At revision: 613322  for trunk 1.2


      was (Author: gabrielle):
    Completed: At revision: 613322  

  
> optimize getClientId - use per thread shared StringBuilder
> ----------------------------------------------------------
>
>                 Key: TRINIDAD-906
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-906
>             Project: MyFaces Trinidad
>          Issue Type: Bug
>    Affects Versions: 1.2.5-core
>            Reporter: Gabrielle Crawford
>            Priority: Minor
>             Fix For: 1.0.6-core, 1.2.6-core
>
>
> In getClientId/getContainerClientId we create a new stringBuilder. 
> However when creating a client id we only use one stringBuilder at a time, so have a single instance of a StringBuilder saved on thread local. 
> Have a utility to get this instance, and any time a user gets the instance, set the length of the stringBuilder to 0. This will completely break if a user tries to call it for 2 stringbuilders, so doc this well.
> Preliminary testing by a performance person here at Oracle found "the saving is ~300KB out of 5850KB for the request. This is about 5% total request memory. As expected profile shows that most of the memory saving comes from not creating huge number of string builders"

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