google-cloud/firestore:错误:4 DEADLINE_EXCEEDED:创建文档时已超过截止日期

问题描述

我正在尝试使用以下代码创建文档,并在运行 ref.set() 函数时收到“错误:4 DEADLINE_EXCEEDED:超过截止日期”。我正在使用“ws”和“fastify”,并且处理的套接数量很少(100-150)。最初几天不会出现此错误。它在服务器上重新启动进程后 4-5 天后出现。

create: async (id) => {
      //store socket
      return await socketRef.doc(id).set({ id: id,connectedAt: fastify.fsTimestamp() })
    },

socketRef = Firestore 集合参考

以下是完全错误。不明白为什么会这样。

{ Error: 4 DEADLINE_EXCEEDED: Deadline Exceeded
    at Object.exports.createStatusError (/root/airsniper.api/node_modules/grpc/src/common.js:87:15)
    at Object.onReceiveStatus (/root/airsniper.api/node_modules/grpc/src/client_interceptors.js:1188:28)
    at InterceptingListener._callNext (/root/airsniper.api/node_modules/grpc/src/client_interceptors.js:564:42)
    at InterceptingListener.onReceiveStatus (/root/airsniper.api/node_modules/grpc/src/client_interceptors.js:614:8)
    at callback (/root/airsniper.api/node_modules/grpc/src/client_interceptors.js:841:24)
  code: 4,Metadata: Metadata { _internal_repr: {} },details: 'Deadline Exceeded' }

解决方法

正如@Ashish 提到的,答案可以在另一个线程中找到,如下所示:

由于 Firestore limit of Maximum write rate to a document 发生

Deadline Exceeded 错误 - 每秒 1 个。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...