Firestore 添加方法抛出错误“错误:13 内部:发生内部错误。”

问题描述 投票:0回答:1

我的云函数在调用时正在注销此错误。

Error: 13 INTERNAL: An internal error occurred.
    at callErrorFromStatus (/workspace/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/call.js:31:19)
    at Object.onReceiveStatus (/workspace/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/client.js:192:76)
    at Object.onReceiveStatus (/workspace/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:360:141)
    at Object.onReceiveStatus (/workspace/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:323:181)
    at /workspace/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/resolving-call.js:94:78
    at process.processTicksAndRejections (node:internal/process/task_queues:77:11)

此错误来自此函数:

const insert = await admin
   .firestore()
   .collection(myCollection)
   .add(insertFSObject)
   .catch((error) => {
      console.log(`Insert failed document ${insertFSObject.name} at ${insertFSObject.created}`)
      console.log(error);
   });

我监控了我的云功能,错误似乎不再出现,这很奇怪,因为错误之前或之后的所有事务和日志都是成功调用。当这个错误不经常发生时,我该如何修复它。

javascript firebase google-cloud-platform google-cloud-firestore google-cloud-functions
1个回答
0
投票

正如 Doug Stevenson 在他的评论中已经提到的,这样的错误:

错误:13 内部:发生内部错误。

我可能会因为很多原因而被抛弃。所以在这种情况下,我的建议是重试云函数,直到成功。欲了解更多信息,请查看以下帖子中的 @GünterZöchbauer 答案:

重试 Firebase 的 Cloud Functions,直到成功

这意味着您应该很好地处理代码中的内部错误,以便它会重试任何失败。在您的代码中,您应该使用 RuntimeOptions.failurePolicy 其中:

函数的失败策略,布尔值

true
相当于提供一个空的重试对象。

© www.soinside.com 2019 - 2024. All rights reserved.