Scheduling functions broken completely

@slagle @jody.albritton

This started last night - suddenly all apps now throw and exception when trying to access any scheduling functions.
unschedule()
runIn
runOnce

all throwing an error:

80c20f6a-22ce-4694-84df-c847b3afdd39 7:57:27 PM: error java.lang.reflect.UndeclaredThrowableException @ line 192

this is a call to unschedule() in the updated function. Similarly with runIn and runOnce - they all crap out with an exception. It was fine till last night.

I can’t even uninstall any apps using scheduling functions I get this error:

80c20f6a-22ce-4694-84df-c847b3afdd39 7:53:02 PM: error java.lang.reflect.UndeclaredThrowableException

Reported this to support - they seem to think it’s the platform upgrade but can’t pin point it.

Any ideas? This is frustrating no scheduling apps work, can’t uninstall…

1 Like

I’ve had the same problem intermittently all day; it has been working OK (other than “forgetting” some scheduled event now and then, but that’s fairly normal) during most of the (EST) afternoon.
Seems still OK now; it may well be it depends on which machine your app ends up executed on…

This started Monday. Got worse Tuesday.

1 Like

We have the exact same problem with SmartTiles and currently just “commented out” 3 calls to runIn() for now as an emergency hotfix – it’s working OK now.

We presume this problem is out of our hands, since “uninstall” has to clear the schedules for the SmartApp to be removed cleanly.

yeah but unschedule() is in the update function, I can’t change any app settings!

I weep with you, @RBoy … sincerely. :crying_cat_face:

1 Like

Can’t you edit the app code to remove the failing function call - or wrap it in a try/catch block, publish it it and then modify the app settings? Depending on the app it may well be the whole thing is useless without access to scheduling functions, but you should be able to modify its settings.

1 Like

yeah it makes the app useless - it’s all about timers (think thermostat) and timer driven events (think expirations)

the unschedule() and runIn is core the apps. I can’t believe ST deployed such a huge faux pas. It’s a repeat of 2014 all over again.

2 Likes

And 2014 was a repeat of 2013.

Apparently no one is learning from history… (yet).

4 Likes

No weekend for SmartThings Engineers!

Being a DevOps Engineer, I gotta say: pushing a big update on a Thursday is not the smartest thing, since you don’t have much time to fix regressions before the weekend. Come on guys, this kind of stuff should be done on a Monday or Tuesday.

What is a “weekend”?

SmartThings is still run like a startup. There is no such thing as a “weekend”.

1 Like

Is not a platform wide issue. My system is going strong. No issues with unchedule or runin for the past several hours, and I had plenty in the past few days. Hope is not just a delayed effect that hasn’t reached me yet!

My house is a pretty dumb house right now too… :sob:
Feel like the largest most actively involved community of Guinea pigs.

4 Likes

Schedules still fail. It’s better than the last few days, but not as good as it was prior to Monday (at least for me).

I guess the update FAILED to solve the scheduling issue (not that I thought it would).

2 Likes

I think it’s a platform wide “bug” but it’s only affecting some servers in the cluster. That’s what’s making it so hard for the engineers to debug and find the root cause. Thinking poor architecture design. Synchronization is what’s hurting them. This issue of poor design isn’t limited to scheduling but IMHO the overall design. IDE live logging is having similar issues, depending on which cluster server, some servers are out of sync and drop messages. So if your debug instance is running on a server which has issues you’re facing it. Same thing applies to scheduling. Again this is me piecing together from various source of inputs I’m getting. I would love an official explanation as to why Scheduling is so difficult to fix and affects random users (same for live logging)

3 Likes

I have the exact same problem. Fired up the ide and the log and note that calling unschedule() throws an exception.

This has fundamentally broken all my timed automations, of which the most important one is autolock the front door.

This feels like a joke, surely there must be some better qa and/Or observability for diagnostics on the platform? It doesn’t feel like this is a particularly complicated platform so I just don’t get it.

Does any of you have a call in with support? I’m going to log one now.

1 Like

I reported it to ST support they did something at the backend to fix the problem. However in the bargain some of my z-wave device stopped working completely and I had to exclude and re pair them with the hub.

Makes no sense to me, clearly a scalable infrastructure must have assume they need a method of serializing messaging that can be versioned during run time? The alternative seems unrealistic to me. I don’t really know how St works so maybe I’m just simplifying it too much.

They asked me to try a workaround in support today but it didn’t work.

Par

1 Like

Well junk. I’m getting this now too in my “Bathroom Light Control” SmartApp at Line 270 which simply calls unschedule().
It last executed properly 2016-01-19 7:22:42 AM CST according to graph.api.smartthings.com

Also, my Goodbye routine is no longer working which is costing me real money by keeping lights and HVAC on as well as not arming my house. :frowning:

I submitted a support case as well.

1 Like