xiangdong chen created TS-4744:
----------------------------------

             Summary: ParentConsistentHash::selectParent may select the 
unavailable parent
                 Key: TS-4744
                 URL: https://issues.apache.org/jira/browse/TS-4744
             Project: Traffic Server
          Issue Type: Bug
            Reporter: xiangdong chen


code :ParentConsistentHash.cc,begin at line 141  
do { // search until we've selected a different parent.
        prtmp = (pRecord *)fhash->lookup(NULL, &result->chashIter[last_lookup], 
&wrap_around[last_lookup], &hash);
        if (prtmp) {
          pRec = (parents[last_lookup] + prtmp->idx);
        }
      } while (prtmp && strcmp(prtmp->hostname, result->hostname) == 0);

fix it like this:
        if (prtmp)
          pRec = (parents[last_lookup] + prtmp->idx);
        else  //begin of added xdchen, line:143
          pRec = NULL; //endof of added by xdchen  

 if (prtmp) {
          pRec = (parents[last_lookup] + prtmp->idx);
          Debug("parent_select", "Selected a new parent: %s.", pRec->hostname);
        }
        else  //begin of added xdchen, line:188
          pRec = NULL; ////end of added xdchen
 
      }



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to