[ 
https://issues.apache.org/jira/browse/JCLOUDS-1298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16014421#comment-16014421
 ] 

Svetoslav Neykov commented on JCLOUDS-1298:
-------------------------------------------

Just found out the this is partially addressed in the portable API, mostly when 
deleting resources, see [1]. Certain methods are annotated with 
{{@ResponseParser(URIParser.class)}} and the Operation URL is returned as the 
result of the operation which is later used to poll for operation completion. 
Pretty much what [~andreaturli] suggests above.


[1] 
https://github.com/jclouds/jclouds-labs/blob/master/azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/compute/config/AzureComputeServiceContextModule.java#L153-L175

> [Azure ARM] Handle async operations
> -----------------------------------
>
>                 Key: JCLOUDS-1298
>                 URL: https://issues.apache.org/jira/browse/JCLOUDS-1298
>             Project: jclouds
>          Issue Type: Improvement
>          Components: jclouds-compute
>    Affects Versions: 2.0.1
>            Reporter: Svetoslav Neykov
>              Labels: azurecompute-arm
>
> Azure's API could choose to continue an operation as async if it takes too 
> long to complete. To let the client know it should continue polling for the 
> result it includes the operation URL in an {{Azure-AsyncOperation}} header.
> The client is supposed to poll the operation URL (the value of the header) 
> before declaring success/failure.
> With the current implementation an operation could still be in progress and 
> jclouds return a success result. The {{provisioningState}} property would 
> still be in an {{Updating}} state.
> Proposal:
> When the response contains the {{Azure-AsyncOperation}} header don't return 
> yet, but wait for the state to transition to success/failure before giving 
> control back to the caller.
> Related to https://issues.apache.org/jira/browse/JCLOUDS-1296; If operations 
> block and the result is not used until success of the operation, instances of 
> "409 Conflict" responses should decrease dramatically.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to