-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[velux] Improve shutdown exception handling #12356
Conversation
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
Ping @gs4711 for comments if any.. |
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
@andrewfg, being busy within the last days... therefore, now an answer after a delay of some days. The changes look good to me. Just out of curiosity: how did you came to the value of MAX_WAIT_SECONDS ? |
The OH maintainers request that a binding shutdown should try not to take longer than 15 seconds. |
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
…12367) * [openthermgateway] clean version of prior PR * [openthermgateway] fix NoSuchMethod exception * [openthermgateway] create thread according to OH guidelines * [openthermgateway] fix annotation warning * [openthermgateway] framework handles bridge status changes * [openthermgateway] implement learnings from PR #12356 * [openthermgateway] add ReadMe chapter on migration v3.2 .. v3.3 * [openthermgateway] delete duplicate OpenThermGatewayBindingConstants class * [openthermgateway] remove redundant else clause, remove npe warning * [openthermgateway] log to debug rather than info; eliminate static import * [openthermgateway] eliminate static import * [openthermgateway] suppress unused argument warning * [openthermgateway] delete xml definitions for no longer used 'otgw' Thing type Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
@fwolter many thanks. |
This pull request has been mentioned on openHAB Community. There might be relevant details there: https://community.openhab.org/t/connection-to-velux-klf-200-is-lost-after-reboot/134354/3 |
…penhab#12367) * [openthermgateway] clean version of prior PR * [openthermgateway] fix NoSuchMethod exception * [openthermgateway] create thread according to OH guidelines * [openthermgateway] fix annotation warning * [openthermgateway] framework handles bridge status changes * [openthermgateway] implement learnings from PR openhab#12356 * [openthermgateway] add ReadMe chapter on migration v3.2 .. v3.3 * [openthermgateway] delete duplicate OpenThermGatewayBindingConstants class * [openthermgateway] remove redundant else clause, remove npe warning * [openthermgateway] log to debug rather than info; eliminate static import * [openthermgateway] eliminate static import * [openthermgateway] suppress unused argument warning * [openthermgateway] delete xml definitions for no longer used 'otgw' Thing type Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> Signed-off-by: Nick Waterton <n.waterton@outlook.com>
* [velux] add isDisposing flag to accelerate shutdown Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] refactor Poller into a separate class Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] use new Poller class; fix startup, shutdown, and exception code Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] demote confusing log message Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] slightly more elegant interrupt flag set / check Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> Signed-off-by: Nick Waterton <n.waterton@outlook.com>
…penhab#12367) * [openthermgateway] clean version of prior PR * [openthermgateway] fix NoSuchMethod exception * [openthermgateway] create thread according to OH guidelines * [openthermgateway] fix annotation warning * [openthermgateway] framework handles bridge status changes * [openthermgateway] implement learnings from PR openhab#12356 * [openthermgateway] add ReadMe chapter on migration v3.2 .. v3.3 * [openthermgateway] delete duplicate OpenThermGatewayBindingConstants class * [openthermgateway] remove redundant else clause, remove npe warning * [openthermgateway] log to debug rather than info; eliminate static import * [openthermgateway] eliminate static import * [openthermgateway] suppress unused argument warning * [openthermgateway] delete xml definitions for no longer used 'otgw' Thing type Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
* [velux] add isDisposing flag to accelerate shutdown Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] refactor Poller into a separate class Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] use new Poller class; fix startup, shutdown, and exception code Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] demote confusing log message Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] slightly more elegant interrupt flag set / check Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
…penhab#12367) * [openthermgateway] clean version of prior PR * [openthermgateway] fix NoSuchMethod exception * [openthermgateway] create thread according to OH guidelines * [openthermgateway] fix annotation warning * [openthermgateway] framework handles bridge status changes * [openthermgateway] implement learnings from PR openhab#12356 * [openthermgateway] add ReadMe chapter on migration v3.2 .. v3.3 * [openthermgateway] delete duplicate OpenThermGatewayBindingConstants class * [openthermgateway] remove redundant else clause, remove npe warning * [openthermgateway] log to debug rather than info; eliminate static import * [openthermgateway] eliminate static import * [openthermgateway] suppress unused argument warning * [openthermgateway] delete xml definitions for no longer used 'otgw' Thing type Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> Signed-off-by: Andras Uhrin <andras.uhrin@gmail.com>
* [velux] add isDisposing flag to accelerate shutdown Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] refactor Poller into a separate class Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] use new Poller class; fix startup, shutdown, and exception code Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] demote confusing log message Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] slightly more elegant interrupt flag set / check Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> Signed-off-by: Andras Uhrin <andras.uhrin@gmail.com>
…penhab#12367) * [openthermgateway] clean version of prior PR * [openthermgateway] fix NoSuchMethod exception * [openthermgateway] create thread according to OH guidelines * [openthermgateway] fix annotation warning * [openthermgateway] framework handles bridge status changes * [openthermgateway] implement learnings from PR openhab#12356 * [openthermgateway] add ReadMe chapter on migration v3.2 .. v3.3 * [openthermgateway] delete duplicate OpenThermGatewayBindingConstants class * [openthermgateway] remove redundant else clause, remove npe warning * [openthermgateway] log to debug rather than info; eliminate static import * [openthermgateway] eliminate static import * [openthermgateway] suppress unused argument warning * [openthermgateway] delete xml definitions for no longer used 'otgw' Thing type Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
* [velux] add isDisposing flag to accelerate shutdown Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] refactor Poller into a separate class Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] use new Poller class; fix startup, shutdown, and exception code Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] demote confusing log message Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch> * [velux] slightly more elegant interrupt flag set / check Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
Potentially fixes #12327
This PR addresses the issues discussed in #10454 and #12327 in a further attempt to solve the KLF200 'zombie state' problem.
Two things have been improved..
InterruptedException
,ExecutionException
, andIOException
more properly and completely.Signed-off-by: Andrew Fiddian-Green software@whitebear.ch