了解错误代码
本页面列出了您可能会遇到的错误代码,并提供了有关如何解决这些错误代码的建议。
DEADLINE_EXCEEDED
以下情况可能会增加 DEADLINE_EXCEEDED
错误:
- 延迟时间增加导致操作完成所需的时间超出截止时间(默认为 60 秒)。
DEADLINE_EXCEEDED A deadline was exceeded on the server.
如需解决此问题,请参阅有关排查延迟时间问题的指南。
ABORTED
以下情况可能会增加 ABORTED
错误:
- 文档每秒更新次数过多。
- 由于事务重叠导致争用。
- 流量增加超过 500-50-5 规则或遇到热点。
ABORTED Too much contention on these datastore entities. Please try again.
或
ABORTED Aborted due to cross-transaction contention. This occurs when multiple transactions attempt to access the same data, requiring Firestore to abort at least one in order to enforce serializability.
要解决此问题,请执行以下操作:
- 对于流量快速增加,Firestore 会尝试自动扩缩以满足增加的需求。当 Firestore 延迟时间开始减少
- 热点限制了 Firestore 扩容的能力,请查看可扩缩设计来确定热点。
- 查看事务中的数据争用以及您对事务的使用情况。
- 降低单个文档的写入速率。
RESOURCE_EXHAUSTED
以下情况可能会导致 RESOURCE_EXHAUSTED
错误:
- 您已超出免费层级配额,并且没有为您的项目启用结算功能。
RESOURCE_EXHAUSTED Some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system is out of space.
要解决此问题,请执行以下操作:
- 等待重置每日免费层级配额或为您的项目启用结算功能。
INVALID_ARGUMENT
以下情况可能会导致 INVALID_ARGUMENT
错误:
- 尝试提交 indexed 字段值大于 1500 个字节。此限制适用于字段值的 UTF-8 编码。
- 尝试提交未编入索引字段值大于该值的文档 大于 1,048,487 字节(1 MiB - 89 字节)。此限制适用于 指定文档中的各个字段值例如,四个各 256 KiB 的字段会超出此限制。
1500 个字节(已编入索引)和 1048487 个字节(未编入索引) 限制。您不能超出这些限制,这些限制也无法调整。
INVALID_ARGUMENT: The value of property field-name is longer than 1500 bytes
或
INVALID_ARGUMENT: The value of property field_name is longer than 1048487 bytes
要解决此问题,请执行以下操作:
- 对于编入索引的字段值,请将该字段拆分为多个字段。如果可能,请创建一个未编入索引的字段 以及将不需要编入索引的数据移至未编入索引的 字段。
- 对于未编入索引的字段值,请将字段拆分为多个字段 或对字段值实施压缩。