← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1359416] [NEW] RPC callback should not use mixin approach

 

Public bug reported:

RPC is versioned per feature, but all of callback classes are implemented as mixin classes
and they are inherited into a single class.
This prevents RPC callback class from versioning properly.

This kind of chaos leads to bugs like bug 1353309.

This bug focuses on fixes of the server side of this problem.

# Agent side implementation uses neutron.manager.Manager and
# Manager requires callback as a top level method. It leads to mixin approach.

The following are the current status of the server side.

[l3-agent RPC callback]

- 1.1: NEC, Cisco N1KV, oneconvergence, ryu
- 1.2: Brocade, Hyper-V, LinuxBridge, MLNX, OVS
     version is bumped due to L2-plugin-agent RPC callback change
- 1.3: L3 Router plugin

All plugins above use l3-agent and RPC version should match.

[dhcp-agent RPC callback]

DHCP RPC version itself is 1.1.

The versions of all plugins which use dhcp-agent are:

- 1.1: nec, bigswitch, cisco n1kv, midonet, oneconvergence, vmware nsx
- 1.2: brocade, hyper-v, linuxbridge, mlnx, ovs
     the version is bumped due to L2 plugin agent RPC callback change
- 1.3: ml2
    the version is bumped due to RPC callback changes in L2 plugin agent and DVR support.

** Affects: neutron
     Importance: High
     Assignee: Akihiro Motoki (amotoki)
         Status: New


** Tags: neutron-core

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1359416

Title:
  RPC callback should not use mixin approach

Status in OpenStack Neutron (virtual network service):
  New

Bug description:
  RPC is versioned per feature, but all of callback classes are implemented as mixin classes
  and they are inherited into a single class.
  This prevents RPC callback class from versioning properly.

  This kind of chaos leads to bugs like bug 1353309.

  This bug focuses on fixes of the server side of this problem.

  # Agent side implementation uses neutron.manager.Manager and
  # Manager requires callback as a top level method. It leads to mixin approach.

  The following are the current status of the server side.

  [l3-agent RPC callback]

  - 1.1: NEC, Cisco N1KV, oneconvergence, ryu
  - 1.2: Brocade, Hyper-V, LinuxBridge, MLNX, OVS
       version is bumped due to L2-plugin-agent RPC callback change
  - 1.3: L3 Router plugin

  All plugins above use l3-agent and RPC version should match.

  [dhcp-agent RPC callback]

  DHCP RPC version itself is 1.1.

  The versions of all plugins which use dhcp-agent are:

  - 1.1: nec, bigswitch, cisco n1kv, midonet, oneconvergence, vmware nsx
  - 1.2: brocade, hyper-v, linuxbridge, mlnx, ovs
       the version is bumped due to L2 plugin agent RPC callback change
  - 1.3: ml2
      the version is bumped due to RPC callback changes in L2 plugin agent and DVR support.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1359416/+subscriptions


Follow ups

References