-
Bug
-
Resolution: Done
-
None
-
unspecified
-
None
-
Operating System: Mac OS
Platform: PC
-
1802
Though it is a generic problem, it is highly exposed in Karaf runtime.
When a passive OVSDB connection is established with the Controller, the OVSDB library uses handleNewPassiveConnection method to inform all the registered listener about the new OVSDB connection. But this works only if the plugin bundle is up and running at this time.
Since Karaf takes an alacarte approach, it is possible that the Library feature alone is brought up first followed by the plugin feature. If any OVSDB connections were established with the Library before the Plugin feature is installed, those events are never played back to the Plugin.
The fix is to play back the existing and known connections in library to the newly registering connection listener. Something like :
for (OvsdbClient client : connections.keySet())
{ listener.connected(client); }in registerConnectionListener().