I think having something like X-Couch-Document-Rev is a good idea. We might
have to warn in the docs that _local docs that header value will never
change.

On Fri, Apr 8, 2016 at 3:05 PM, Alexander Shorin <[email protected]> wrote:

> +1 if we also add X-Couch-Document-Rev so something that reflects the
> _rev value in HTTP headers.
>
> Currently, while Etag matches the _rev value, it makes quite handy
> feature for getting the document revisions without fetching whole the
> body. To not break this feature, we need to introduce something in
> place of old Etag behaviour to keep the balance.
> --
> ,,,^..^,,,
>
>
> On Fri, Apr 8, 2016 at 3:43 PM, Garren Smith <[email protected]> wrote:
> > Hi All,
> >
> > I would like to propose a change to how we generate the ETAG for a
> document
> > response.
> >
> > While working on COUCHDB-2978[1] we started looking at how etags were
> > generated when a document is requested. Currently the etag for a document
> > is the _rev. This causes a problem with _local documents as their
> revision
> > never changes also with documents where the user chooses the _rev. Both
> of
> > these can cause some caching issues.
> >
> > I would like to propose that the etag is generated from the body of the
> > response (typically the document), _rev and attachments. So for normal
> > documents the etag is md5(_rev, body, attachment) and for _local
> documents
> > it would be md5(_rev, body). This would make it a lot more consistent and
> > the etag would change when a document has changed.
> >
> > Cheers
> > Garren
> >
> >
> >
> >
> >
> > [1] https://issues.apache.org/jira/browse/COUCHDB-2978
>

Reply via email to