Uploaded image for project: 'controller'
  1. controller
  2. CONTROLLER-1808

Toaster yang module is incompatible with the netconf central one

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Low Low
    • None
    • None
    • documentation
    • None
    • git repository

      Netconf central has a repository of official yang modules. It contains [0] a module "toaster" revision "2009-11-20". "Compatible copies" can be found in other repositories, for example [1] adds (without updating revision) a comment section with the original MIB.

      ODL controller repository contains (still in master and at least since helium) [2] a yang module with the same name and revision, but with different structure.
      ODL toaster adds darknessFactor leaf, restock-toaster rpc, toasterOutOfBread and toasterRestocked notifications, but also removes toastDone notification (which would not be allowed even if the revision is updated). Some other places (for example [3]) mirror the ODL variant of toaster module.

      Moreover, the netconf central module contains Copyright claim in its description, and if ODL toaster has started as a copy of the netconf central one, it would violate the copyright (because it requires edited copies to contain the copyright notice, but ODL toaster does not contain the copyright).
      It is possible that the ODL module started [4] from an earlier draft, in which case ODL is perhaps not required to honor the copyright added later.
      Anyway, both modules have "http://netconfcentral.org/ns/toaster" as namespace, strongly suggesting that netconf central is the authority on which model is official.

      But ODL has definitely made [5] the aforementioned incompatible changes (as enhancements [6]), so now there are two incompatible toaster modules available to general public, which is bad.

      One possible fix is to rename the ODL variant to odl-toaster.

      [0] http://www.netconfcentral.org/modulereport/toaster

      [1] https://sourceforge.net/p/yuma123/git/ci/3aa13d8eb378a254a8554bb1f76617ced59efd31/tree/netconf/modules/netconfcentral/toaster.yang

      [2] https://github.com/opendaylight/controller/blob/release/helium/opendaylight/md-sal/samples/toaster/src/main/yang/toaster.yang

      [3] https://github.com/YangModels/yang/blob/master/experimental/odp/toaster.yang

      [4] https://git.opendaylight.org/gerrit/#/c/864/3/opendaylight/sal/yang-prototype/sal/samples/toaster/src/main/yang/toaster.yang

      [5] https://git.opendaylight.org/gerrit/#/c/6379/7/opendaylight/md-sal/samples/toaster/src/main/yang/toaster.yang

      [6] https://jira.opendaylight.org/browse/CONTROLLER-365

            Unassigned Unassigned
            vrpolak Vratko Polak
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: