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


Ship it!




Ship It!

- Kenneth Giusti


On Aug. 23, 2016, 12:09 p.m., Alan Conway wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/51290/
> -----------------------------------------------------------
> 
> (Updated Aug. 23, 2016, 12:09 p.m.)
> 
> 
> Review request for qpid, Gordon Sim and Kenneth Giusti.
> 
> 
> Bugs: QPID-7317
>     https://issues.apache.org/jira/browse/QPID-7317
> 
> 
> Repository: qpid-python
> 
> 
> Description
> -------
> 
> If a process forks while using qpid.messaging, endpoints created by the parent
> MUST NOT be used by the child in any way. Previously this could hang the 
> child,
> or the parent, or both.
> 
> This fix raises an exception for such illegal use.
> 
> Related to https://issues.apache.org/jira/browse/QPID-5637 which reset the 
> Selector
> after a fork. Covers two more issues:
> 
> 1. Close the Selector.waiter, its file descriptors are shared with the parent 
> which
>    causes havoc.
> 
> 2. Replace the Endpoint._lock in all affected objects with BrokenLock. If the
>    parent is holding locks when it forks, they remain locked forever in the 
> child.
>    BrokenLock.acquire() raises an exception.
> 
> 
> Diffs
> -----
> 
>   qpid/messaging/driver.py 146b8188ab8bebed2d3af26f6bfa6c3667af91cd 
>   qpid/selector.py 4a15d5666257811168e840f42cbe15dd26055259 
> 
> Diff: https://reviews.apache.org/r/51290/diff/
> 
> 
> Testing
> -------
> 
> Just the reproducer in https://reviews.apache.org/r/51290/ - if this is 
> addressing the right issue it will need more testing & review.
> 
> 
> Thanks,
> 
> Alan Conway
> 
>

Reply via email to