-
Couldn't load subscription status.
- Fork 36
TASK-91082: Announce dnsbuf module deprecation
#807
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
base: main
Are you sure you want to change the base?
Conversation
Signed-off-by: Doug Koerich <douglas.koerich@bird.com>
✅ Deploy Preview for support-docs ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
| <a name="example.dnsbuf"></a> | ||
|
|
||
| ``` | ||
| dnsbuf { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we still have dnsbuf module? I thought we moved the config options to global.
And this options only work for ARES resolver, right? I don't see it's called out here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The dnsbuf module was retained for back compatibility, but you can see in the source code PR that it changes the new global configuration behind the scenes.
And yes, this is only applicable for ARES (indeed, it always was, even in the 4.7 version and older ones).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So the config option defined in the module will be actually taken for the global? Why is it? We don't normally do it.
I would prefer to remove them from the dnsbuf module and only keep it as global.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So the config option defined in the module will be actually taken for the global? Why is it? We don't normally do it.
The original implementation of dnsbuf relied on the UDP sockets that Momentum created for ARES in the glue logic with the imported library, so the changes in the options could be set at runtime, e.g., with a reload of the configuration.
Now the UDP buffers for the sockets created internally by ARES need to be configured at the library instantiation, i.e., during ecelerity startup. I looked for an example in the source where the core searches for and reads the options of an instantiated module to be applied during startup; however, I think that this is not possible with the current support of the modules API.
I would prefer to remove them from the dnsbuf module and only keep it as global.
If we replace the dnsbuf options with the global options, we'll break the configuration of customers that use that module.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- If we can re-initialize ARES lib/channels before, we should be able to do it now. But the easiest way right now is to keep the UG clear that such configuration change requires Momentum restart
- We don't want to keep supporting deprecated features. If
dnsbufhas no need to exist any more, customers using it right now will fail to start Momentum and a one time fix to move the configuration to global will fix it. I'd like to go this route. Not mentioning that it's very unlikelydnsbufis actually in use.
| /opt/msys/ecelerity/bin/ec_console | grep DNS); echo; done | ||
| ``` | ||
|
|
||
| The following is an example in which Momentum started with ~30,000 unresolvable domains in the queue. Notice that the "packet receive errors" number has increased, and there are a high number of pending DNS queries. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this meant to show the output from the above summary cmd and grep? It isn't, unless maybe you added a -C1 to the grep.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That would print the previous and next lines of the lines containing "DNS" in the command output, what I think is not the purpose here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My point was that this example output does have lines before and after the lines with 'DNS' in them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh, I see your point, you were referring to the next snippet, sorry.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, that output is for a 4.7 version and earlier, when there were fewer "DNS" lines in the summary output.
The first line comes from the output of netstat.
Signed-off-by: Doug Koerich <douglas.koerich@bird.com>
Signed-off-by: Doug Koerich <douglas.koerich@bird.com>
|
The changes in documentation are limited to announcing that the |
dnsbuf module deprecation
Signed-off-by: Doug Koerich <douglas.koerich@bird.com>
Note
Announces dnsbuf deprecation (removed in 4.8) and updates Momentum 3/4 docs with availability, guidance, and minor formatting tweaks.
dnsbuf:dnsbufwas deprecated in Momentum 4.8 and is no longer supported (Momentum 3 and 4 pages).4.2through4.7.131072.summarycommand.Written by Cursor Bugbot for commit e8e1b9c. This will update automatically on new commits. Configure here.