-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/50759/
-----------------------------------------------------------

(Updated Aug. 4, 2016, 3:32 a.m.)


Review request for qpid and Andrew Stitcher.


Changes
-------

Incorporating most suggestions but dealing with test issues: truncation when 
converting to millisecs and negative durations.  see response to 
https://reviews.apache.org/r/50759/#comment210664


Bugs: qpid-7373
    https://issues.apache.org/jira/browse/qpid-7373


Repository: qpid-cpp


Description
-------

If a C++ broker is lightly loaded with many short lived connections such that 
at least one worker thread remains unwoken from the epoll_wait, its 
DeletionManager::ThreadStatus::handles grows without bound and the associated 
handles retain a shared_ptr ref and never go away.

This patch allows IO threads a maximum of one minute to accumulate 
DeletionManager shared pointer references before resuming the wait loop which 
involves calling 

  PollerHandleDeletionManager.markAllUnusedInThisThread();
  
The overhead is small on brokers light thread load and non-existent on busy 
brokers.


Diffs (updated)
-----

  src/qpid/sys/epoll/EpollPoller.cpp 6fdf996 

Diff: https://reviews.apache.org/r/50759/diff/


Testing
-------

Jira test case, PollerTest.cpp


Thanks,

Cliff Jansen

Reply via email to