[OPNFLWPLUG-314] NullPointerException in update-flow RPC Created: 12/Nov/14  Updated: 27/Sep/21  Resolved: 02/Dec/14

Status: Resolved
Project: OpenFlowPlugin
Component/s: General
Affects Version/s: None
Fix Version/s: None

Type: Bug
Reporter: Shigeru Yasuda Assignee: Unassigned
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


External issue ID: 2369

 Description   

update-flow RPC causes NPE if either match or priority in UpdateFlowInput is null.

OFRpcTaskFactory.createUpdateFlowTask():

boolean updatedFlow = (getInput().getUpdatedFlow().getMatch().equals(getInput().getOriginalFlow().getMatch())) &&
(getInput().getUpdatedFlow().getPriority().equals(getInput().getOriginalFlow().getPriority()));

In addition, update-flow RPC should remove original flow and add updated flow
if any of the following fields is changed because FLOW_MOD (MODIFY/MODIFY_STRICT)
will not change them.

  • idle-timeout
  • hard-timeout
  • flags
  • cookie

OF13 FLOW_MOD (MODIFY) can be filtered by cookie and cookie_mask.
So one FLOW_MOD (MODIFY) should be sent if all of the following conditions are met:

  • Protocol version is OF13.
  • Strict flag is not set in UpdatedFlow.
  • A non-zero cookie_mask is set in UpdatedFlow.
  • Flow match, priority, idle-timeout, hard-timeout, and flags are not changed.


 Comments   
Comment by Shigeru Yasuda [ 12/Nov/14 ]

https://git.opendaylight.org/gerrit/12789 (master)

Comment by Shigeru Yasuda [ 01/Dec/14 ]

https://git.opendaylight.org/gerrit/13243 (stable/helium)

Generated at Wed Feb 07 20:32:08 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.