You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@usergrid.apache.org by "Mike Dunker (JIRA)" <ji...@apache.org> on 2015/11/25 00:16:11 UTC
[jira] [Created] (USERGRID-1129) Fix version handling so we can
have optimistic concurrency
Mike Dunker created USERGRID-1129:
-------------------------------------
Summary: 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
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)