DNS max-retries inconsistencies
-------------------------------

                 Key: TS-424
                 URL: https://issues.apache.org/jira/browse/TS-424
             Project: Traffic Server
          Issue Type: Bug
          Components: DNS
            Reporter: Leif Hedstrom


While examining some related code, I noticed a few inconsistencies with our 
max-retries / default-retries code. In RecordsConfig.cc we have

  {CONFIG, "proxy.config.dns.retries", "", INK_INT, "5", RU_REREAD, RR_NULL, 
RC_NULL, NULL, RA_NULL}


while in the iocore/dns code, we have

iocore/dns/P_DNSProcessor.h: #define DEFAULT_DNS_RETRIES                 3


(the former overrides the latter though, but still confusing). Additionally, we 
have a define

iocore/dns/P_DNSProcessor.h: #define MAX_DNS_RETRIES                     5


which dictates the size of at least one static array. A problem here would be 
if someone tried to set proxy.config.dns.retries above 5, we might do bad 
things.

At a minimum, proxy.config.dns.retries  should be capped to MAX_DNS_RETRIES 
(this can be done in RecordsConfig.cc), and DEFAULT_DNS_RETRIES should have the 
same default as the RecordsConfig.cc setting (for consistency). We might want 
to bump up MAX_DNS_RETRIES too maybe to 9 (or 11), or possibly make the static 
arrays dynamically allocated (not sure that's worth the cost though, really).


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to