Thanks for the quick response Andrew - > The closet analog is AtmosUtils.putBlob which retries on > KeyAlreadyExistsException after removing. Generally the jclouds > portable abstraction tries to make all blobstores act the same and uses > the native behavior for the providers. Which blobstore has similar > behavior? I am not sure how we should handle this for almost > S3-compatible implementations like Hitachi.
So, clarifying - you're saying if it gets a KeyAlreadyExistsException, it then deletes the key and retries the put? That seems a bit harsh - what if you're building a distributed system on top of jclouds and you have two cluster nodes racing to put the same key? Would it not be better to at least test the metadata to see if you're trying to overwrite the same data and just silently return ok? John