[
https://issues.apache.org/activemq/browse/AMQ-2610?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Work on AMQ-2610 started by Gary Tully.
> expiry processing with file pending cursor and no consumers fills memory -
> causing producerFlowControll to kick in
> ------------------------------------------------------------------------------------------------------------------
>
> Key: AMQ-2610
> URL: https://issues.apache.org/activemq/browse/AMQ-2610
> Project: ActiveMQ
> Issue Type: Bug
> Components: Broker
> Affects Versions: 5.3.0
> Environment: all
> Reporter: Gary Tully
> Assignee: Gary Tully
> Fix For: 5.4.0
>
> Attachments: UnlimitedEnqueueTest.java
>
>
> The Memory usage limits are shared for a filependingmessagecursor and a
> queue. To have the cursor limit kick in first the usage portion needs to be
> reduced to below 70% as in: policy.setCursorMemoryHighWaterMark(50); for the
> destination.
> This causes message references to be flushed to disk when the memory
> utilization reaches 50% ensuring that the memory usage limit for the queue of
> 70% is not met.
> However, expiry processing with no consumers, needs to go directly to the
> cursor to examine messages (as none are paged in for dispatch) and this
> contract is problematic at the moment as there is no way to manage the
> message reference count via the cursor api for this use case. PageInList is
> promising but not complete.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.