retry logic on puts