瞭解錯誤代碼
本頁面列出您可能會遇到的錯誤代碼,並提供各項錯誤的修正建議。
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 編碼。
- 嘗試提交文件,但未建立索引的欄位值超過 1,048,487 個位元組 (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
如何解決這個問題:
- 如為已建立索引的欄位值,請將欄位分割為多個欄位。如有可能,請建立未編入索引的欄位,並將不需要編入索引的資料移至該欄位。
- 如為未建立索引的欄位值,請將欄位分割為多個欄位,或為欄位值實作壓縮功能。