[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: [OASIS Issue Tracker] (ODATA-716) Upsert does not work with OptimisticConcurrency
Ralf Handl created ODATA-716:
--------------------------------
Summary: Upsert does not work with OptimisticConcurrency
Key: ODATA-716
URL: https://issues.oasis-open.org/browse/ODATA-716
Project: OASIS Open Data Protocol (OData) TC
Issue Type: Bug
Components: OData Protocol
Affects Versions: V4.0_OS
Reporter: Ralf Handl
Fix For: V4.0_ERRATA01
Upsert allows constructing a resource path and providing a desired after-image. If the request is executed successfully, the identified entity will exist and look somewhat similar to the desired after-image.
Unfortunately this does not combine with optimistic concurrency.
If an operation on an entity requires an ETag, then services MUST refuse requests without an If-Match header.
If the client doesn't know (or care) whether the entity already exists, it cannot produce a valid If-Match header, because even the wildcard * does not work: HTTP defines that if the field-value is "*", the condition is false if the origin server does not have a current representation for the target resource, i.e. it is false if the entity does not yet exist.
I don't see a way to make upsert work in combination with ETags.
--
This message was sent by Atlassian JIRA
(v6.2.2#6258)
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]