SmartThingsCommunity / SmartThingsPublic

SmartThings open-source DeviceType Handlers and SmartApps code
https://developer-preview.smartthings.com/docs/devices/hub-connected/get-started
2.56k stars 89.96k forks source link

SmartApp dynamicPage - Function Calls Grow Exponentially #2082

Open randuhmm opened 7 years ago

randuhmm commented 7 years ago

I also opened a topic on the community forums here:

https://community.smartthings.com/t/bug-issue-with-dynamic-page/89625

Using the code below, the function is being called twice every interval causing the logging to spiral out of control.

definition(
    name: "TestApp",
    namespace: "randuhmm",
    author: "Jonny Morrill",
    description: "testing",
    category: "",
    iconUrl: "https://s3.amazonaws.com/smartapp-icons/Convenience/Cat-Convenience.png",
    iconX2Url: "https://s3.amazonaws.com/smartapp-icons/Convenience/Cat-Convenience@2x.png",
    iconX3Url: "https://s3.amazonaws.com/smartapp-icons/Convenience/Cat-Convenience@2x.png")

preferences {
    page(name: "testFunc", title: "Test Func", content: "testFunc")
}

def testFunc() {
    log.debug 'testFunc()'
    dynamicPage(name: "testFunc", title: "Test Func", nextPage: "", refreshInterval: 5, install: true, uninstall: true) {
        section("Example...") {
        }
    }
}

The logs for this SmartApp look like this:

9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:38 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:37 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:33 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:33 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:32 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:27 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:27 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:27 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:27 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:27 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:27 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:26 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:26 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:21 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:21 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:21 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:21 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:16 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:16 PM: debug testFunc() 9779fd5c-b67e-4916-8b60-8873bef14562 9:46:11 PM: debug testFunc()

As you can see the number of concurrent function calls is increasing exponentially every cycle. It would be a great help if anyone could confirm this behavior on their end. Thanks!

copy-ninja commented 7 years ago

I can confirm that. after a couple of cycles, it will crash the SmartThings app