AMQP 1.0 driver duplicates addresses if process forked

Bug #1392868 reported by Ken Giusti
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
oslo.messaging
Fix Released
Undecided
Ken Giusti

Bug Description

If a process allocates a transport that uses the AMQP 1.0 driver (transport 'amqp') and then forks prior to starting any messaging activity, the resulting processes share the same container identifier.

This causes the processes to generate the same 'unique' local addresses. When this happens, replies to RPC requests sent by either process may be returned to the other process. This results in random RPC timeouts.

Ken Giusti (kgiusti)
Changed in oslo.messaging:
assignee: nobody → Ken Giusti (kgiusti)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to oslo.messaging (master)

Fix proposed to branch: master
Review: https://review.openstack.org/134684

Changed in oslo.messaging:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to oslo.messaging (master)

Reviewed: https://review.openstack.org/134684
Committed: https://git.openstack.org/cgit/openstack/oslo.messaging/commit/?id=80e62aed7d63175079422bd6bb4578d45da7f30e
Submitter: Jenkins
Branch: master

commit 80e62aed7d63175079422bd6bb4578d45da7f30e
Author: Kenneth Giusti <email address hidden>
Date: Fri Nov 14 17:06:58 2014 -0500

    Create a new connection when a process fork has been detected

    This patch attempts to deal with applications that have forked the
    process after connecting to the broker. First, the creation of the
    connection is delayed until the application attempts to perform a
    messaging operation. Second, each time the application performs a
    messaging operation the current process id is checked against the id
    of the process that created the connection. If the process ids do not
    match, the application has called os.fork(). The new child process
    discards the existing connection and creates a new one.

    Change-Id: I5455cb0f8d380d6b65f1268b34a91355cbb14aa2
    Closes-Bug: #1392868

Changed in oslo.messaging:
status: In Progress → Fix Committed
Mehdi Abaakouk (sileht)
Changed in oslo.messaging:
milestone: none → 1.5.0
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.