activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Timothy Bish (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (AMQ-3957) Temporary queues are not being garbage collected. (unit test included)
Date Fri, 03 Aug 2012 13:07:02 GMT

    [ https://issues.apache.org/jira/browse/AMQ-3957?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13428060#comment-13428060
] 

Timothy Bish commented on AMQ-3957:
-----------------------------------

The temp destination is bound to the lifetime of the connection that created it.  If you close
the connection then the the temp queue will be cleaned up.  If you want the broker to remove
them then you need to enable 'allowTempAutoCreationOnSend'.  The default behavior is matching
the expect behavior of JMS temp destinations and Connection lifetime.  
                
> Temporary queues are not being garbage collected. (unit test included)
> ----------------------------------------------------------------------
>
>                 Key: AMQ-3957
>                 URL: https://issues.apache.org/jira/browse/AMQ-3957
>             Project: ActiveMQ
>          Issue Type: Bug
>    Affects Versions: 5.6.0
>            Reporter: Andrejs Jermakovics
>              Labels: garbage, inactivity, temp, unit-test
>
> Temporary queues are not being garbage collected even if garbage collection is specified
in destination policy.
> *To reproduce:*
> Add the following unit test to {{DetinationGCTest}}:
> {code}
>     public void testTempQueueGc() throws Exception {
>         assertEquals(1, broker.getAdminView().getTemporaryQueues().length);
>         assertTrue("After GC runs temporary queue should be deleted.", Wait.waitFor(new
Condition() {
>             @Override
>             public boolean isSatisified() throws Exception {
>                 return broker.getAdminView().getTemporaryQueues().length == 0;
>             }
>         }));
>     }
> {code}
> And in {{createBroker()}} method change the setDestinations line to:
> {code}
> broker.setDestinations(new ActiveMQDestination[] {queue, new ActiveMQTempQueue("TEMP-QUEUE")});
> {code}
> *Workaround:*
> set {{broker.setAllowTempAutoCreationOnSend(true);}} however I'd expect the temp queues
to be GCd without this setting.

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

        

Mime
View raw message