Restore down nameservers after they come back online#8847
Merged
bneradt merged 1 commit intoapache:masterfrom May 17, 2022
Merged
Restore down nameservers after they come back online#8847bneradt merged 1 commit intoapache:masterfrom
bneradt merged 1 commit intoapache:masterfrom
Conversation
This patch ensures that a previously down DNS will be used again by ATS after connectivity to it is restored. Before this patch, we would try to reconnect to it after one attempt at DNS_PRIMARY_RETRY_PERIOD, but not again after.
SolidWallOfCode
approved these changes
May 16, 2022
Contributor
Author
|
Note that this PR fixes an issue that was introduced by: Since that latter PR only went into 9.2.x and beyond, this PR should only go into (and should only help issues with) 9.2.x and beyond as well. |
zwoop
pushed a commit
that referenced
this pull request
May 25, 2022
This patch ensures that a previously down DNS will be used again by ATS after connectivity to it is restored. Before this patch, we would try to reconnect to it after one attempt at DNS_PRIMARY_RETRY_PERIOD, but not again after. (cherry picked from commit 417e157)
Contributor
|
Cherry-picked to v9.2.x |
masaori335
pushed a commit
to masaori335/trafficserver
that referenced
this pull request
Feb 21, 2023
* asf/9.2.x: Updated ChangeLog Restore down nameservers after they come back online (apache#8847) Fix Rocky Linux 8 arm64 GCC Compiler Warnings (apache#8850) Fix `COMPRESSION_ERROR` on valid HPACK input (apache#8817) remap_stats: convert to using TSHttpTxnPristineUrlGet and TSHttpTxnClientReqGet for hostname, remove pre remap continuation (apache#8362) Re-introduce import to get man_pages list available for sphinx. Closes apache#8858 (apache#8859) Add missing configuration files man pages (apache#8861)
JosiahWI
pushed a commit
to JosiahWI/trafficserver
that referenced
this pull request
Jul 19, 2023
This patch ensures that a previously down DNS will be used again by ATS after connectivity to it is restored. Before this patch, we would try to reconnect to it after one attempt at DNS_PRIMARY_RETRY_PERIOD, but not again after. (cherry picked from commit 417e157)
JosiahWI
pushed a commit
to JosiahWI/trafficserver
that referenced
this pull request
Jul 19, 2023
YTSATS-3965: Restore down nameservers after they come back online (apache#8847)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This patch ensures that a previously down DNS will be used again by ATS
after connectivity to it is restored. Before this patch, we would try to
reconnect to it after one attempt at DNS_PRIMARY_RETRY_PERIOD, but not
again after.
For review
Calling
DNSHandler::mainEventwill attempt to reconnect to the name server if it had been previously marked as down. Before this patch, calling this was done via a set ofschedule_incalls which didn't result in it being called regularly. It was called once, but then not again after that. This simplifies the logic by periodically callingmainEventevery 5 seconds over the lifetime of ATS which will, if needed, retry any down name servers. This is the purpose of the newschedule_everybeing added instartEventwhich replaces the variousschedule_incalls in other code paths. This guarantees that we will re-inspect any down name servers every 5 seconds.