Hi,

I am trying to configure the use of my advisory topics. Ideally I want to
have them retain advisory messages by time, e.g., 3 days worth, where if
not consumed within that time frame they are purged. This is to prevent
build up of advisory messages. However, I cannot see a way to specify the
limit to be time based.

As an experiment I tried the following config (with the limit deliberately
set very low):

          <policyEntry topic="ActiveMQ.Advisory.>"
                       memoryLimit="2mb"
                       gcInactiveDestinations="false">
            <pendingMessageLimitStrategy>
              <constantPendingMessageLimitStrategy limit="10"/>
            </pendingMessageLimitStrategy>
          </policyEntry>


It's not working. From looking at the web console it's clear that some
advisory topics go past the configured limit of 10 as the enqueued count
keeps climbing.

Is the memory limit taking precedence over the pending message limit
strategy or is the enqueued count misleading and not reliable?

If this is not the right way to approach this problem please advise on what
would be the optimal configuration.

FTW: the systemUsage is configured as follows:

    <systemUsage>
      <systemUsage>
        <memoryUsage>
          <memoryUsage limit="50m"/>
        </memoryUsage>
        <storeUsage>
          <storeUsage limit="50m"/>
        </storeUsage>
        <tempUsage>
          <tempUsage limit="50m"/>
        </tempUsage>
      </systemUsage>
    </systemUsage>

Thanks,
Paul

Reply via email to