QLDB 中日记账流的常见错误 - Amazon Quantum Ledger Database (Amazon QLDB)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

QLDB 中日记账流的常见错误

重要

终止支持通知:现有客户将能够使用 Amazon QLDB,直到 2025 年 7 月 31 日终止支持。有关更多详细信息,请参阅将亚马逊 QLDB 账本迁移到亚马逊 Aurora PostgreSQL

本节介绍了 Amazon QLDB 为日记账流请求引发的运行时系统错误。

以下是该服务返回的常见异常列表。每个异常都包括特定的错误消息,然后是简短的描述和可能的解决方案建议。

AccessDeniedException

消息:用户:userARN无权PassRole 在资源上执行:iam:roleARN

您无权将 IAM 角色传递给 QLDB 服务。QLDB 要求所有日记账流请求都有一个角色,并且您必须具有将该角色传递给 QLDB 的权限。该角色为 QLDB 提供了在您指定的 Amazon Kinesis Data Streams 资源中的写入权限。

核实您定义了一个 IAM policy,该策略授予对您指定的 QLDB 服务(qldb.amazonaws.com)的 IAM 角色资源执行 PassRole API 操作的权限。有关策略示例,请参阅Amazon QLDB 基于身份的策略示例

IllegalArgumentException

消息:QLDB 在验证 Kinesis Data Streams 时遇到错误:来自 Kinesis 的响应errorCodeerrorMessage

造成此错误的一个可能原因是所提供的 Kinesis 数据流资源不存在。或者,QLDB 没有足够的权限将数据记录写入您指定的 Kinesis 数据流。

验证您在流请求中提供的 Kinesis 数据流是否正确。有关更多信息,请参阅《Amazon Kinesis Data Streams 开发人员指南》中的 创建和更新数据流

此外,请确认您是否为指定的 Kinesis 数据流定义了一个策略,该策略授予 QLDB 服务(qldb.amazonaws.com)对以下操作的权限。有关更多信息,请参阅 流权限

  • kinesis:PutRecord

  • kinesis:PutRecords

  • kinesis:DescribeStream

  • kinesis:ListShards

IllegalArgumentException

消息:在验证 Kinesis 配置时,来自 Kinesis 数据流的意外响应。来自 Kinesis 的回应:errorCodeerrorMessage

尝试将数据记录写入所提供的 Kinesis 数据流失败,并显示提供的 Kinesis 错误响应。有关更多信息,请参阅《Amazon Kinesis Data Streams 开发人员指南》中的 Amazon Kinesis Data Streams 生产人员故障排除

IllegalArgumentException

消息:开始日期不得早于结束日期。

InclusiveStartTimeExclusiveEndTime 必须采用 ISO 8601 日期和时间格式以及通用协调时间(UTC)。

IllegalArgumentException

消息:开始日期不能是未来的日期。

InclusiveStartTimeExclusiveEndTime 都必须采用 ISO 8601 日期和时间格式以及 UTC。

LimitExceededException

消息:已超出 Kinesis 数据流同时运行 5 个日记账流的限制

QLDB 强制使用五个并发日记账流的默认限制。