[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: [OASIS Issue Tracker] (ODATA-680) Clarify use of if-match with actions
Michael Pizzo created ODATA-680: ----------------------------------- Summary: Clarify use of if-match with actions Key: ODATA-680 URL: https://tools.oasis-open.org/issues/browse/ODATA-680 Project: OASIS Open Data Protocol (OData) TC Issue Type: Bug Components: OData Protocol Affects Versions: V4.0_OS Environment: [Proposed] Reporter: Michael Pizzo Priority: Minor Fix For: V4.0_ERRATA02 Section 8.2.4, Header If-Match, states the following: "If an entity set is annotated with the term Core.OptimisticConcurrency (see [OData-VocCore]) and the client does not specify an If-Match request header in a Data Modification Request or Action Request, the service MUST respond with a 428 Precondition Required and MUST ensure that no observable change occurs as a result of the request." This is true for data modification requests, but not generally true for action requests; an action request may operate on a single entity, a set of entities, or data unrelated to any entities. And, action requests may be invoked without having previously retrieved an entity from which to obtain an etag. The most we can say is that an etag should be specified when invoking an action bound to a single entity for which an etag has been retrieved (i.e., an "advertised" action). Also, it's always bugged me that we tie this to the OptimisticConcurrency annotation, as opposed to the presence of an etag in the response. The general rule should be: if you get an etag, provide it in an if-match header of any update/action on that entity. -- 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]