Lazy loading in async store mode uses the journals read function. This doesn't allow for re-reading of a message once read. If a lazy-loaded message is not acked by a client and is consequently resent to another client it will currently attempt to re-load the data and if the journal is in use this will fail. (Need a test case to accompany this, but raising the BZ early to ensure we don't lose sight of it)/
Found some logic errors that allowed the journal to lock up in an infinite loop when trying to lazy-load from a journal that has nothing more to read. Fixed re-load problem by tracking the rids of read records and invalidating the read manager when the requested rid is lower than the last read rid. This is a simple but klunky solution; fortunately this is not a common scenario. Python tests to test this and other flow-to-disk scenarios have also been added.
qpidc-0.2.667603-1.el5, qpidc-perftest-0.2.667603-1.el5, qpidd-0.2.667603-1.el5, and rhm-0.2.2153-1.el5 have been pushed to the staging repo for testing