[
https://issues.apache.org/jira/browse/HADOOP-12079?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Junping Du updated HADOOP-12079:
--------------------------------
Target Version/s: 2.8.3 (was: 2.8.1)
> Make 'X-Newest' header a configurable
> -------------------------------------
>
> Key: HADOOP-12079
> URL: https://issues.apache.org/jira/browse/HADOOP-12079
> Project: Hadoop Common
> Issue Type: Improvement
> Components: fs/swift
> Affects Versions: 2.6.0, 3.0.0-alpha1
> Reporter: Gil Vernik
> Assignee: Gil Vernik
> Attachments: x-newest-optional0001.patch,
> x-newest-optional0002.patch, x-newest-optional0003.patch,
> x-newest-optional0004.patch, x-newest-optional0005.patch
>
>
> Current code always sends X-Newest header to Swift. While it's true that
> Swift is eventual consistent and X-Newest will always get the newest version
> from Swift, in practice this header will make Swift response very slow.
> This header should be configured as an optional, so that it will be possible
> to access Swift without this header and get much better performance.
> This patch doesn't modify current behavior. All is working as is, but there
> is an option to provide fs.swift.service.useXNewest = false.
> Some background on Swift and X-Newest:
> When a GET or HEAD request is made to an object, the default behavior is to
> get the data from one of the replicas (could be any of them). The downside to
> this is that if there are older versions of the object (due to eventual
> consistency) it is possible to get an older version of the object. The upside
> is that the for the majority of use cases, this isn't an issue. For the small
> subset of use cases that need to make sure that they get the latest version
> of the object, they can set the "X-Newest" header to "True". If this is set,
> the proxy server will check all replicas of the object and only return the
> newest object. The downside to this is that the request can take longer,
> since it has to contact all the replicas. It is also more expensive for the
> backend, so only recommended when it is absolutely needed.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]