Firebase 功能全部抛出内部:收到 RST_STREAM,代码为 2 错误

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

我的 Firebase 应用程序具有一百多个 Google Cloud 功能,并且运行没有问题。使用 Firebase 模拟器进行一些开发和测试后,我将更改部署到生产中。部署后,每个函数都开始抛出以下错误:

未处理的错误错误:13 内部:已收到由内部客户端错误触发的代码 2 的 RST_STREAM:协议错误

这是包含详细信息的完整错误:

handleUserSignInzn8bkxir2zxo Unhandled error Error: 13 INTERNAL: Received RST_STREAM with code 2 triggered by internal client error: Protocol error

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:357:73)

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)

for call at

at ServiceClientImpl.makeServerStreamRequest (/workspace/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/client.js:340:32)

at ServiceClientImpl.<anonymous> (/workspace/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/make-client.js:105:19)

at /workspace/node_modules/@google-cloud/firestore/build/src/v1/firestore_client.js:227:29

at /workspace/node_modules/google-gax/build/src/streamingCalls/streamingApiCaller.js:38:28 at /workspace/node_modules/google-gax/build/src/normalCalls/timeout.js:44:16

at Object.request (/workspace/node_modules/google-gax/build/src/streamingCalls/streaming.js:130:40)

at Timeout.makeRequest [as _onTimeout] (/workspace/node_modules/retry-request/index.js:141:28)

at listOnTimeout (node:internal/timers:569:17)

at process.processTimers (node:internal/timers:512:7)

Caused by: Error

at Firestore.getAll (/workspace/node_modules/@google-cloud/firestore/build/src/index.js:1028:23)

at DocumentReference.get (/workspace/node_modules/@google-cloud/firestore/build/src/reference.js:232:32)

at /workspace/lib/Users/handleUserSignIn.js:52:40

at fixedLen (/workspace/node_modules/firebase-functions/lib/v1/providers/https.js:74:41)

at /workspace/node_modules/firebase-functions/lib/common/providers/https.js:458:32

at process.processTicksAndRejections (node:internal/process/task_queues:95:5) { code: 13, details: 'Received RST_STREAM with code 2 triggered by internal client error: Protocol error', metadata: Metadata { internalRepr: Map(0) {}, options: {} } }

以下是我已采取的一些故障排除步骤:

  • 恢复到已知正在运行的早期提交 在任何模拟器工作之前进行生产,然后重新部署。问题 持续存在。
  • 检查环境配置以确保模拟器 设置不会无意中应用到生产中 环境。
  • 更新了所有相关依赖项(firebase-admin、 google-gax、@grpc/grpc-js 等)到最新版本。
  • 确保我的 Firestore 查询和函数不超出任何已知的范围 可能触发此类错误的限制或最佳实践。

有人可以帮我找出导致此错误的原因吗?

firebase google-cloud-firestore google-cloud-functions grpc-node
1个回答
0
投票

更新:我能够解决这个问题。对于将来遇到同样问题的任何人,我的 .env 文件中有以下变量,我需要对其进行评论。我认为这不会导致任何问题,因为它没有在任何地方被引用,但 Firestore 仍在尝试使用它。

FIRESTORE_EMULATOR_HOST =“本地主机:8080”

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