Describe the bug
Shadow Manager can reach a state where it effectively stops listening to configuration updates. While in this state, it is not possible for customers to update ShadowManager configuration to add / remove shadows, or to change sync behavior. This leads to customer frustration since their configuration may actually be correct, but ShadowManager does not respect it. Restarting Greengrass resolves the issue.
This issue is caused by the fact that ShadowManager subscribes to individual configuration nodes during initialization (e.g. here, and here). These configuration node subscriptions are "lost" if the node gets deleted. This occurs if a deployment which performs a RESET on the configuration node occurs.
To Reproduce
Deploy ShadowManager component
Perform a second deployment which performs a ShadowManager configuration reset (RESET: [""])
Perform a third deployment which configures SM to sync a shadow
Expected behavior
ShadowManager should respond to the 3rd deployment by beginning to sync the specified shadow.
Actual behavior
It does not sync the new shadow until Greengrass is restarted.
Environment
OS: [e.g. Ubuntu 20.04]
JDK version:
Nucleus version:
Shadow Manager version:
Additional context
Add any other context about the problem here.
Describe the bug Shadow Manager can reach a state where it effectively stops listening to configuration updates. While in this state, it is not possible for customers to update ShadowManager configuration to add / remove shadows, or to change sync behavior. This leads to customer frustration since their configuration may actually be correct, but ShadowManager does not respect it. Restarting Greengrass resolves the issue.
This issue is caused by the fact that ShadowManager subscribes to individual configuration nodes during initialization (e.g. here, and here). These configuration node subscriptions are "lost" if the node gets deleted. This occurs if a deployment which performs a
RESET
on the configuration node occurs.To Reproduce
RESET: [""]
)Expected behavior ShadowManager should respond to the 3rd deployment by beginning to sync the specified shadow.
Actual behavior It does not sync the new shadow until Greengrass is restarted.
Environment
Additional context Add any other context about the problem here.
E.g. what is the impact of the bug?