Hi ,
  We have been stuck with an exception for so long, not knowing how to fix.

 We have a container which uses opendaylight-flow-types:instruction-list[0]

 Whenever we try to populate this list with an instruction which is augmented 
from the base[1], it is throwing the below error, any pointers?

  org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException: 
Supplied class interface 
org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.action.rev140714.nodes.node.table.flow.instructions.instruction.instruction.apply.actions._case.apply.actions.action.action.NxActionRegLoadNodesNodeTableFlowApplyActionsCase
 is not valid case^M
        at 
org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException.create(IncorrectNestingException.java:28)^M
        at 
org.opendaylight.yangtools.binding.data.codec.impl.DataContainerCodecContext.childNonNull(DataContainerCodecContext.java:180)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.impl.ChoiceNodeCodecContext.streamChild(ChoiceNodeCodecContext.java:110)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.impl.BindingToNormalizedStreamWriter.enter(BindingToNormalizedStreamWriter.java:74)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.impl.BindingToNormalizedStreamWriter.startCase(BindingToNormalizedStreamWriter.java:144)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.action.rev140714.nodes.node.table.flow.instructions.instruction.instruction.apply.actions._case.apply.actions.action.action.NxActionRegLoadNodesNodeTableFlowApplyActionsCase$StreamWriter.serialize(DataObjectSerializerPrototype.java)[276:org.opendaylight.openflowplugin.extension-nicira:0.3.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$DataObjectSerializerProxy.serialize(BindingNormalizedNodeCodecRegistry.java:295)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.util.ChoiceDispatchSerializer.serialize(ChoiceDispatchSerializer.java:47)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action$StreamWriter.serialize(DataObjectSerializerPrototype.java)[259:org.opendaylight.openflowplugin.model.flow-base:0.3.2.SNAPSHOT]^M
        at 
org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.apply.actions._case.ApplyActions$StreamWriter.serialize(DataObjectSerializerPrototype.java)[259:org.opendaylight.openflowplugin.model.flow-base:0.3.2.SNAPSHOT]^M
        at 
org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.instruction.ApplyActionsCase$StreamWriter.serialize(DataObjectSerializerPrototype.java)[259:org.opendaylight.openflowplugin.model.flow-base:0.3.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$DataObjectSerializerProxy.serialize(BindingNormalizedNodeCodecRegistry.java:295)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.util.ChoiceDispatchSerializer.serialize(ChoiceDispatchSerializer.java:47)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.instruction.list.Instruction$StreamWriter.serialize(DataObjectSerializerPrototype.java)[259:org.opendaylight.openflowplugin.model.flow-base:0.3.2.SNAPSHOT]^M
        at 
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.StypeOpenflow$StreamWriter.serialize(DataObjectSerializerPrototype.java)[286:org.opendaylight.genius.interfacemanager-api:0.1.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$DataObjectSerializerProxy.serialize(BindingNormalizedNodeCodecRegistry.java:295)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.util.AugmentableDispatchSerializer.emitAugmentation(AugmentableDispatchSerializer.java:79)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.util.AugmentableDispatchSerializer.serialize(AugmentableDispatchSerializer.java:51)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.servicebinding.rev160406.service.bindings.services.info.BoundServices$StreamWriter.serialize(DataObjectSerializerPrototype.java)[286:org.opendaylight.genius.interfacemanager-api:0.1.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$DataObjectSerializerProxy.serialize(BindingNormalizedNodeCodecRegistry.java:295)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry.toNormalizedNode(BindingNormalizedNodeCodecRegistry.java:106)[92:org.opendaylight.mdsal.binding-dom-codec:0.9.2.SNAPSHOT]^M
        at 
org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec.toNormalizedNode(BindingToNormalizedNodeCodec.java:132)[146:org.opendaylight.controller.sal-binding-broker-impl:1.4.2.SNAPSHOT]^M
        at 
org.opendaylight.controller.md.sal.binding.impl.AbstractWriteTransaction.put(AbstractWriteTransaction.java:39)[146:org.opendaylight.controller.sal-binding-broker-impl:1.4.2.SNAPSHOT]^M
        at 
org.opendaylight.genius.interfacemanager.IfmUtil.bindService(IfmUtil.java:486)[310:org.opendaylight.genius.interfacemanager-impl:0.1.2.SNAPSHOT]^M


[0] grouping service-openflow-info {
    description "openflow specific information for services info.";

    leaf dispatcher-table-id {
        type uint8;
    }

    leaf flow-priority {
        type uint16;
    }

    leaf flow-cookie {
        type uint64;
    }

    uses offlow:instruction-list;
}


[1] augment 
"/inv:nodes/inv:node/fni:table/fni:flow/fni:instructions/fni:instruction/fni:instruction/fni:apply-actions-case/fni:apply-actions/fni:action/fni:action"
 {
        case "nx-action-reg-load-nodes-node-table-flow-apply-actions-case" {
            uses nx-action-reg-load-grouping;
        }
    }

      grouping nx-action-reg-load-grouping {
        container nx-reg-load {
            container dst {
                description "Writes value to bits start through end, inclusive, 
in field dst.";
                uses dst-choice-grouping;
                uses range-grouping;
            }
            leaf value {
                type uint64;
            }
        }
    }

Thanks,
Faseela

_______________________________________________
controller-dev mailing list
controller-dev@lists.opendaylight.org
https://lists.opendaylight.org/mailman/listinfo/controller-dev

Reply via email to