You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Andrew Kennedy (JIRA)" <qp...@incubator.apache.org> on 2010/03/24 17:23:27 UTC

[jira] Created: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Replace WeakReference use with SoftReference for enhanced message caching
-------------------------------------------------------------------------

                 Key: QPID-2466
                 URL: https://issues.apache.org/jira/browse/QPID-2466
             Project: Qpid
          Issue Type: Improvement
          Components: Java Broker
    Affects Versions: 0.6
         Environment: JVM 1.6.0_18
            Reporter: Andrew Kennedy
             Fix For: 0.7


Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Andrew Kennedy (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Kennedy updated QPID-2466:
---------------------------------

    Remaining Estimate: 72h  (was: 336h)
     Original Estimate: 72h  (was: 336h)

> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>             Fix For: 0.7
>
>   Original Estimate: 72h
>  Remaining Estimate: 72h
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Andrew Kennedy (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Kennedy updated QPID-2466:
---------------------------------

    Attachment:     (was: 0001-QPID-2466-Replace-use-of-WeakReference-with-SoftRef.patch)

> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>             Fix For: 0.7
>
>         Attachments: 0001-QPID-2466-Replace-WeakReference-use-with-SoftRefere.patch
>
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Robbie Gemmell (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robbie Gemmell updated QPID-2466:
---------------------------------

    Status: Ready To Review  (was: In Progress)

> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>            Assignee: Robbie Gemmell
>             Fix For: 0.7
>
>         Attachments: 0001-QPID-2466-Replace-WeakReference-use-with-SoftRefere.patch, 0001-QPID-2466-trunk.patch
>
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Andrew Kennedy (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Kennedy updated QPID-2466:
---------------------------------

    Attachment: 0001-QPID-2466-trunk.patch

Trunk patch. No performance testing performed with these changes.

> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>            Assignee: Robbie Gemmell
>             Fix For: 0.7
>
>         Attachments: 0001-QPID-2466-Replace-WeakReference-use-with-SoftRefere.patch, 0001-QPID-2466-trunk.patch
>
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Assigned: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Robbie Gemmell (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robbie Gemmell reassigned QPID-2466:
------------------------------------

    Assignee: Robbie Gemmell

> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>            Assignee: Robbie Gemmell
>             Fix For: 0.7
>
>         Attachments: 0001-QPID-2466-Replace-WeakReference-use-with-SoftRefere.patch
>
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Commented: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Andrew Kennedy (JIRA)" <qp...@incubator.apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12855319#action_12855319 ] 

Andrew Kennedy commented on QPID-2466:
--------------------------------------

Based on test reults with the SoftReferenceMessageHandles it was determined that the LRU setting at the default value provides adequate performance, and that changing this for all installations is inadvisable. Tuning of this option should be carried out on a per-JVM version basis, and would usually only correspond to the a particulat workload being handled by the broker. 

> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>            Assignee: Robbie Gemmell
>             Fix For: 0.7
>
>         Attachments: 0001-QPID-2466-Replace-WeakReference-use-with-SoftRefere.patch, 0001-QPID-2466-trunk.patch
>
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Andrew Kennedy (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Kennedy updated QPID-2466:
---------------------------------

    Attachment: 0001-QPID-2466-Replace-WeakReference-use-with-SoftRefere.patch

> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>             Fix For: 0.7
>
>         Attachments: 0001-QPID-2466-Replace-WeakReference-use-with-SoftRefere.patch
>
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Andrew Kennedy (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Kennedy updated QPID-2466:
---------------------------------

    Attachment: 0001-QPID-2466-Replace-use-of-WeakReference-with-SoftRef.patch

Patch is for branch, and requires the following commands to be run afterwards to move the files correctly with subversion:

$ mv qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SoftReferenceMessageHandle.java qpid/java/broker/src/main/java/org/apache/qpid/server/queue/WeakReferenceMessageHandle.java
$ svn mv qpid/java/broker/src/main/java/org/apache/qpid/server/queue/WeakReferenceMessageHandle.java qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SoftReferenceMessageHandle.java


> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>             Fix For: 0.7
>
>         Attachments: 0001-QPID-2466-Replace-use-of-WeakReference-with-SoftRef.patch
>
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Andrew Kennedy (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Kennedy updated QPID-2466:
---------------------------------

    Remaining Estimate:     (was: 72h)
     Original Estimate:     (was: 72h)

> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>             Fix For: 0.7
>
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Commented: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Andrew Kennedy (JIRA)" <qp...@incubator.apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12852439#action_12852439 ] 

Andrew Kennedy commented on QPID-2466:
--------------------------------------

The -XX:SoftRefLRUPolicyMSPerMB=<value> option controls how old soft references must be before they are freed by the GC, measured in milliseconds per MB of free space available. The default is 1000 and tests indicate this is too large and will result in softly reachable (ie, evictable) cache objects filling up the heap and causing out of memory errors. Suggested values for this option are 1 or 10.

> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>            Assignee: Robbie Gemmell
>             Fix For: 0.7
>
>         Attachments: 0001-QPID-2466-Replace-WeakReference-use-with-SoftRefere.patch, 0001-QPID-2466-trunk.patch
>
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Commented: (QPID-2466) Replace WeakReference use with SoftReference for enhanced message caching

Posted by "Robbie Gemmell (JIRA)" <qp...@incubator.apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-2466?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12851431#action_12851431 ] 

Robbie Gemmell commented on QPID-2466:
--------------------------------------

Changes commited 0.5.x-dev branch only for now. 

Patch still to be added to trunk.

> Replace WeakReference use with SoftReference for enhanced message caching
> -------------------------------------------------------------------------
>
>                 Key: QPID-2466
>                 URL: https://issues.apache.org/jira/browse/QPID-2466
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>    Affects Versions: 0.6
>         Environment: JVM 1.6.0_18
>            Reporter: Andrew Kennedy
>            Assignee: Robbie Gemmell
>             Fix For: 0.7
>
>         Attachments: 0001-QPID-2466-Replace-WeakReference-use-with-SoftRefere.patch
>
>
> Replace use of WeakReference with SoftReference in the message handles in the broker to improve message cache performance when using a persistent store. Also tuning the eviction policy for soft references and evaluation of other GC settings.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org