RM Cancel Rule Timers Bug

Hello,

When executing the Cancel Rule Timers action against another rule which is actively executing a Dimmer Fade action (raising light levels), it fails.

Cancel timed actions of these rules (cancels Periodic, all Delayed Actions, Repeated Actions, Dimmer Fade, Wait for Event and Wait for Conditions)

The fade dimmer rule is using the "dimFadeStepUp" method when scheduling. Was this method missed in the Cancel Rule Timers action implementation?

It's easy to reproduce, give it a try...

Anyone take a look at this?

You may get some takers (not myself - I don't really use dimmers in this capacity) by posting screenshots of your rules to aid folks in making it easier to duplicate your setup for testing purposes.

Hubitat development team, can you please take a look?

If you think it's a bug, they you need to open a case by emailing:

support@hubitat.com

But they are likely going to want to see your rules too, so why not post them as GatVlieg suggested?

Yes, I will look into this. Thanks.

Interesting, but the code definitely cancels dimFadeStepUp. So, I do need to see the rules in question, and some logs would be helpful also. For example, are you sure that the action to Cancel Rule Timers actually runs, and that it actually hits the other rule?

I will reproduce with a simple rule and send your way shorty. Thanks Bruce.

I stand corrected, the issue is still happening. Check out the screen shots for the rule details. When I hit the shutdown button, it does not stop the "dimFadeStepUp" scheduled method.

Anyone able to help with this? Did I setup the rule correctly?

I'd like to add to the Cancel Rule Timer bug, perhaps what I'm seeing is related to the OP.

Two simple rules, the first rule (1640) Waits for Events for a contact sensor to be closed and the second (1641) cancels the wait using Cancel Rule Timers (Cancel Timed Actions). You can see from the log that attempting to Cancel Timed Action caused the first rule to throw a null(stopAct) error. The wait isn't cancelled and the rule continues to execute after the contact is closed.

Edit - @bravenel could you take a look at this?
image image

These rules don't make much sense. What is running them? What are you trying to accomplish?

Please show the app status page for both rules.

These are simple rules to help debug what I've seen multiple times in more complicated rules. I find it much easier to review the logs and understand what's happening with simple rules like these. They are so simple I just use the Run Actions. I can add a trigger but it would just be a virtual switch.

What I'm trying to demonstrate is that the "Cancel Timed Actions: WaitforEvents" isn't actually cancelling the "Wait for events: Door Basement Steps closed".


Have you had a chance to look at this issue?

Not yet. Will get to it tomorrow.

Found this problem and did a fix. Fix will be in 2.2.0 release.

Thanks, Bruce!

What is being fixed exactly?

There was a null pointer error when attempting to cancel a wait from another rule (thrown in the rule with the wait). That was corrected, and the wait can now be successfully cancelled by the other rule.

1 Like