Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

ECONNRESET connecting to Firebase auth emulator from functions emulator with grpc imported

オープン
#945 コメント 1 件 リアクション 1 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
43/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
静か
技術スタック
grpc, python

調査の方向性

Issue にリンクされている最小再現用リポジトリから始め、grpc または firebase_admin.firestore を import した状態で、その Python cloud function を実行します。Auth エミュレーターへの呼び出し、または http://127.0.0.1:9099/ への GET リクエストを再現し、ECONNRESET が発生する箇所を追跡します。このセットアップで socket hang-up が発生せずにリクエストが完了すれば完了です。

索引モデルが issue の本文から書いたものです。

説明

[READ] Step 1: Are you in the right place?

I’m not sure that the root cause of this issue is, but this repo seems like the most likely culprit. Other possibilities: gRPC, firebase-tools, firebase-functions.

[REQUIRED] Step 2: Describe your environment
  • Operating System version: macOS 15.7.4 (24G517)
  • Firebase SDK version: 7.4.0
  • Firebase Product: auth
  • Python version: 3.11.15
  • Pip version: uv 0.11.6
[REQUIRED] Step 3: Describe the problem
Steps to reproduce:

danielparks/firebase-emulator-auth-hang-up is minimal test repo with more exhaustive details including a workaround.

Within a Python cloud function that has grpc or firebase_admin.firestore imported, call an auth method, e.g. auth.create_user(...), or make a GET request to the auth endpoint, e.g. requests.get("http://127.0.0.1:9099/", timeout=1).

The function will fail with ECONNRESET (“Error: socket hang up”).

Relevant Code:

Simplified example (see the repo above for a functional example):

from firebase_admin import initialize_app
from firebase_functions import https_fn
import requests

import grpc
# or, import firebase_admin.firestore

initialize_app()

@https_fn.on_call()
def connect(req):
    # Make a simple GET request to the auth emulator endpoint:
    return repr(requests.get("http://127.0.0.1:9099/", timeout=1))
主要言語
Python
スター
1.2k
フォーク
359
平均マージ
3日 9時間
マージ済み PR(30日)
3

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

firebase/firebase-admin-python のほかの issue

firebase/firebase-admin-python の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。