了解错误代码
本页面列出了您可能会遇到的错误代码,并提供了有关如何解决这些错误代码的建议。
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
错误:
- 尝试提交编入索引的字段值超过 1,500 字节的文档。此限制适用于字段值的 UTF-8 编码。
- 尝试提交未编入索引且字段值大于 1048487 字节(1 MiB - 89 字节)的文档。此限制适用于文档中字段值的总和。例如,四个各 256 KiB 的字段会超出此限制。
1,500 个字节(编入索引)和 1,048,487 个字节(未编入索引)是字段值的限制。您不能超出这些限制,这些限制也无法调整。
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
要解决此问题,请执行以下操作:
- 对于编入索引的字段值,请将该字段拆分为多个字段。如果可能,请创建一个不编入索引的字段,并将不需要编入索引的数据移至该字段。
- 对于未编入索引的字段值,请将该字段拆分为多个字段,或对字段值实现压缩。