Hello All,

We are building a domain manager product in order to provision network devices 
in the PON and DOCSIS domains for which
we are using lighty.io as the core framework. We have quite a few YANG models 
which serve as the core models and these
models get registered with lighty as part of the lighty initialization.

We also expose few RPC API s that enable writing of data into the MDSAL 
operational data store corresponding to the above models.
There is a requirement to support introduction of new YANG models into the 
system and as part of the process, these models need to be
stored into the MDSAL data tree and also dynamically registered with lighty.  
Once these models are registered  the expectation is to be able
to write data into the MDSAL data tree for these models.

Currently, we have run into an issue where the dynamic registration of new YANG 
models is not working as expected and write is not happening
into MDSAL since MDSAL cannot recognize these models .Analysis of the lighty 
framework code revealed that upfront the lighty framework builds the schema 
context with the initial set of YANG models that are packaged with the 
application. This initial schema context is passed down to the RESTCONF module 
and assigned to some of the objects that are used
during write/read operations to/from MDSAL.
Any new model that gets introduced into the system post startup needs to go 
into the schema context.
The issue that we are facing is that lighty.io does not offer any API that 
facilitates addition of new models into the existing schema context and the 
schema
context needs to be rebuilt and updated wherever required.
To update the schema context that is created as part of the RESTCONF module 
startup the RESTCONF module library code was modified to add a method to update 
the schema context and this method was invoked from the flow that introduces 
new models into the system.
This resolved the initial problem of finding the module in the schema context 
but the write operation failed later on because the write transaction objects 
use a In memory data tree snapshot which has the initial schema context 
encapsulated within it and this snapshot is read-only and initialized as part 
of the shard creation and therefore cannot be updated directly. Need to find a 
way to if possible to re-create/update it.
We are not able to find out a way to update the schema context at the global 
level so that it is reflected in all places where it is used.

We also want to understand how to create an instance of a container within a 
model that augments a container from another model. it has to be noted that 
this container is not
explicitly defined as part of the model being augmented.

Appreciate any assistance that will help us to resolve the above issues

Thanks,

Ravishankar CS
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#8812): https://lists.opendaylight.org/g/Discuss/message/8812
Mute This Topic: https://lists.opendaylight.org/mt/86466972/21656
Mute 
#opendaylight:https://lists.opendaylight.org/g/Discuss/mutehashtag/opendaylight
Group Owner: discuss+ow...@lists.opendaylight.org
Unsubscribe: https://lists.opendaylight.org/g/Discuss/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to