12-15-2017 03:18 PM - edited 03-01-2019 04:03 AM
Hello,
When we create a new service package, there is a default code snippet that is added to our RFS file which verifies the capabilities of all the devices added in NSO and if it couldn't retrieve capabilities for any of the device. even unrelated service creation or update will fail.
So far, we had developed and deployed multiple service-packages and we left the code snippet as is in the RFS file because we assumed, NSO stores all the capabilities of a device in the CDB and even when a device is temporarily disabled, it wouldn't affect a service lifecycle.
But, recently we had observed an issue in our test environment where all the service creations were failed because of one device which got disconnected. Now, before deploying the fix, we would like to understand when does NSO store these capabilities of a device in CDB and when will it delete this information from the CDB
Best Regards
Sandeep.T
Solved! Go to Solution.
12-18-2017 01:16 AM
That default code snippet should not go into production code. It is there only because it reduces the support load for the Tail-f BU. One of the most common beginner mistakes is to forget to sync-from before running the service, and bad things happen in the code. The snippet helps remind people to do the sync-from.
In production code, as you rightly mention, there will be cases occasionally where some device doesn't have any stored capabilities yet. And if there are many devices, this (somewhat stupid) check may even cause a performance problem.
So remove it. It's just a guard rails for beginners. I'm glad you asked.
/jan
12-18-2017 01:16 AM
That default code snippet should not go into production code. It is there only because it reduces the support load for the Tail-f BU. One of the most common beginner mistakes is to forget to sync-from before running the service, and bad things happen in the code. The snippet helps remind people to do the sync-from.
In production code, as you rightly mention, there will be cases occasionally where some device doesn't have any stored capabilities yet. And if there are many devices, this (somewhat stupid) check may even cause a performance problem.
So remove it. It's just a guard rails for beginners. I'm glad you asked.
/jan
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide