Hi there, I have discovered that PersistentTTLNode (Curator 5.8.0 and probably previous versions) has a corner case that prevents that ZNode is deleted when program running the recipe is stop in certain situations. This is the sequence:- Start the recipe with TTL of 30secs -> Container Node is created- Stop the program (or the program crashes in production) that runs the recipe before Touch TTL node is created. This is NOT deterministic and basically a background thread is scheduled to run TTL/2 (by default). In worse case scenario de TTL node could take up to 15 secs in this example to be created When this is happening the CONTAINER node is never deleted. One option is to increase the touchScheduleFactor, BUT still this solution looks not correct for me.
In my view the recipe should watch the Container Node itself and just when the node is created, the recipe could trigger TOUCH node creation to minimize the opportunity window in which the problem happens. Let me know if I should open an ISSUE Regards, Cheva