impl_zmq should not triple-include context on call()

Bug #1156956 reported by Erica Windisch
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
oslo-incubator
Fix Released
Undecided
Erica Windisch

Bug Description

impl_zmq is including three copies of the context in the '-reply' cast during call().

Because we need compatibility with Grizzly (N-1 support), this should be reduced to two copies for Havana, before stripping down to a singular copy for I.

For instance:

            _cast(addr, context, topic, payload, envelope)

where envelope contains the following message:

    {
        'method': '-reply',
        'args': {
            'msg_id': msg_id,
            'topic': reply_topic,
            context: context
            'msg': [RpcContext.marshal(context), msg]
        }
    }

Two copies exist in the message itself, plus one sent to _cast (which injects the context into the ZMQ envelope)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to oslo-incubator (master)

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

Changed in oslo:
assignee: nobody → Eric Windisch (ewindisch)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to oslo-incubator (master)

Reviewed: https://review.openstack.org/24742
Committed: http://github.com/openstack/oslo-incubator/commit/85e9e0622c96a3d2e0237e7a7bf089a1343ef545
Submitter: Jenkins
Branch: master

commit 85e9e0622c96a3d2e0237e7a7bf089a1343ef545
Author: Eric Windisch <email address hidden>
Date: Mon Mar 18 22:07:02 2013 -0400

    Eliminate multiple contexts in zmq call()

    Because we need compatibility with Grizzly (N-1 support), this should be
    reduced to two copies for Havana, before stripping down to a singular
    copy for I.

    The '-reply' request has its context key removed, with the
    msg option maintaining one extra copy of context until I.
    A TODO has been entered to clean this up following the Havana release.

    This fix eliminates an extra JSON double-deserialization routine.
    The double-serialization of context is still performed for Grizzly
    compatibility.

    fixes bug 1156956

    Change-Id: I071e382ec9c7e0df3794fe9ca574a5722f8910a6

Changed in oslo:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in oslo:
milestone: none → havana-1
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in oslo:
milestone: havana-1 → 2013.2
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.