[ https://issues.apache.org/jira/browse/HDFS-16252?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stephen O'Donnell updated HDFS-16252: ------------------------------------- Status: Patch Available (was: Open) > Correct docs for dfs.http.client.retry.policy.spec > --------------------------------------------------- > > Key: HDFS-16252 > URL: https://issues.apache.org/jira/browse/HDFS-16252 > Project: Hadoop HDFS > Issue Type: Improvement > Reporter: Stephen O'Donnell > Assignee: Stephen O'Donnell > Priority: Major > Attachments: HDFS-16252.001.patch > > > The hdfs-default doc for dfs.http.client.retry.policy.spec is incorrect, as > it has the wait time and retries switched around in the descriptio. Also, the > doc for dfs.client.retry.policy.spec is not present and should be the same as > for dfs.http.client.retry.policy.spec. > The code shows the timeout is first and then the number of retries: > {code} > String POLICY_SPEC_KEY = PREFIX + "policy.spec"; > String POLICY_SPEC_DEFAULT = "10000,6,60000,10"; //t1,n1,t2,n2,... > // In RetryPolicies.java, we can see it gets the timeout as the first in > the pair > /** > * Parse the given string as a MultipleLinearRandomRetry object. > * The format of the string is "t_1, n_1, t_2, n_2, ...", > * where t_i and n_i are the i-th pair of sleep time and number of > retries. > * Note that the white spaces in the string are ignored. > * > * @return the parsed object, or null if the parsing fails. > */ > public static MultipleLinearRandomRetry parseCommaSeparatedString(String > s) { > final String[] elements = s.split(","); > if (elements.length == 0) { > LOG.warn("Illegal value: there is no element in \"" + s + "\"."); > return null; > } > if (elements.length % 2 != 0) { > LOG.warn("Illegal value: the number of elements in \"" + s + "\" is " > + elements.length + " but an even number of elements is > expected."); > return null; > } > final List<RetryPolicies.MultipleLinearRandomRetry.Pair> pairs > = new ArrayList<RetryPolicies.MultipleLinearRandomRetry.Pair>(); > > for(int i = 0; i < elements.length; ) { > //parse the i-th sleep-time > final int sleep = parsePositiveInt(elements, i++, s); > if (sleep == -1) { > return null; //parse fails > } > //parse the i-th number-of-retries > final int retries = parsePositiveInt(elements, i++, s); > if (retries == -1) { > return null; //parse fails > } > pairs.add(new RetryPolicies.MultipleLinearRandomRetry.Pair(retries, > sleep)); > } > return new RetryPolicies.MultipleLinearRandomRetry(pairs); > } > {code} > This change simply updates the docs. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org