fix(sqs-batch-manager): use original queueUrl instead of batchKey in batch requests by anuq · Pull Request #6798 · aws/aws-sdk-java-v2
…batch requests When a request has an overrideConfiguration, getBatchKey() returns queueUrl + overrideConfig.hashCode() as a composite key to correctly group requests for batching. However, createXxxBatchRequest() was passing this composite key as the QueueUrl in the actual SQS API call, producing a non-existent URL like: https://sqs.us-west-2.amazonaws.com/123/my-queue-461286369 This causes QueueDoesNotExistException for any caller that sets an overrideConfiguration on their request (e.g. the SQS extended client library which appends a user-agent via overrideConfiguration). Fix: extract queueUrl from the first request in the batch (safe because all requests in a batch share the same queueUrl by grouping invariant) and use that for the QueueUrl field in the batch API call. Affected: SendMessageBatchManager, DeleteMessageBatchManager, ChangeMessageVisibilityBatchManager. Fixes aws#6478