Skip to content

fix(dynamodb-enhanced): return DELETE_TABLE from DeleteTableOperation#operationName()#6799

Open
anuq wants to merge 2 commits intoaws:masterfrom
anuq:fix/delete-table-operation-name
Open

fix(dynamodb-enhanced): return DELETE_TABLE from DeleteTableOperation#operationName()#6799
anuq wants to merge 2 commits intoaws:masterfrom
anuq:fix/delete-table-operation-name

Conversation

@anuq
Copy link

@anuq anuq commented Mar 15, 2026

Problem

Fixes #6760

DeleteTableOperation#operationName() was returning OperationName.DELETE_ITEM instead of OperationName.DELETE_TABLE. Any instrumentation, metrics, or extension hooks that key off OperationName would therefore misclassify a DeleteTable request as a DeleteItem operation.

Fix

Change the return value from OperationName.DELETE_ITEM to OperationName.DELETE_TABLE (one-line change).

Testing

Added operationName_returnsDeleteTable test to DeleteTableOperationTest that verifies the correct OperationName is returned.

Checklist

  • Includes tests to exercise the new behavior
  • My code follows the code style of this project
  • Git commit message is detailed and includes context behind the change
  • Issue number is referenced (#6760)
  • I confirm that this pull request can be released under the Apache 2 license
  • Local run of ./mvnw package succeeds

anuq added 2 commits March 14, 2026 16:22
…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
…#operationName()

DeleteTableOperation#operationName() was incorrectly returning
OperationName.DELETE_ITEM. Any instrumentation, metrics, or extension
hooks that key off OperationName would therefore see a DeleteTable
request misclassified as a DeleteItem operation.

Fixes aws#6760
@anuq anuq requested a review from a team as a code owner March 15, 2026 03:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

DeleteTableOperation uses OperationName.DELETE_ITEM instead of OperationName.DELETE_TABLE

1 participant