Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

deleteApp apparently doesn't complete teardown of Firestore connections

Đang mở
#2,825 1 bình luận 0 reaction 1 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@lahirumaramba đang làm issue này rồi.

Từ ngày 24/2/2025.

Đánh giá

Issue này chưa được đánh giá.

Mô tả

api: core api: firestore
Describe your environment
  • Operating System version: Fedora Linx 38
  • Firebase SDK version: 13.0.2
  • Firebase Product: admin SDK apparently / Firestore
  • Node.js version: 22.12.0
  • NPM version: 11.0.0
  • Deno version 2.1.4
Describe the problem

I'm running a simple Deno test of writing to a document in a Firestore collection. The test passes, but Deno detects leaks:

error: Leaks detected:
  - "http2Client" was created during the test, but not cleaned up during the test. Close the resource before the end of the test.
  - "http2ClientConnection" was created during the test, but not cleaned up during the test. Close the resource before the end of the test.
  - 2 intervals were started in this test, but never completed. This is often caused by not calling `clearInterval`.
  - 2 timers were started in this test, but never completed. This is often caused by not calling `clearTimeout`.
  - An async call to op_http2_poll_client_connection was started in this test, but never completed.
Steps to reproduce:
deno test --allow-all leaks-bug.ts
leaks-bug.ts
import { initializeApp, cert, deleteApp } from 'firebase-admin/app';
import { getFirestore } from 'firebase-admin/firestore';
import { assertExists } from '@std/assert';

Deno.test('test', 
  async () => {
    // Initialize Cloud Firestore per https://firebase.google.com/docs/firestore/quickstart#initialize -> Node.js -> Initialize on your own server
    const app = initializeApp({ credential: cert('service-account-key.json') });
    const db = getFirestore(app);

    const doc = await db.collection('test').doc('test').set({ foo: 42 });
    assertExists(doc);  // passes
    await deleteApp(app);  // doesn't help
    await new Promise(resolve => setTimeout(resolve, 10 * 1000));  // doesn't help
  }
);
Ngôn ngữ chính
TypeScript
Star
1.7k
Fork
419
Merge trung bình
4 ngày 20 giờ
Pull request đã merge (30 ngày)
16

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của firebase/firebase-admin-node

Tất cả issue của firebase/firebase-admin-node

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.