Comment 10 for bug 1359416

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.openstack.org/116312
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=2781fce238e79690bf707a3df4823aec422687bd
Submitter: Jenkins
Branch: master

commit 2781fce238e79690bf707a3df4823aec422687bd
Author: Akihiro Motoki <email address hidden>
Date: Sat Aug 23 18:16:18 2014 +0900

    Make SecurityGroupsRpcCallback a separate callback class

    RPC has a version of itself. In Neutron a plugin implements
    several RPC interface, so a single RPC version doesn't work.
    In Mixin callback class approach, RPC versioning depends on
    each plugin implementation and it makes harder to maintain
    RPC version appropriately. This patch series replaces mixin
    RPC callback of server side with a separate class.

    This commit handles server-side callback of security group
    RPC interface.
    * The server-side callback of Security group RPC is moved to
      api/rpc/handler and db/securitygroups_rpc_base now only
      contains a mixin class to add agent-based security group
      implementation with db operations.
    * get_port_from_device method in server-side callback class
      is moved to a mixin class of plugin implementation
      (SecurityGroupServerRpcMixin) because it involves DB lookup
      and is tightly coupled with plugin implementation rather
      than RPC interface definition.

    Most unit tests for SGServerRpcCallBackTestCase were skipped
    in the base class before, but now they are no longer skipped.

    The following items will be planned in later patches
    to avoid drastic changes in a single patch.
    * Merge security group RPC API and agent callback classes in
      agent/securitygroups_rpc into api/rpc/handlers/securitygroup_rpc
    * Remove completely duplicated db access code in get_port_from_device
      and get_port_and_sgs

    Partial-Bug: #1359416
    Change-Id: Ia6535217d2e3b849a95667c1b53dd09675002892