[OPNFLWPLUG-827] Problem observed with "opendaylight-direct-statistics:get-flow-statistics" RPC call Created: 24/Nov/16  Updated: 27/Sep/21  Resolved: 22/Jun/17

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

Type: Bug
Reporter: Shashidhar R Assignee: Shashidhar R
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: 7232
Priority: High

 Description   

"get-flow-statistics" RPC is showing error as given below for flows having fields like “actions=resubmit(,17)", "ct_state=+inv+trk”. This works fine with other flows.

Problem is observed with below flows and "get-flow-statistics" POST request as specified below:

cookie=0x1080000, duration=1622.682s, table=19, n_packets=0, n_bytes=0, priority=100,arp,arp_op=2 actions=CONTROLLER:65535,resubmit(,17)
cookie=0x1080000, duration=1622.679s, table=19, n_packets=0, n_bytes=0, priority=100,arp,arp_op=1 actions=CONTROLLER:65535,resubmit(,17)
cookie=0x1080000, duration=1622.681s, table=19, n_packets=0, n_bytes=0, priority=0 actions=resubmit(,17)

POST http://localhost:8181/restconf/operations/opendaylight-direct-statistics:get-flow-statistics
{
"input":

{ "node" : "/opendaylight-inventory:nodes/opendaylight-inventory:node[opendaylight-inventory:id=\"openflow:229348208920213\"]" , "table_id":19, "store-stats" : false }

}

Error observed is as below:
org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException: Supplied class interface org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.action.rev140714.flows.statistics.update.flow.and.statistics.map.list.instructions.instruction.instruction.apply.actions._case.apply.actions.action.action.NxActionResubmitNotifFlowsStatisticsUpdateApplyActionsCase is not valid case
at org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException.create(IncorrectNestingException.java:28)
at org.opendaylight.yangtools.binding.data.codec.impl.DataContainerCodecContext.childNonNull(DataContainerCodecContext.java:180)
at org.opendaylight.yangtools.binding.data.codec.impl.ChoiceNodeCodecContext.streamChild(ChoiceNodeCodecContext.java:110)
at org.opendaylight.yangtools.binding.data.codec.impl.BindingToNormalizedStreamWriter.enter(BindingToNormalizedStreamWriter.java:74)
at org.opendaylight.yangtools.binding.data.codec.impl.BindingToNormalizedStreamWriter.startCase(BindingToNormalizedStreamWriter.java:144)
at org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.action.rev140714.flows.statistics.update.flow.and.statistics.map.list.instructions.instruction.instruction.apply.actions._case.apply.actions.action.action.NxActionResubmitNotifFlowsStatisticsUpdateApplyActionsCase$StreamWriter.serialize(DataObjectSerializerPrototype.java)
at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$DataObjectSerializerProxy.serialize(BindingNormalizedNodeCodecRegistry.java:295)
at org.opendaylight.yangtools.binding.data.codec.util.ChoiceDispatchSerializer.serialize(ChoiceDispatchSerializer.java:47)
at org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action$StreamWriter.serialize(DataObjectSerializerPrototype.java)
at org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.apply.actions._case.ApplyActions$StreamWriter.serialize(DataObjectSerializerPrototype.java)
at org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.ApplyActionsCase$StreamWriter.serialize(DataObjectSerializerPrototype.java)
at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$DataObjectSerializerProxy.serialize(BindingNormalizedNodeCodecRegistry.java:295)
at org.opendaylight.yangtools.binding.data.codec.util.ChoiceDispatchSerializer.serialize(ChoiceDispatchSerializer.java:47)
at org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction$StreamWriter.serialize(DataObjectSerializerPrototype.java)
at org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.flow.Instructions$StreamWriter.serialize(DataObjectSerializerPrototype.java)
at org.opendaylight.yang.gen.v1.urn.opendaylight.flow.statistics.rev130819.flow.and.statistics.map.list.FlowAndStatisticsMapList$StreamWriter.serialize(DataObjectSerializerPrototype.java)
at org.opendaylight.yang.gen.v1.urn.opendaylight.direct.statistics.rev160511.GetFlowStatisticsOutput$StreamWriter.serialize(DataObjectSerializerPrototype.java)
at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$DataObjectSerializerProxy.serialize(BindingNormalizedNodeCodecRegistry.java:295)



 Comments   
Comment by Shashidhar R [ 25/Nov/16 ]

Issue is observed in boron as well as master.

Comment by Tomas Slusny [ 21/Feb/17 ]

Can you retest this again on Carbon? We pushed some patches that should fix this issue.

Comment by Abhijit Kumbhare [ 22/May/17 ]

Closing it since it was fixed - please reopen if still see the issue

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