[
https://issues.apache.org/jira/browse/USERGRID-1129?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mike Dunker updated USERGRID-1129:
----------------------------------
Priority: Minor (was: Major)
> Fix version handling so we can have optimistic concurrency
> ----------------------------------------------------------
>
> Key: USERGRID-1129
> URL: https://issues.apache.org/jira/browse/USERGRID-1129
> Project: Usergrid
> Issue Type: Story
> Reporter: Mike Dunker
> Priority: Minor
>
> According to Todd, original solution was that version was returned in a GET,
> and then if version was returned in a PUT, it would validate the version
> before allowing the write. Problem was, customers would update something and
> PUT it back without scrubbing the version, wanting a last-write-wins solution.
> This may be an API v2 item, although we could certainly add it to v1 also, as
> long as it is backward compatible.
> Requirements:
> 1) Specify whether to do version checking outside the payload, probably query
> parameter. Possibilities:
> a) If query param "validate_version" is true, validate the version in the
> payload before allowing the PUT. If query param not passed in, strip and
> ignore incoming version.
> b) If query param "required_version" is supplied, the version in C* must
> match the query param version. In this case, always ignore the version in the
> payload.
> 2) Caller must actively request version validation -- otherwise incoming
> versions should be ignored.
> 3) Make sure version in payload is in metadata.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)