-
Notifications
You must be signed in to change notification settings - Fork 1
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
Improved some plugin parameters #2
Conversation
Albibek
commented
Oct 13, 2016
- (Breaking change) Changed broker address to URI to handle ws:// and other supported schemas
- Added reconnect parameters and retry counter
- Added QoS specification via tuple fields
Thanks for the PR! I'll merge this after testing the changes. Also, I'll make a few additional small changes: (1) support old |
Thanks for answering. |
That's a lot :) Because I'm flying back to the US from Japan tomorrow, please let me have time to think of a proposal. I'll probably create a new issue for it and merge this PR first. |
@Albibek Can the default value of Actually, I'm not sure if there's any use case that a user want to stop the source when a MQTT broker is down. @tgpfeiffer Do you think this retry counter is necessary? |
@nobu-k , you're right, the infinite value is far more reasonable than finite one. I think finite value here could still be meangful in some future cases where it is possible to specify more than one broker. |
Thanks for the comment. I think we should remove the parameter at the moment and add it again when it gets required. Your usecase makes sense to me, and we'll probably have a better idea on retries when we actually support multiple brokers. |
I can't still think of a good way to support lots of TLS parameters effectively, but I created an issue for it to merge this PR in advance. #3 Could you make some comments on the issue if you already had some idea? |
I can imagine that, when an MQTT broker goes/is down, both behaviors ("retry forever" and "retry only N times, then give up") may be desired and should be available. As for the default, I think "retry forever" makes more sense. |
Well, having the whole sensorbee still working while some sources are stopped and cannot restore their state brings the program to some black-boxed inconsistent state. Can such state be monitored via REST or any other status report or the user only has logs? Do you think that log reporting is enough here? Does the source have the ability to report it's inconsistent state or just be restarted? |
Currently, watching logs are the only way to know if something wrong has happened. I think log reporting isn't enough. Especially, the main purpose of SensorBee is to run stream data processing at the edge of the network and it isn't always possible to watch log files there. Internally, it is possible to leave the stopped source and see what happened via REST API with error information if any. However, the current implementation automatically removes all stopped nodes and there's no way to configure that behavior. If you need this kind of feature, please give us a request. |
Well, it seems to me that reconnect retries value is of no concern to be set to -1. See the commit above. |
Considering other parts of discussion. |
Let's remove I can make that change and merge this PR if you're okay with it. |
Done. Thought about the totally same thing. |
Thanks!! I merged this PR with following changes: supporting old format of I'll release v1.1.0. |