-
Type: Bug
-
Status: Resolved (View Workflow)
-
Priority: High
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: ONOS
-
Labels:None
-
Story Points:1
When there are routes that are different only in netmask, only one of them gets installed. The other one stays in PENDING_ADD state.
Examples:
deviceId=of:0000000059120111, flowRuleCount=532 ADDED, bytes=0, packets=0, table=30, priority=54010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/27], treatment=[deferred=[GROUP:0x70000105], transition=TABLE:60] PENDING_ADD, bytes=0, packets=0, table=30, priority=46010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/23], treatment=[deferred=[GROUP:0x70000105], transition=TABLE:60] deviceId=of:0000000059120112, flowRuleCount=532 PENDING_ADD, bytes=0, packets=0, table=30, priority=54010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/27], treatment=[deferred=[GROUP:0x20000220], transition=TABLE:60] ADDED, bytes=0, packets=0, table=30, priority=46010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/23], treatment=[deferred=[GROUP:0x20000220], transition=TABLE:60] deviceId=of:0000000059120113, flowRuleCount=523 PENDING_ADD, bytes=0, packets=0, table=30, priority=54010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/27], treatment=[deferred=[GROUP:0x7000014c], transition=TABLE:60] ADDED, bytes=0, packets=0, table=30, priority=46010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/23], treatment=[deferred=[GROUP:0x7000014c], transition=TABLE:60] deviceId=of:0000000059120114, flowRuleCount=531 PENDING_ADD, bytes=0, packets=0, table=30, priority=54010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/27], treatment=[deferred=[GROUP:0x700001af], transition=TABLE:60] ADDED, bytes=0, packets=0, table=30, priority=46010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/23], treatment=[deferred=[GROUP:0x700001af], transition=TABLE:60] deviceId=of:0000000059160117, flowRuleCount=442 PENDING_ADD, bytes=0, packets=0, table=30, priority=54010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/27], treatment=[deferred=[GROUP:0x7000010b], transition=TABLE:60] ADDED, bytes=0, packets=0, table=30, priority=46010, selector=[ETH_TYPE:ipv4, IPV4_DST:10.146.60.0/23], treatment=[deferred=[GROUP:0x7000010b], transition=TABLE:60] deviceId=of:0000000077120115, flowRuleCount=69 deviceId=of:0000000077120116, flowRuleCount=74
deviceId=of:0000000059120111, flowRuleCount=531 ADDED, bytes=0, packets=0, table=30, priority=32010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/64], treatment=[deferred=[GROUP:0x700000fb], transition=TABLE:60] PENDING_ADD, bytes=0, packets=0, table=30, priority=28010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/56], treatment=[deferred=[GROUP:0x700000fb], transition=TABLE:60] deviceId=of:0000000059120112, flowRuleCount=531 ADDED, bytes=0, packets=0, table=30, priority=32010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/64], treatment=[deferred=[GROUP:0x20000220], transition=TABLE:60] PENDING_ADD, bytes=0, packets=0, table=30, priority=28010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/56], treatment=[deferred=[GROUP:0x20000220], transition=TABLE:60] deviceId=of:0000000059120113, flowRuleCount=522 ADDED, bytes=0, packets=0, table=30, priority=32010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/64], treatment=[deferred=[GROUP:0x70000159], transition=TABLE:60] PENDING_ADD, bytes=0, packets=0, table=30, priority=28010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/56], treatment=[deferred=[GROUP:0x70000159], transition=TABLE:60] deviceId=of:0000000059120114, flowRuleCount=530 ADDED, bytes=0, packets=0, table=30, priority=32010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/64], treatment=[deferred=[GROUP:0x700001b4], transition=TABLE:60] PENDING_ADD, bytes=0, packets=0, table=30, priority=28010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/56], treatment=[deferred=[GROUP:0x700001b4], transition=TABLE:60] deviceId=of:0000000059160117, flowRuleCount=441 ADDED, bytes=0, packets=0, table=30, priority=32010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/64], treatment=[deferred=[GROUP:0x70000113], transition=TABLE:60] PENDING_ADD, bytes=0, packets=0, table=30, priority=28010, selector=[ETH_TYPE:ipv6, IPV6_DST:2001:558:1003::/56], treatment=[deferred=[GROUP:0x70000113], transition=TABLE:60] deviceId=of:0000000077120115, flowRuleCount=69 deviceId=of:0000000077120116, flowRuleCount=74
As shown, it happens for both IPv4 and IPv6.
Relevant log messages:
2018-02-04 10:28:13,430 | ERROR | onos-of-worker-3 | OFChannelHandler | 180 - org.onosproject.onos-protocols-openflow-ctl - 1.11.2.rc3 | OFFlowModFailedErrorMsgVer13(xid=0, code=UNKNOWN, data=OFFlowAddVer13(xid=0, cookie=0x000f000007199193, cookieMask=0x0000000000000000, tableId=0x1e, idleTimeout=0, hardTimeout=0, priority=54010, bufferId=4294967295, outPort=any, outGroup=any, flags=[SEND_FLOW_REM], match=OFMatchV3Ver13(eth_type=0x800, ipv4_dst=10.146.60.0/255.255.255.224), instructions=[OFInstructionWriteActionsVer13(actions=[OFActionGroupVer13(group=536871456)]), OFInstructionGotoTableVer13(tableId=0x3c)])) from switch DefaultSwitchHandshaker{session=192.168.151.12:53465, dpid=00:00:00:00:59:12:01:12} in state ACTIVE 2018-02-04 10:28:13,430 | WARN | vent-error-msg-0 | OpenFlowRuleProvider | 183 - org.onosproject.onos-providers-openflow-flow - 1.11.2.rc3 | Received error message OFFlowModFailedErrorMsgVer13(xid=0, code=UNKNOWN, data=OFFlowAddVer13(xid=0, cookie=0x000f000007199193, cookieMask=0x0000000000000000, tableId=0x1e, idleTimeout=0, hardTimeout=0, priority=54010, bufferId=4294967295, outPort=any, outGroup=any, flags=[SEND_FLOW_REM], match=OFMatchV3Ver13(eth_type=0x800, ipv4_dst=10.146.60.0/255.255.255.224), instructions=[OFInstructionWriteActionsVer13(actions=[OFActionGroupVer13(group=536871456)]), OFInstructionGotoTableVer13(tableId=0x3c)])) from 00:00:00:00:59:12:01:12 2018-02-04 10:28:13,430 | ERROR | vent-error-msg-0 | OpenFlowRuleProvider | 183 - org.onosproject.onos-providers-openflow-flow - 1.11.2.rc3 | No matching batch for this error: OFFlowModFailedErrorMsgVer13(xid=0, code=UNKNOWN, data=OFFlowAddVer13(xid=0, cookie=0x000f000007199193, cookieMask=0x0000000000000000, tableId=0x1e, idleTimeout=0, hardTimeout=0, priority=54010, bufferId=4294967295, outPort=any, outGroup=any, flags=[SEND_FLOW_REM], match=OFMatchV3Ver13(eth_type=0x800, ipv4_dst=10.146.60.0/255.255.255.224), instructions=[OFInstructionWriteActionsVer13(actions=[OFActionGroupVer13(group=536871456)]), OFInstructionGotoTableVer13(tableId=0x3c)]))