amazon-s3 - SQS 扩展 - 输入收据句柄无效

标签 amazon-s3 aws-sdk amazon-sqs

我们用扩展功能包装了现有队列。消息可以放入队列中,我们看到消息正文存储在 S3 上。

但是,当消息被消费时,我们得到以下堆栈跟踪:

com.amazonaws.services.sqs.model.ReceiptHandleIsInvalidException: The input receipt handle is invalid. (Service: AmazonSQS; Status Code: 404; Error Code: ReceiptHandleIsInvalid; Request ID: ba9421e9-a9d2-56ba-8e17-70ff7190f05a)
                        at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1182)
                        at com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:770)
                        at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:489)
                        at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:310)
                        at com.amazonaws.services.sqs.AmazonSQSClient.invoke(AmazonSQSClient.java:2419)
                        at com.amazonaws.services.sqs.AmazonSQSClient.changeMessageVisibility(AmazonSQSClient.java:485)
                        at com.amazonaws.services.sqs.AmazonSQSClient.changeMessageVisibility(AmazonSQSClient.java:1692)
                        at com.amazon.sqs.javamessaging.AmazonSQSExtendedClientBase.changeMessageVisibility(AmazonSQSExtendedClientBase.java:1376)

当我们试图改变可见性时会发生这种情况。不支持吗?

                    sqsExtended.changeMessageVisibility(queueUrl, message.getReceiptHandle(), visibilityTimeout);

最佳答案

答案是这个没有实现,也没有尝试在调用方法时抛出异常来警告你。好像没有不实现的理由,看源码就直白了。

对于我们的案例,我们可以接受此参数的队列默认值而不是单独设置每个值。

关于amazon-s3 - SQS 扩展 - 输入收据句柄无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42147024/

相关文章:

amazon-web-services - Apache Camel AWS/SQS 组件

triggers - 将消息发布到 SQS 时,如何延迟触发 lambda?

amazon-web-services - 让 SQS 死信队列与 Spring Boot 和 JMS 一起使用

node.js Amazon s3 如何检查文件是否存在

node.js - firehose 上的模拟 putRecord 无法与 aws-sdk-mock 一起使用

php - 带有 PHP SDK 的 AWS MediaLive 不返回 channel 列表

amazon-web-services - 使用 Nodejs Lambda 函数删除 AWS S3 对象

node.js - Cordova/Ionic 应用程序通过服务器签名的 url 将 base64 图像上传到 S3

python - 博托 s3 错误。 BucketAlreadyOwnedByYou

amazon-web-services - SdkClientException : Unable to execute HTTP request: Connection reset