{"action":"created","issue":{"url":"https://api.github.com/repos/fcrepo/fcrepo-specification/issues/75","repository_url":"https://api.github.com/repos/fcrepo/fcrepo-specification","labels_url":"https://api.github.com/repos/fcrepo/fcrepo-specification/issues/75/labels{/name}","comments_url":"https://api.github.com/repos/fcrepo/fcrepo-specification/issues/75/comments","events_url":"https://api.github.com/repos/fcrepo/fcrepo-specification/issues/75/events","html_url":"https://github.com/fcrepo/fcrepo-specification/issues/75","id":215114674,"number":75,"title":"Revisit how batch atomic operations are terminated.","user":{"login":"birkland","id":517881,"avatar_url":"https://avatars0.githubusercontent.com/u/517881?v=3","gravatar_id":"","url":"https://api.github.com/users/birkland","html_url":"https://github.com/birkland","followers_url":"https://api.github.com/users/birkland/followers","following_url":"https://api.github.com/users/birkland/following{/other_user}","gists_url":"https://api.github.com/users/birkland/gists{/gist_id}","starred_url":"https://api.github.com/users/birkland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/birkland/subscriptions","organizations_url":"https://api.github.com/users/birkland/orgs","repos_url":"https://api.github.com/users/birkland/repos","events_url":"https://api.github.com/users/birkland/events{/privacy}","received_events_url":"https://api.github.com/users/birkland/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2017-03-17T20:32:09Z","updated_at":"2017-03-25T13:05:31Z","closed_at":null,"body":"A few questions/confusions related to batch operations surfaced [on IRC](http://irclogs.fcrepo.org/2017-03-17.html).  The current specification states that a batch operation series can be [committed](http://fedora.info/spec/#commit) or [aborted](http://fedora.info/spec/#abort) including an `Atomic-Commit` or `Atomic Abort` header along with the last operation.  \r\n\r\n1. Rolling back a batch operation series by placing the `Atomic-Abort` header on a POST, PUT, PATCH, DELETE that would otherwise affect the state of a repository resource seems awkward and/or un-intuitive.  It is also unclear what HTTP response code a server should respond if an operation fails to perform its stated function, yet is successful in performing its intended function of ending the batch operation.\r\n\r\n2. Committing a batch operation currently requires the client to know that a given operation is the last one in a series.    There is no way for a client to commit a batch operation as a separate step immediately after all operations in the sequence are finished, unless the client can craft an operation that it knows will not affect the state of any resource otherwise.  \r\n\r\n3. The spec does not prohibit using safe and idempotent methods to start or end batch operations (OPTIONS, GET, HEAD).  Using safe and idempotent operations in this way seems at least questionable with regard to [RFC 7231](https://tools.ietf.org/html/rfc7231#section-4.2.1), and its implications on caching is unclear."},"comment":{"url":"https://api.github.com/repos/fcrepo/fcrepo-specification/issues/comments/289210498","html_url":"https://github.com/fcrepo/fcrepo-specification/issues/75#issuecomment-289210498","issue_url":"https://api.github.com/repos/fcrepo/fcrepo-specification/issues/75","id":289210498,"user":{"login":"acoburn","id":1265883,"avatar_url":"https://avatars1.githubusercontent.com/u/1265883?v=3","gravatar_id":"","url":"https://api.github.com/users/acoburn","html_url":"https://github.com/acoburn","followers_url":"https://api.github.com/users/acoburn/followers","following_url":"https://api.github.com/users/acoburn/following{/other_user}","gists_url":"https://api.github.com/users/acoburn/gists{/gist_id}","starred_url":"https://api.github.com/users/acoburn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/acoburn/subscriptions","organizations_url":"https://api.github.com/users/acoburn/orgs","repos_url":"https://api.github.com/users/acoburn/repos","events_url":"https://api.github.com/users/acoburn/events{/privacy}","received_events_url":"https://api.github.com/users/acoburn/received_events","type":"User","site_admin":false},"created_at":"2017-03-25T13:05:31Z","updated_at":"2017-03-25T13:05:31Z","body":"@birkland could you close this issue and reopen it (possibly with a summary of the discussion here) in the repo with the draft atomic operation spec?"}}
{"actor":{"display_login":"acoburn"}}