Uploaded image for project: 'OpenFlowPlugin'
  1. OpenFlowPlugin
  2. OPNFLWPLUG-163

Multiple output actions is not allowed in the action list of apply-action instruction

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • None
    • None
    • General
    • None
    • Operating System: All
      Platform: All

    • 1020

      While verifying ovsdb project using OF 1.3, we find flow with multiple OUTPUT actions is no longer allowed in latest build. Only one action with output type is allowed. Add action with same type just overwrite the action from "actions=output:3" to "actions=output:5". We no longer get the action list with "actions=output:3, output:4, output:5"

      Same behavior is also seen in openflow plugin test provider. Writing a flow with multiple OUTPUT actions will actually have one OUTPUT action in action list:
      2014-05-15 16:07:11.827 EDT [pool-13-thread-2] INFO o.o.o.t.OpenflowpluginTestServiceProvider - addFlow - AddFlowInput [_flowRef=FlowRef [_value=KeyedInstanceIdentifier

      {targetType=interface org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow, path=[org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes, org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node[key=NodeKey [_id=Uri [_value=foo:node:1]]], org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode, org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.Table[key=TableKey [_id=2]], org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow[key=FlowKey [_id=Uri [_value=206]]]]}

      ], _flowTable=FlowTableRef [_value=KeyedInstanceIdentifier

      {targetType=interface org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.Table, path=[org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes, org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node[key=NodeKey [_id=Uri [_value=foo:node:1]]], org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode, org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.Table[key=TableKey [_id=2]]]}

      ], _barrier=false, _cookieMask=FlowCookie [_value=10], _flags=FlowModFlags [_cHECKOVERLAP=false, _rESETCOUNTS=false, _nOPKTCOUNTS=false, _nOBYTCOUNTS=false, _sENDFLOWREM=true], _flowName=FooXf83, _installHw=false, _instructions=Instructions [_instruction=[Instruction [_order=0, _key=InstructionKey [_order=0], _instruction=ApplyActionsCase [_applyActions=ApplyActions [_action=[Action [_order=0, _key=ActionKey [_order=0], _action=PopVlanActionCase [_popVlanAction=PopVlanAction [augmentation=[]], augmentation=[]], augmentation=[]], Action [_order=1, _key=ActionKey [_order=1], _action=OutputActionCase [_outputAction=OutputAction [_outputNodeConnector=Uri [_value=openflow:65500:29], augmentation=[]], augmentation=[]], augmentation=[]]], augmentation=[]], augmentation=[]], augmentation=[]]], augmentation=[]], _match=Match [_ethernetMatch=EthernetMatch [_ethernetDestination=EthernetDestination [_address=MacAddress [_value=01:00:00:00:00:00], _mask=MacAddress [_value=01:00:00:00:00:00], augmentation=[]], augmentation=[]], _vlanMatch=VlanMatch [_vlanId=VlanId [_vlanId=VlanId [_value=2000], _vlanIdPresent=true, augmentation=[]], augmentation=[]], augmentation=[]], _strict=false, _cookie=FlowCookie [_value=10], _hardTimeout=0, _idleTimeout=0, _priority=2, _tableId=2, _node=NodeRef [_value=KeyedInstanceIdentifier

      {targetType=interface org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node, path=[org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes, org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node[key=NodeKey [_id=Uri [_value=foo:node:1]]]]}

      ], _transactionUri=Uri [_value=DOM-0], augmentation=[]]

      This breaks the broadcast in OVSDB project. We don't want to use group for broadcast flow due to the ovs version limitation. Please fix the apply-action instruction to allow multiple OUTPUT actions again.

            flavio@flaviof.com Flavio Fernandes
            syshen66@gmail.com Hsin-Yi Shen
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: