-
Notifications
You must be signed in to change notification settings - Fork 149
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
xrootd change runtime configuration without restart (debug/logging) #1499
Comments
There is no such interface as of yet, though we could add one; though it
wouldn't be particularly thread-safe. That said, it need not be
thread-safe for the purpose here.
Andy
…On Mon, 30 Aug 2021, Justas Bal?as wrote:
Restart in most cases is not the best solution as it will evict all the clients connected. It would be nice to have an option to increase debug level for any component without a service restart. Is there such?
e.g. I want to set to `xrootd.trace emsg stall redirect fs` or change to `xrootd.trace all -debug` without restart.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
#1499
|
Maybe it would be enough if a SIGUSR sent to process would make it to put pause to all incoming requests (somehow), reset all configuration to defaults and then re-read the configuration files? (with the assumption that the ongoing operations have already a set of properties/configs and can go on) |
Whi;le such an approach is doable for simple services, the complex nature of the server makes is unfeasable. Consider that each plugin would have to re-initialize and persistent state may get invalidated and providing consistency across a existing sesssions would be incredibly difficult if not impossible. Instead, we chose to provide recoverability via the client. Restating a server should not fail any existing client as it simply reconnects after a restart and continues where it left off if the new configuration allows it (think, among other issues like changes in security or exports). That has proven to be the most reliable way allow on-the-fly configuration changes. |
There is way too much interrelated information that is constructed during initialization and to reconstruct would effectively squelch the server which is about the same as doing a restart. Add to that, this would be a massive change to the internal initialization of not only the base server but every plugin. So, I'd say this cannot be practically done. |
Restart in most cases is not the best solution as it will evict all the clients connected. It would be nice to have an option to increase debug level for any component without a service restart. Is there such?
e.g. I want to set to
xrootd.trace emsg stall redirect fs
or change toxrootd.trace all -debug
without restart.The text was updated successfully, but these errors were encountered: