Activity log for bug #1272599

Date Who What changed Old value New value Message
2014-01-25 01:37:27 aeva black bug added bug
2014-01-25 01:37:41 aeva black ironic: status New Triaged
2014-01-25 01:37:47 aeva black ironic: importance Undecided High
2014-01-25 01:37:49 aeva black ironic: milestone icehouse-3
2014-01-30 11:25:10 Mark McLoughlin bug added subscriber Mark McLoughlin
2014-02-12 04:09:18 aeva black ironic: importance High Low
2014-02-12 04:13:39 aeva black summary POST may be re-issued by proxies, so we should use PUT Generating UUIDs on the server can lead to duplicate resources if connection is dropped
2014-02-12 04:14:01 aeva black summary Generating UUIDs on the server can lead to duplicate resources if connection is dropped Generating UUIDs on the server can lead to duplicates
2014-02-12 04:27:31 aeva black description Proxies in between the user and our API tier may cache requests and re-issue them. This is a problem given our current resource-creation using "POST /v1/{type}/" -- if the proxy reissues this request, we'll create multiple resources, when the user only meant to create one. A solution to this is to require clients to generate the resource identifier (eg, UUID) and then "PUT /v1/{type}/{uuid}". This would make resource-creation-requests idempotent and solve the above problem. In all other ways, this can be handled the same way on our side. Resource creation is done via "POST /v1/{type}" with a body containing some details about the resource. The resource identifier is generated on the server and returned to the client. There are two potential problems: If a POST request is received twice (eg, due to a network hiccup or a misconfigured proxy), multiple resources will be created instead of one, but the client is only expecting one response. If a POST response is lost (eg, due to a network hiccup or the API service being killed), a resource will be created and the client will try again, generating a second resource. In both cases, there are resources created for which the client does not receive a resource identifier. Alternately, if the resource has a natural primary key (eg, a Port's MAC address), the client may get unexpected duplicate errors and need to search to find the identifier for the resource it was trying to create. A solution to this is to require clients to generate the resource identifier (eg, UUID) and then "PUT /v1/{type}/{uuid}". This would make resource-creation-requests idempotent and solve the above problems.
2014-03-01 11:30:13 Éric Araujo bug added subscriber Éric Araujo
2014-03-04 22:02:09 aeva black ironic: milestone icehouse-3
2014-10-22 13:59:59 OpenStack Infra ironic: status Triaged In Progress
2014-10-22 13:59:59 OpenStack Infra ironic: assignee Vladyslav Drok (vdrok)
2015-01-13 12:49:49 Vladyslav Drok ironic: assignee Vladyslav Drok (vdrok)
2015-01-13 17:53:26 Dmitry Tantsur ironic: status In Progress Confirmed
2015-03-31 19:34:12 John Stafford ironic: status Confirmed Won't Fix