You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Howard M. Lewis Ship (JIRA)" <ji...@apache.org> on 2011/04/18 19:04:05 UTC

[jira] [Created] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Reduce memory utilization of Tapestry page instances
----------------------------------------------------

                 Key: TAP5-1508
                 URL: https://issues.apache.org/jira/browse/TAP5-1508
             Project: Tapestry 5
          Issue Type: Improvement
          Components: tapestry-core
    Affects Versions: 5.3.0
            Reporter: Howard M. Lewis Ship


This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Re: [jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by Howard Lewis Ship <hl...@gmail.com>.
FYI ... I did add a FAQ about this; but I may change MetaWorker to
expose a CCTW2 rather than implement a CCTW2.

On Tue, Aug 23, 2011 at 9:54 PM, Josh Canfield <jo...@gmail.com> wrote:
>>    TAP5-1508: Contributions to CCTW2 must be qualified with @Primary when using @Contribute, to avoid collision with MetaWorker service
>
> Ack... I just spent an hour trying to figure out why my CCTW2
> contributions started failing between alpha-2 and alpha-13.
>
> Howard, can you (or anyone who understands) elaborate on what this
> means? I think this is going to need some special documentation if
> it's going to be the case going forward.
>
> Josh
>
>
> On Thu, Jul 21, 2011 at 6:37 PM, Hudson (JIRA) <ji...@apache.org> wrote:
>>
>>    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13069342#comment-13069342 ]
>>
>> Hudson commented on TAP5-1508:
>> ------------------------------
>>
>> Integrated in tapestry-trunk-freestyle #428 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/428/])
>>    TAP5-1508: Contributions to CCTW2 must be qualified with @Primary when using @Contribute, to avoid collision with MetaWorker service
>>
>> hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149416
>> Files :
>> * /tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/hibernate/HibernateModule.java
>>
>>
>>> Reduce memory utilization of Tapestry page instances
>>> ----------------------------------------------------
>>>
>>>                 Key: TAP5-1508
>>>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>>>             Project: Tapestry 5
>>>          Issue Type: Improvement
>>>          Components: tapestry-core
>>>    Affects Versions: 5.3
>>>            Reporter: Howard M. Lewis Ship
>>>
>>> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.
>>
>> --
>> This message is automatically generated by JIRA.
>> For more information on JIRA, see: http://www.atlassian.com/software/jira
>>
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>



-- 
Howard M. Lewis Ship

Creator of Apache Tapestry

The source for Tapestry training, mentoring and support. Contact me to
learn how I can get you up and productive in Tapestry fast!

(971) 678-5210
http://howardlewisship.com

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


Re: [jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by Josh Canfield <jo...@gmail.com>.
>    TAP5-1508: Contributions to CCTW2 must be qualified with @Primary when using @Contribute, to avoid collision with MetaWorker service

Ack... I just spent an hour trying to figure out why my CCTW2
contributions started failing between alpha-2 and alpha-13.

Howard, can you (or anyone who understands) elaborate on what this
means? I think this is going to need some special documentation if
it's going to be the case going forward.

Josh


On Thu, Jul 21, 2011 at 6:37 PM, Hudson (JIRA) <ji...@apache.org> wrote:
>
>    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13069342#comment-13069342 ]
>
> Hudson commented on TAP5-1508:
> ------------------------------
>
> Integrated in tapestry-trunk-freestyle #428 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/428/])
>    TAP5-1508: Contributions to CCTW2 must be qualified with @Primary when using @Contribute, to avoid collision with MetaWorker service
>
> hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149416
> Files :
> * /tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/hibernate/HibernateModule.java
>
>
>> Reduce memory utilization of Tapestry page instances
>> ----------------------------------------------------
>>
>>                 Key: TAP5-1508
>>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>>             Project: Tapestry 5
>>          Issue Type: Improvement
>>          Components: tapestry-core
>>    Affects Versions: 5.3
>>            Reporter: Howard M. Lewis Ship
>>
>> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.
>
> --
> This message is automatically generated by JIRA.
> For more information on JIRA, see: http://www.atlassian.com/software/jira
>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13069265#comment-13069265 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #427 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/427/])
    TAP5-1508: Update tapestry-jpa to use the new transformation APIs
TAP5-1508: Convert CachedWorker to CCTW2
TAP5-1508: Add PlasticMethod.getMethodIdentifier()
TAP5-1508: Convert RetainWorker from CCTW to CCTW2
TAP5-1508: Convert MetaDataWorker from CCTW to CCTW2

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149385
Files : 
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/CommitAfterMethodAdvice.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceContextWorker.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/JpaTransactionAdvisorImpl.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/jpa/JpaModule.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/JpaInternalUtils.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/apache/tapestry5/internal/jpa/JpaTransactionAdvisorImplTest.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/CommitAfterWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149384
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/CachedWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149383
Files : 
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticMethod.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/BaseEventHandlerMethodInvoker.java
* /tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/MethodAdviceTests.groovy
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/RenderPhaseMethodWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149382
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/RetainWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149381
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/meta/MetaWorkerImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/meta/MetaWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070720#comment-13070720 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #435 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/435/])
    TAP5-1508: Change the Component interface to not extend PageLifecycleListener
Only have components implement the interface as needed
Only have components register as listeners when they implement the interface

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150817
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/runtime/Component.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/CachedWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PageResetAnnotationWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PageLifecycleAnnotationWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/ComponentPageElement.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/ComponentPageElementImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/runtime/PageLifecycleListener.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/pageload/ComponentAssemblerImpl.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13042516#comment-13042516 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #356 (See [https://builds.apache.org/hudson/job/tapestry-trunk-freestyle/356/])
    TAP5-1508: Get the right object from the InstanceContext, rather than use a down-cast
TAP5-1508: Optimize the @Import worker to initialize assets in the constructor, not on page load
TAP5-1508: Optimize the ClassInstantiatorImpl to not use a Map to store the instance context type/value pairs (since there's rarely more than one or two of them)

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1130347
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/UnclaimedFieldWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1130338
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ImportWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1130329
Files : 
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/ClassInstantiatorImpl.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13069342#comment-13069342 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #428 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/428/])
    TAP5-1508: Contributions to CCTW2 must be qualified with @Primary when using @Contribute, to avoid collision with MetaWorker service

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149416
Files : 
* /tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/hibernate/HibernateModule.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13069342#comment-13069342 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #428 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/428/])
    TAP5-1508: Contributions to CCTW2 must be qualified with @Primary when using @Contribute, to avoid collision with MetaWorker service

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149416
Files : 
* /tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/hibernate/HibernateModule.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Howard M. Lewis Ship (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13027721#comment-13027721 ] 

Howard M. Lewis Ship commented on TAP5-1508:
--------------------------------------------

With the changes for TAP5-853, the biggest remaining changes is to make use of ComponentClassTransformWorker2.

> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070100#comment-13070100 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #431 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/431/])
    TAP5-1508: Mark @PageDetached and PageLifecycleListener.pageDetached() as deprecated, for later removal
TAP5-1508: Record PageLifecycleAnnotationWorker to CCTW2

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150274
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/runtime/PageLifecycleListener.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/annotations/PageDetached.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150273
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TransformConstants.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PageLifecycleAnnotationWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13021374#comment-13021374 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #319 (See [https://hudson.apache.org/hudson/job/tapestry-trunk-freestyle/319/])
    TAP5-1508: Strip out more tracking of file change timestamps when in production, except for asset resources, where tracking is needed to inform the client agent about the correct modification timestamp
TAP5-1508: Change ComponentPageelementImpl to use a simple List of child ComponentPageElements, rather than a Map or NamedSet
TAP5-1508: Disable the UpdateListenerHub and CheckForUpdatesFilter when in production mode
TAP5-1508: Create a mapping of nested component ids to component page elements, inside PageImpl
TAP5-1508: Add methods for extracting the values from a set, and null-safe static convenience methods
TAP5-1508: Add NamedSet.putIfNew() and NamedSet.create() methods
TAP5-1508: Add a simple and (hopefully) efficient NamedSet


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070091#comment-13070091 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #430 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/430/])
    TAP5-1508: Record ActivationRequestParameterWorker to implement CCTW2
TAP5-1508: Record PageResetAnnotationWorker to implement CCTW2
TAP5-1508: Recode MixinAfterWorker using CCTW2
TAP5-1508: Record DiscardAfterWorker to new CCTW2 interface

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150253
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ActivationRequestParameterWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150252
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PageResetAnnotationWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TransformConstants.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150251
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/MixinAfterWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/transform/MixinAfterWorkerTest.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150250
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/DiscardAfterWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13043027#comment-13043027 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #358 (See [https://builds.apache.org/hudson/job/tapestry-trunk-freestyle/358/])
    TAP5-1508: Convert CommitAfterWork to the new interface

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1130675
Files : 
* /tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/hibernate/HibernateModule.java
* /tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/internal/hibernate/CommitAfterWorker.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13028473#comment-13028473 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #335 (See [https://builds.apache.org/hudson/job/tapestry-trunk-freestyle/335/])
    TAP5-1508: Revise how PlasticManager is created, rebuild relationship between ComponentClassResolver and ComponentInstantiatorSource


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070006#comment-13070006 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #429 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/429/])
    TAP5-1508: Strip out duplicate code in BridgeClassTransformation that should delegate to TransformationSupport
TAP5-1508: Add a note about a (rarely) flakey test
TAP5-1508: Fix TransformationSupportImpl to record the added event type into the model
TAP5-1508: Recode PageActivationContextWorker to implement CCTW2
TAP5-1508: Refactor the implementation of TransformationSupport to be an inner (not anonymous) class
TAP5-1508: Add method addEventHandler() to TransformationSupport
TAP5-1508: Adjust some tests for minor changes to how errors in event handler methods are reported
TAP5-1508: Modify support for @ActivationRequestParameter to operate before invocations of ordinary event handler methods
TAP5-1508: Adjust for change in how checked exceptions propogate up from Component.dispatchComponentEvent()
TAP5-1508: Correct @RequestParameter logic to not use PlasticMethod instance after the end of transformation
TAP5-1508: Convert OnEventWorker from using advice on dispatchComponentEvent() to directly invoking methods
TAP5-1508: Lazily initialize PlasticMethod.methodIdentifier property
TAP5-1508: Add isVoid() to PlasticMethod
TAP5-1508: Rename EventHandlerMethodParameterSource to EventMethodHandlerParameterProvider

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150156
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/BridgeClassTransformation.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150155
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150154
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150153
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PageActivationContextWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/TransformMessages.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150152
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150151
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/transform/TransformationSupport.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/ComponentEventHandler.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150150
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/RequestParameterTests.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150149
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ActivationRequestParameterWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/groovy/org/apache/tapestry5/integration/app1/ActivationRequestParameterTests.groovy

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150148
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/ComponentPageElementImpl.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150147
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/OnEventWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150146
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/OnEventWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/EventHandlerMethodInvoker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/BaseEventHandlerMethodInvoker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/EventHandlerMethodParameterSource.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150145
Files : 
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150144
Files : 
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticMethod.java
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/RenderPhaseMethodWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150143
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/OnEventWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/EventHandlerMethodParameterProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/EventHandlerMethodParameterSource.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13123117#comment-13123117 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #563 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/563/])
    TAP5-1508: Use SoftReferences for cached resources (gzipped or uncompressed)

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1180142
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/assets/SRSCachingInterceptor.java

                
> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>            Assignee: Howard M. Lewis Ship
>             Fix For: 5.3
>
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13043027#comment-13043027 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #358 (See [https://builds.apache.org/hudson/job/tapestry-trunk-freestyle/358/])
    TAP5-1508: Convert CommitAfterWork to the new interface

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1130675
Files : 
* /tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/hibernate/HibernateModule.java
* /tapestry/tapestry5/trunk/tapestry-hibernate/src/main/java/org/apache/tapestry5/internal/hibernate/CommitAfterWorker.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Closed] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Howard M. Lewis Ship (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Howard M. Lewis Ship closed TAP5-1508.
--------------------------------------

       Resolution: Fixed
    Fix Version/s: 5.3
         Assignee: Howard M. Lewis Ship

This is never "fixed" really, but the changes I had intended at the time I wrote the bug are all implemented.

> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>            Assignee: Howard M. Lewis Ship
>             Fix For: 5.3
>
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13119722#comment-13119722 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #558 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/558/])
    TAP5-1508: Reduce memory utilization of page instances

Make template tokens directly implement RenderCommand, removing need for extra objects to fill gap
Token will be more liberally shared between page instance than the page element object (now removed)

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1178607
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/pageload/PageLoaderImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/pageload/RenderAttribute.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/AttributeToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/CDATAToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/CommentToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/DTDToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/DefineNamespacePrefixToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/ParameterToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/StartElementToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/TextToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageElementFactoryImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/CommentPageElement.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/DTDPageElement.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/StartElementPageElement.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/TextPageElement.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/TemplateParserImplTest.java

                
> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>            Assignee: Howard M. Lewis Ship
>             Fix For: 5.3
>
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070199#comment-13070199 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #432 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/432/])
    TAP5-1508: Convert HeartbeatDeferredWorker to CCTW2
TAP5-1508: Reimplement LogWorker to CCTW2
TAP5-1508: Record SessionAttributeWorker to CCTW2
TAP5-1508: Mark PageLifecycleListener.restoreStateBeforePageAttach() as deprecated
TAP5-1508: Convert PersistWorker to CCTW2, and make it more lazy
TAP5-1508: Recode InjectNamedWorker to CCTW2
TAP5-1508: Recode InjectServiceWorker to CCTW2

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150403
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/HeartbeatDeferredWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/transform/HeartbeatDeferredWorkerTest.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150402
Files : 
* /tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/LoggingAdvice.java
* /tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/LoggingAdvisorImpl.java
* /tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/MethodLogger.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/LogWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150401
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/SessionAttributeWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150400
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/runtime/PageLifecycleListener.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150399
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PersistWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150398
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectNamedWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150397
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectServiceWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070279#comment-13070279 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #434 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/434/])
    TAP5-1508: Record DefaultInjectionProvider to InjectionProvider2
TAP5-1508: Change CommonResourcesInjectionProvider to inject the ComponentResources object
TAP5-1508: Record ServiceInjectionProvider to InjectionProvider2
TAP5-1508: Record AssetInjectionProvider to implement InjectionProvider2
TAP5-1508: Recode CommonResourcesInjectionProvider to implement InjectionProvider2
TAP5-1508: Rename ReadOnlyFieldValueConduit to ReadOnlyComponentFieldConduit
Recode BlockInjectionProvider to implement InjectionProvider2
TAP5-1508: Convert InjectNamedWorker into a InjectNamedProvider (implementing InjectionProvider2)
TAP5-1508: Convert the last implementation of CCTW, InjectWorker, to CCTW2
TAP5-1508: When adding an event handler via TransformationSupport, the event handler method object should only be invoked if the event itself has not been aborted

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150523
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DefaultInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150522
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentResourcesInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CommonResourcesInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150521
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ServiceInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150520
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/AssetInjectionProviderTest.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150519
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CommonResourcesInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150518
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ReadOnlyComponentFieldConduit.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/MixinWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/BlockInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectContainerWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ApplicationStateWorker.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceContextWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectPageWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ComponentWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectComponentWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentResourcesInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/BlockInjectionProviderTest.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ReadOnlyFieldValueConduit.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150517
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectNamedProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectNamedWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150516
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectionProviderToInjectionProvider2.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/InjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/transform/InjectWorkerTest.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/transform/InjectionProvider2.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectNamedWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150515
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Closed] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Howard M. Lewis Ship (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Howard M. Lewis Ship closed TAP5-1508.
--------------------------------------

       Resolution: Fixed
    Fix Version/s: 5.3
         Assignee: Howard M. Lewis Ship

This is never "fixed" really, but the changes I had intended at the time I wrote the bug are all implemented.

> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>            Assignee: Howard M. Lewis Ship
>             Fix For: 5.3
>
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13042516#comment-13042516 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #356 (See [https://builds.apache.org/hudson/job/tapestry-trunk-freestyle/356/])
    TAP5-1508: Get the right object from the InstanceContext, rather than use a down-cast
TAP5-1508: Optimize the @Import worker to initialize assets in the constructor, not on page load
TAP5-1508: Optimize the ClassInstantiatorImpl to not use a Map to store the instance context type/value pairs (since there's rarely more than one or two of them)

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1130347
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/UnclaimedFieldWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1130338
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ImportWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1130329
Files : 
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/ClassInstantiatorImpl.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070199#comment-13070199 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #432 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/432/])
    TAP5-1508: Convert HeartbeatDeferredWorker to CCTW2
TAP5-1508: Reimplement LogWorker to CCTW2
TAP5-1508: Record SessionAttributeWorker to CCTW2
TAP5-1508: Mark PageLifecycleListener.restoreStateBeforePageAttach() as deprecated
TAP5-1508: Convert PersistWorker to CCTW2, and make it more lazy
TAP5-1508: Recode InjectNamedWorker to CCTW2
TAP5-1508: Recode InjectServiceWorker to CCTW2

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150403
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/HeartbeatDeferredWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/transform/HeartbeatDeferredWorkerTest.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150402
Files : 
* /tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/LoggingAdvice.java
* /tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/LoggingAdvisorImpl.java
* /tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/MethodLogger.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/LogWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150401
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/SessionAttributeWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150400
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/runtime/PageLifecycleListener.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150399
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PersistWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150398
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectNamedWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150397
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectServiceWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070091#comment-13070091 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #430 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/430/])
    TAP5-1508: Record ActivationRequestParameterWorker to implement CCTW2
TAP5-1508: Record PageResetAnnotationWorker to implement CCTW2
TAP5-1508: Recode MixinAfterWorker using CCTW2
TAP5-1508: Record DiscardAfterWorker to new CCTW2 interface

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150253
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ActivationRequestParameterWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150252
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PageResetAnnotationWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TransformConstants.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150251
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/MixinAfterWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/transform/MixinAfterWorkerTest.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150250
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/DiscardAfterWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13119722#comment-13119722 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #558 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/558/])
    TAP5-1508: Reduce memory utilization of page instances

Make template tokens directly implement RenderCommand, removing need for extra objects to fill gap
Token will be more liberally shared between page instance than the page element object (now removed)

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1178607
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/pageload/PageLoaderImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/pageload/RenderAttribute.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/AttributeToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/CDATAToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/CommentToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/DTDToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/DefineNamespacePrefixToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/ParameterToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/StartElementToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/parser/TextToken.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageElementFactoryImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/CommentPageElement.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/DTDPageElement.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/StartElementPageElement.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/TextPageElement.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/TemplateParserImplTest.java

                
> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>            Assignee: Howard M. Lewis Ship
>             Fix For: 5.3
>
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070006#comment-13070006 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #429 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/429/])
    TAP5-1508: Strip out duplicate code in BridgeClassTransformation that should delegate to TransformationSupport
TAP5-1508: Add a note about a (rarely) flakey test
TAP5-1508: Fix TransformationSupportImpl to record the added event type into the model
TAP5-1508: Recode PageActivationContextWorker to implement CCTW2
TAP5-1508: Refactor the implementation of TransformationSupport to be an inner (not anonymous) class
TAP5-1508: Add method addEventHandler() to TransformationSupport
TAP5-1508: Adjust some tests for minor changes to how errors in event handler methods are reported
TAP5-1508: Modify support for @ActivationRequestParameter to operate before invocations of ordinary event handler methods
TAP5-1508: Adjust for change in how checked exceptions propogate up from Component.dispatchComponentEvent()
TAP5-1508: Correct @RequestParameter logic to not use PlasticMethod instance after the end of transformation
TAP5-1508: Convert OnEventWorker from using advice on dispatchComponentEvent() to directly invoking methods
TAP5-1508: Lazily initialize PlasticMethod.methodIdentifier property
TAP5-1508: Add isVoid() to PlasticMethod
TAP5-1508: Rename EventHandlerMethodParameterSource to EventMethodHandlerParameterProvider

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150156
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/BridgeClassTransformation.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150155
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/CoreBehaviorsTests.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150154
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150153
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PageActivationContextWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/TransformMessages.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150152
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150151
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/transform/TransformationSupport.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/ComponentEventHandler.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150150
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/integration/app1/RequestParameterTests.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150149
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ActivationRequestParameterWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/groovy/org/apache/tapestry5/integration/app1/ActivationRequestParameterTests.groovy

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150148
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/ComponentPageElementImpl.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150147
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/OnEventWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150146
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/OnEventWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/EventHandlerMethodInvoker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/BaseEventHandlerMethodInvoker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/EventHandlerMethodParameterSource.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150145
Files : 
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150144
Files : 
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticMethod.java
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/RenderPhaseMethodWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150143
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/OnEventWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/EventHandlerMethodParameterProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/EventHandlerMethodParameterSource.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070279#comment-13070279 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #434 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/434/])
    TAP5-1508: Record DefaultInjectionProvider to InjectionProvider2
TAP5-1508: Change CommonResourcesInjectionProvider to inject the ComponentResources object
TAP5-1508: Record ServiceInjectionProvider to InjectionProvider2
TAP5-1508: Record AssetInjectionProvider to implement InjectionProvider2
TAP5-1508: Recode CommonResourcesInjectionProvider to implement InjectionProvider2
TAP5-1508: Rename ReadOnlyFieldValueConduit to ReadOnlyComponentFieldConduit
Recode BlockInjectionProvider to implement InjectionProvider2
TAP5-1508: Convert InjectNamedWorker into a InjectNamedProvider (implementing InjectionProvider2)
TAP5-1508: Convert the last implementation of CCTW, InjectWorker, to CCTW2
TAP5-1508: When adding an event handler via TransformationSupport, the event handler method object should only be invoked if the event itself has not been aborted

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150523
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/DefaultInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150522
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentResourcesInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CommonResourcesInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150521
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ServiceInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150520
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AssetInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/AssetInjectionProviderTest.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150519
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/CommonResourcesInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150518
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ReadOnlyComponentFieldConduit.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/MixinWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/BlockInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectContainerWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ApplicationStateWorker.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceContextWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectPageWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ComponentWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectComponentWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentResourcesInjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/BlockInjectionProviderTest.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/ReadOnlyFieldValueConduit.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150517
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectNamedProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectNamedWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150516
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectionProviderToInjectionProvider2.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/InjectionProvider.java
* /tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/transform/InjectWorkerTest.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/transform/InjectionProvider2.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/InjectNamedWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150515
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13123117#comment-13123117 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #563 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/563/])
    TAP5-1508: Use SoftReferences for cached resources (gzipped or uncompressed)

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1180142
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/assets/SRSCachingInterceptor.java

                
> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>            Assignee: Howard M. Lewis Ship
>             Fix For: 5.3
>
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13069265#comment-13069265 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #427 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/427/])
    TAP5-1508: Update tapestry-jpa to use the new transformation APIs
TAP5-1508: Convert CachedWorker to CCTW2
TAP5-1508: Add PlasticMethod.getMethodIdentifier()
TAP5-1508: Convert RetainWorker from CCTW to CCTW2
TAP5-1508: Convert MetaDataWorker from CCTW to CCTW2

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149385
Files : 
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/CommitAfterMethodAdvice.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/PersistenceContextWorker.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/JpaTransactionAdvisorImpl.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/jpa/JpaModule.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/JpaInternalUtils.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/test/java/org/apache/tapestry5/internal/jpa/JpaTransactionAdvisorImplTest.java
* /tapestry/tapestry5/trunk/tapestry-jpa/src/main/java/org/apache/tapestry5/internal/jpa/CommitAfterWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149384
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/CachedWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149383
Files : 
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticMethod.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/BaseEventHandlerMethodInvoker.java
* /tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/MethodAdviceTests.groovy
* /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/RenderPhaseMethodWorker.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149382
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/RetainWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1149381
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/meta/MetaWorkerImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/meta/MetaWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13027930#comment-13027930 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #334 (See [https://builds.apache.org/hudson/job/tapestry-trunk-freestyle/334/])
    TAP5-1508: Ensure that PlasticClass & friends are not accidentally leaked via inline inner classes


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13021374#comment-13021374 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #319 (See [https://hudson.apache.org/hudson/job/tapestry-trunk-freestyle/319/])
    TAP5-1508: Strip out more tracking of file change timestamps when in production, except for asset resources, where tracking is needed to inform the client agent about the correct modification timestamp
TAP5-1508: Change ComponentPageelementImpl to use a simple List of child ComponentPageElements, rather than a Map or NamedSet
TAP5-1508: Disable the UpdateListenerHub and CheckForUpdatesFilter when in production mode
TAP5-1508: Create a mapping of nested component ids to component page elements, inside PageImpl
TAP5-1508: Add methods for extracting the values from a set, and null-safe static convenience methods
TAP5-1508: Add NamedSet.putIfNew() and NamedSet.create() methods
TAP5-1508: Add a simple and (hopefully) efficient NamedSet


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070100#comment-13070100 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #431 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/431/])
    TAP5-1508: Mark @PageDetached and PageLifecycleListener.pageDetached() as deprecated, for later removal
TAP5-1508: Record PageLifecycleAnnotationWorker to CCTW2

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150274
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/runtime/PageLifecycleListener.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/annotations/PageDetached.java

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150273
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TransformConstants.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PageLifecycleAnnotationWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13028473#comment-13028473 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #335 (See [https://builds.apache.org/hudson/job/tapestry-trunk-freestyle/335/])
    TAP5-1508: Revise how PlasticManager is created, rebuild relationship between ComponentClassResolver and ComponentInstantiatorSource


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13027930#comment-13027930 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #334 (See [https://builds.apache.org/hudson/job/tapestry-trunk-freestyle/334/])
    TAP5-1508: Ensure that PlasticClass & friends are not accidentally leaked via inline inner classes


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070720#comment-13070720 ] 

Hudson commented on TAP5-1508:
------------------------------

Integrated in tapestry-trunk-freestyle #435 (See [https://builds.apache.org/job/tapestry-trunk-freestyle/435/])
    TAP5-1508: Change the Component interface to not extend PageLifecycleListener
Only have components implement the interface as needed
Only have components register as listeners when they implement the interface

hlship : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1150817
Files : 
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/runtime/Component.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/CachedWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PageResetAnnotationWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/transform/PageLifecycleAnnotationWorker.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/ComponentPageElement.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/structure/ComponentPageElementImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/runtime/PageLifecycleListener.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentInstantiatorSourceImpl.java
* /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/pageload/ComponentAssemblerImpl.java


> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (TAP5-1508) Reduce memory utilization of Tapestry page instances

Posted by "Howard M. Lewis Ship (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/TAP5-1508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13027721#comment-13027721 ] 

Howard M. Lewis Ship commented on TAP5-1508:
--------------------------------------------

With the changes for TAP5-853, the biggest remaining changes is to make use of ComponentClassTransformWorker2.

> Reduce memory utilization of Tapestry page instances
> ----------------------------------------------------
>
>                 Key: TAP5-1508
>                 URL: https://issues.apache.org/jira/browse/TAP5-1508
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.3.0
>            Reporter: Howard M. Lewis Ship
>
> This is an umbrella bug for a number of changes aimed at reducing the overall memory footprint of a Tapestry page.  Tapestry pages have been seen to be quite large in some production sites, and the shared-instance strategy introduced in 5.2 is still insufficient. A significant amount of space is consumed using Maps and Lists (for bindings, of sub-components, etc.) in a way that is optimized for a smaller code base and efficient read access, even though most of the information is only read when a page is first loaded, and is rarely needed or accessed after that.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira