Javascript Firebase云函数获取大型集合中的所有文档不起作用

Javascript Firebase云函数获取大型集合中的所有文档不起作用,javascript,firebase,google-cloud-firestore,google-cloud-functions,Javascript,Firebase,Google Cloud Firestore,Google Cloud Functions,我正在尝试获取超过50000个文档的集合中的所有文档,其中一些文档标记为isPositive=false,另一些文档标记为isPositive=true。然而,当我运行这个程序时,我得到“函数执行耗时3627毫秒,完成状态:'连接错误'”。代码如下: exports.findActualLikes = (request, response) => { let charactersAlreadyIn = { a: 0, b: 0 }; return ( db .

我正在尝试获取超过50000个文档的集合中的所有文档,其中一些文档标记为isPositive=false,另一些文档标记为isPositive=true。然而,当我运行这个程序时,我得到“函数执行耗时3627毫秒,完成状态:'连接错误'”。代码如下:

exports.findActualLikes = (request, response) => {
  let charactersAlreadyIn = { a: 0, b: 0 };

  return (
    db
      .collection("likes")
      .where("isPositive", "==", true)
      .get()
      .then((data) => {
        return data.forEach((doc) => {
          console.log(doc.data().characterId);
          if (doc.data().characterId in charactersAlreadyIn) {
            charactersAlreadyIn[doc.data().characterId]++;
          } else {
            charactersAlreadyIn[doc.data().characterId] = 1;
          }
        });
      })
      .then(() => {
        return response.json(charactersAlreadyIn);
      })
      .catch((err) => {
        console.error(err);
      })
  );
};
奇怪的是,在
.get()
之前添加一个
.limit(100)
,使它只适用于前100个文档


为什么会这样?谢谢

您是否可以编辑该问题,以便更详细地分享您在整个执行期间在日志中找到的内容,除了一条错误消息之外?你是如何测试该函数的?@DougStevenson这是Firebase云函数日志中显示的所有内容。@vitooh我只是部署了该函数,并使用api get REQUEST调用它。我复制了该函数,并使用
curl
gcloud
进行了测试,尽管时间很长,但一切正常,所以我想知道你是如何得出这个错误的。