Bug 8197: Deregister schema sources on actor stop 09/55909/4
authorAndrej Mak <andrej.mak@pantheon.tech>
Mon, 24 Apr 2017 13:08:27 +0000 (15:08 +0200)
committerJakub Morvay <jmorvay@cisco.com>
Thu, 27 Apr 2017 10:46:10 +0000 (10:46 +0000)
commit21996cd0b76a2df257683b1509cc23406f6cdf4f
tree2077187b4cbdb3593e290d088f7dfb4a2d7f2caa
parent24b4a224a27ab2d12f1fe16bb0e2683403064931
Bug 8197: Deregister schema sources on actor stop

NetconfNodeActor registers schema source provider
to schema registry. When mountpoint is removed, this
registration should be removed too. If it isn't,
following issue can happen:

1. Create mountpoint for device1
2. Master actor for device1 is registered as mod-1.yang provider
3. Delete device1
4. Create mountpoint for device2
5. Master actor for device2 is registered as mod-1.yang provider
6. Register slave -
   schemaContextFactory.createSchemaContext(sourceIdentifiers)
   is called
7. Since dead device1 master is still registered as provider,
   ask in ProxyYangTextSourceProvider timeouts
8. After timeout device2 master is queried
9. Device 2 slave mountpoint registered

This delays slave mountpoint registration.

Change-Id: I060c8b1988ba7b54f9a93d7eb37adb5c5e48b23b
Signed-off-by: Andrej Mak <andrej.mak@pantheon.tech>
netconf/netconf-topology-singleton/src/main/java/org/opendaylight/netconf/topology/singleton/impl/actors/NetconfNodeActor.java
netconf/netconf-topology-singleton/src/test/java/org/opendaylight/netconf/topology/singleton/impl/NetconfNodeActorTest.java