Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
qpid-cpp-1.39.0
-
None
Description
The queue cleaner thread currently holds the queue lock while purging all the expired messages. This can cause worker threads to be blocked waiting for this lock. Particularly when expired messages are logged, this can result in those threads being blocked for significant periods of time during which they are unable to handle heartbeating or even closing of the connection.