qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (QPID-7830) Heap dominated by duplicates of common routing values / header values etc
Date Fri, 11 May 2018 16:32:00 GMT

    [ https://issues.apache.org/jira/browse/QPID-7830?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16472217#comment-16472217

ASF subversion and git services commented on QPID-7830:

Commit 995d535bdea6fb5efcab9c165dbd9c807f94e72e in qpid-broker-j's branch refs/heads/7.0.x
from [~k-wall]
[ https://git-wip-us.apache.org/repos/asf?p=qpid-broker-j.git;h=995d535 ]

QPID-7830: [Broker-J] [AMQP 0-8..0-91] Cache AMQPShortStrings that relate to exchanges/routing
keys and header values (that are usually drawn from a small domain) in a time/size bound cache.

Intent is to reduce the amount of tenured garbage produced when messages are repeatedly sent
to same destination. This should reduce frequency and length of GC pauses.

(cherry picked from commit 7d7b50824ad9f2a99b7de034ef36a529129b00ac)

> Heap dominated by duplicates of common routing values / header values etc
> -------------------------------------------------------------------------
>                 Key: QPID-7830
>                 URL: https://issues.apache.org/jira/browse/QPID-7830
>             Project: Qpid
>          Issue Type: Bug
>          Components: Broker-J
>            Reporter: Keith Wall
>            Priority: Major
>             Fix For: Future
> When used for store and forwarding, in some use cases the Broker's heap can become dominated
by duplicates of common values such as routing information (e.g. {{amq.direct}} or an application's
queue name) or common header values (e.g a application/octet-stream or an application's user
> On the 0-8..0-91 paths, every enqueued message gets its own {{MessagePublishInfo}} referencing
its own {{AMQShortString}} exchange and routing keys.  For some use-cases, these are drawn
from a small set. On the AMQP 1.0 path, {{Properties#to}} is an example.   0-10 is probably
affected too.
> This unnecessarily increases the heap requirements of the Broker.
> The Broker should adopt a sensible intern/caching policy with the same policy applying
regardless of whether messages follow the on-line enqueue or recovery path.  Note that in
AMQP 1.0, values which are {{Symbols}} have their underlying String automatically interned.

This message was sent by Atlassian JIRA

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

View raw message