I could have sworn that there was an easy way to change the batch size of an SQS queue that is configured as a Lambda trigger, but as of July 2020 I can no longer find where this happens. This may have something to do with the "new SQS console experience" that is currently being advertised on the top of AWS.
I am able to see the current batch size for my queue (screenshot), but the number is not editable. I don't see anything related to batch size in the SQS interface either. It's possible that my current IAM credential does not have the ability to change batch sizes and it's hidden from me. Does anyone know where this value can be changed?
This limitation would not be related to Amazon SQS console.
It would be related to AWS Lambda, since the Lambda service is responsible for polling the SQS queue and for specifying the batch size to retrieve.
You are correct that there is no function to edit the batch size in the Lambda console.
From update-event-source-mapping — AWS CLI Command Reference, here is an AWS CLI command that can update the batch size:
aws lambda update-event-source-mapping \
--uuid "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE" \
--batch-size 8
Output:
{
"UUID": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
"StateTransitionReason": "USER_INITIATED",
"LastModified": 1569284520.333,
"BatchSize": 8,
"State": "Updating",
"FunctionArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function",
"EventSourceArn": "arn:aws:sqs:us-west-2:123456789012:mySQSqueue"
}
Or, just delete the trigger in the Lambda console and create a new one.