Ask is moving to Stack Overflow and! Please use the "opendaylight" tag on either of these sites. This site is now in Read-Only mode

Robert Varga's profile - activity

2017-10-09 14:53:13 -0700 answered a question YANG import catch-22???

SOURCEPRELINKAGE performs partial parsing, just enough to understand import/namespace/revision declarations, after which it knows what needs to be imported (which is SOURCE_LINKAGE).

As noted, the import is not satisfied in the list of modules you are importing -- hance adding openconfig-extensions.yang to the reactor should make it succeed.

There is no way to ignore an import statement.

2016-05-27 12:30:41 -0700 received badge  Necromancer (source)
2016-04-09 00:39:26 -0700 received badge  Necromancer (source)
2016-04-08 04:38:37 -0700 answered a question Extend yang type

You cannot modify the behavior of a besa model. You can extend it by adding additional information via the augmentation statement -- but not into leaf instances.

2016-04-08 04:35:37 -0700 answered a question Yang to java conversion throws NPE

Can you check if this is reproducible in Li SR4 and Beryllium? If it is, please file issue on , project mdsal.

2016-04-08 04:29:53 -0700 answered a question Please confirm if the fix is fine..

I can't find in the ODL sources. The best way of answering your question is to turn it into a patch and submit to the appropriate project's repository via .

2016-04-08 04:26:28 -0700 answered a question How yang -MD-sal Related?

As for the relationship between YANG and MD-SAL, YANG is used as the Interface Definition Language (IDL) to define data and services. MD-SAL provides the compile-time and run-time support needed to implement and cross-connect those services in Java.

2016-04-06 13:39:19 -0700 answered a question BundleException during start-up of Stable Beryllium Branch

This does look weird, slf4j-api should normally be installed. Does the Beryllium SR1 release (as available in downloads) exhibit the same behavior?

2015-12-05 11:39:27 -0700 answered a question Incomplete LS updates shown

Is this SR2 or later? Also, are you looking at the linkstate RIB, or at the linkstate topology?

2015-09-02 16:20:01 -0700 received badge  Necromancer (source)
2015-08-31 06:27:07 -0700 answered a question dataBroker how to get specified node of list from data tree

Leaves are not directly addressable via InstanceIdentifier. In order to fetch them, you need to read the container in where these reside, in this case a keyed item, hence:

InstanceIdentifier<Node> id = InstanceIdentifier.create(DeviceInfo.class).child(Node.class, new NodeKey("1"));
ReadOnlyTransaction tx = db.newReadOnlyTransactio();
Node node =, id).get();
String desc = node.getDescription();
2015-08-30 15:23:13 -0700 answered a question identityref to Java mapping

Well, since each identity is an abstract singleton, there cannot really be Objects which implement the identity. This is why an identity references are mapped to references to a Class, as the class itself is the identity identifier. The field's tyoe should be Class<? extends AbstractId>.

To set it, you'd use SomeNameBuilder.setName(AbstractId.class);.

2015-08-30 15:15:37 -0700 answered a question Missing Constraint: Import-Package:

ODL Lithium ships with Guava 18. Do you need 19-rc1 for a particular reason?

2015-08-30 15:13:18 -0700 answered a question Data Change Listeners and Cluster

Data(Tree)ChangeListeners are currently notified only on the node with is co-located with the corresponding shard leader. Not sure there is an enhancement open for it, though.

2015-08-30 15:09:57 -0700 answered a question how to connect to Cisco-XR via netconf agent tty

There is some support for TCP-based connections, but I am not sure whether it would work with tty (e.g. handle login?).

2015-08-30 15:06:55 -0700 commented question High CPU Utilization when lithium controller runs

can you try with Lithium SR1? Also, is this with the original or lithium-redesign openflowplugin?

2015-08-30 15:04:33 -0700 received badge  Supporter (source)
2015-08-30 15:02:48 -0700 commented question Java fiailed to gen code from YANG

does this happen with Lithium SR1 (YT 0.7.1), too?

2015-08-30 14:55:48 -0700 answered a question Problem Serializing NormalizedNode using Yangtools

Can you open a bug at , please?

2015-08-30 14:54:16 -0700 answered a question getting error Some input files use or override a deprecated API

This is related to a canReuse->canReuseInstance rename or similar -- I don't remember what it was, though :-(

2015-08-30 14:45:56 -0700 answered a question Why this yang schema from one device can not be supported by ODL's yang tools

Please open a bug in at , along with the ODL version you are running and the error message/stack produced?

2015-08-30 14:42:52 -0700 answered a question Does the RESTCONF Config interface support network-topology? Any Examples?

I am not sure any SB plugin is working on network-topology config space. OF is still using inventory, PCEP uses OPER+RPCs.

2015-05-14 04:58:47 -0700 answered a question Enunicate version problem

The problem is use of JDK8, which is not compatible with enunciate. This failure has been fixed in Lithium release train, and should work (by skipping enunciate when JDK8 is detected).

2015-03-31 01:19:42 -0700 received badge  Nice Answer (source)
2015-02-18 04:12:10 -0700 answered a question Research: What are the biggest security challenges in SDN and OpenDaylight?

Can you forward this query to , please? It will reach more active people that way...

2015-02-18 04:09:24 -0700 answered a question Dependency resolution question

These APIs have been superseded in Helium release by the OSGi-agnostic APIs and configuration subsystem activation.

2015-02-18 04:08:05 -0700 commented question can i get the bandwith link with rest APi using helium

I am afraid you need to be more specific here. What models/APIs are you accessing and what is your SB protocol?

2015-02-18 04:06:49 -0700 answered a question Yang model and plugins relationship

Your observation is to what is implemented where is correct.

In general we use YANG each layer of the system, and each implementation performs model-to-model translation. In your specific L2 switch example, once you define the switch model, that will probably end up being an abstract API specification. After that you can choose to implement that API on top OpenFlow modes, or SNMP models, or any other technology.

I am not familiar with the examples, unfortunately :-/

2015-02-18 04:01:23 -0700 received badge  Organizer (source)
2015-02-12 10:59:07 -0700 answered a question Building bgpcep java.lang.UnsatisfiedLinkError on Mac

The bug has been resolved. Essentially the problem is that TCP-MD5 is supported only on Linux and some BGP unit tests were relying on that.

2015-02-10 07:28:37 -0700 answered a question opendaylight hydrogen set vlan id

Hydrogen is pretty much desupported in favor of Helium. Can you upgrade your distro to ODL Helium SR2?

2015-02-10 07:22:04 -0700 answered a question Missing module when creating custom yang plugin

You need to a add the following to your dependecies section of pom.xml:

2015-02-10 07:17:45 -0700 answered a question A required class was missing while executing org.codehaus.enunciate:maven-enunciate-plugin:1.28:docs: com/sun/mirror/apt/AnnotationProcessorFactory tracks this. The idea is to make enunciate activated only for JDK7 builds, as there are no current plans for a Java-8-compliant enunciate plugin.

2015-02-10 07:15:34 -0700 answered a question Stable/Helium release of Controller supports Java 1.8.0_25 ?

Java 7 is the only currently supported version. We would like to get controller Java-8-compatible by the time Lithium ships, but that is not a committed feature.

2014-11-10 02:25:53 -0700 answered a question OSPF-TE and MPLS

OpenDaylight does not implement an IGP protocol, but can learn the IGP topology via BGP/LS. To take advantage of that, you need to configure one of your XRs to be a BGP speaker and to perform the IGP->BGP/LS translation (sorry, don't have the configs readily available). You then tell ODL to connect to it, the steps are detailed in the BGPCEP User Guide. The data should then be visible in RESTCONF (as example-linkstate-topology, if I remember correctly).

2014-07-30 03:29:35 -0700 answered a question Yang error message when running pax exam

This is a harmless information that that particular model does not use the 'yang-version' statement (which is optional) and that the infrastructure assumes it is version 1 (which is the only version currently in existence, but 1.1 is coming).

2014-07-30 03:26:15 -0700 answered a question Should I develop an "app" as OSGi-plugin or use the REST-API?

MD-SAL interaction is available at both Java and REST(CONF) level, with Java being the primary one at this point.

The choice of which level to integrate in depends largely on the language of your choice and the interaction pattern you expect to use. If you are an end-user kind of application, which uses ODL to talk to the network, REST should be fine. If you end up providing programmatic interfaces on your northbound, a Java plugin would be better, as you can model your NB using the same means as MD-SAL and automatically have them consistent with the rest of ODL.

I cannot really comment on the terminology question. As for deprecation ... no AD-SAL is not officially deprecated, but it seems that more of the community's projects are centered around MD-SAL concepts and infrastructure.

2014-07-30 03:16:35 -0700 answered a question NoSuchMethodError for registerNotificationListerner

This revolves around an API change in the controller, I think -- make sure your compile-time and run-time environment have matching versions. It looks as though your run-time is lagging behind.

2014-07-30 03:13:23 -0700 answered a question yang versioning

There are some guidelines in , I think. In general the versioning question is not completely solved right now. I would suggest shooting an email at the appropriate -dev mailinglist.

2014-07-01 03:54:06 -0700 answered a question what are the implications of ext:context-instance field in yang files?

This is a language extension, defined in the yang-ext.yang module in support of Routed RPCs.

The context-instance defines an instance to which a routed RPC can be attached to. It has to be a list-like item with a key. In the relevant RPC's definition you then use a context-reference which points to the entity tagged with the context-instance.

The MD-SAL runtime then allows you to register a separate provider for each context instance existing in the system and it will examine the key in the RPC's input and invoke the appropriate RPC provider.

This is used, for example in BGPCEP's pcep-topology-provider: there can be multiple instances of the provider, each bound to a single network topology. Aside from populating the topology, the provider instance also services RPCs related to that topology. The model is defined over at;a=blob plain;f=pcep/topology-api/src/main/yang/network-topology-pcep.yang;hb=HEAD (note the imports and RPC definitions) and the implementation is registered in;a=blobplain;f=pcep/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/;hb=HEAD (note the create() method).

2014-07-01 03:38:24 -0700 answered a question I would like to extend OF1.3, where should I start.
  1. The openflowplugin has in-band protocol detection, e.g. it will decide whether to use 1.0 or 1.3 based on the message it receives from the switch. The relevant code is spread across three projects:

    • the semantic model is in the controller project, opendaylight/md-sal/models/model-flow-*
    • the low-level parsing/serialization forms the openflowjava project
    • the plugin itself (e.g. controller/openflowjava integration) forms the openflowplugin project
  2. Extending the models, which can be done internally or externally (via augments), automatically extends MD-SAL, so your job is done there. On the AD-SAL side, I guess you'd have to add new abstractions and create the appropriate MD-SAL/AD-SAL compatiblity translation.

  3. The way the code is structured means that you can use talk directly to openflowjava, which is a pure library

2014-06-17 04:41:09 -0700 answered a question What/Why are these error messages showing up

This looks like you have multiple versions of the same configurable artifact present in the plugins/ directory. Have you by any chance unzip the newer distribution in the same place where you had Hydrogen?

2014-06-07 14:39:32 -0700 answered a question Is the openflow 1.3 library simplified?

Not an expert on the subject, but I think the openflow 1.3 models are actually hosted over in controller/opendaylight/md-sal/model/model-flow-*.

2014-06-07 14:34:30 -0700 answered a question Two TopologyManagers in the Project?

Not sure how closely the AD-SAL concepts are mapped. The MD-SAL version utilizes the IETF-proposed topology model ( ) to achieve the same functionality. The idea was not to duplicate functionality, but rather align ODL concepts with emerging standards.

As for the relationship -- I am not aware of any. Ed wrote the original MD-SAL code, so should be in a position to comment, though...