qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kim van der Riet (JIRA)" <qpid-...@incubator.apache.org>
Subject [jira] Resolved: (QPID-2509) Remove message staging from C++ broker
Date Thu, 15 Apr 2010 16:00:57 GMT

     [ https://issues.apache.org/jira/browse/QPID-2509?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Kim van der Riet resolved QPID-2509.

    Resolution: Fixed

The broker option for setting the staging threshold was removed, as was the staging code and
the related staging tests.

> Remove message staging from C++ broker
> --------------------------------------
>                 Key: QPID-2509
>                 URL: https://issues.apache.org/jira/browse/QPID-2509
>             Project: Qpid
>          Issue Type: Improvement
>          Components: C++ Broker
>            Reporter: Kim van der Riet
>            Assignee: Kim van der Riet
> Staging was originally implemented so that a message with content that exceeds available
memory can be handled. The message is sent to disk in parts as it arrives, and is never fully
resident in memory. However, the current implementation of staging is problematic:
> 1. The current architecture requires the entire message to be loaded into memory before
it can be delivered. This renders the staging facility superfluous. In fact, it can lead to
a problem where it is possible to enqueue messages much larger than the available memory,
but never be able to dequeue it again.
> 2. The current implementation uses a BDB database to save the message. This is done under
a transaction to ensure atomicity of the operation. This results in two issues:
>     a) BDB is very slow for large messages, and gets exponentially slower as the message
size grows.
>     b) The database leaves behind a large number of log files that are not currently
managed and tend to accumulate.
> The staging feature is still a valuable one, and the issue of reinstating staging should
be revisited when the fundamental problem (1. above) has been corrected. The use of BDB is
an implementation issue and can easily be changed for something more suitable.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


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

View raw message