firebase / firebase/firebase-admin-java

Not meaningful timeout default values leading to hanging requests

Open
#901 1 comment 2 reactions 0 assignees View on GitHub
needs-triage
Dominant language
Java
Stars
620
Forks
305
Avg merge
3h 23m
Merged PRs (30d)
1

Description

### [REQUIRED] Step 2: Describe your environment

* Operating System version: MacOS Sonoma 14.1.1
* Firebase SDK version: v9.2.0
* Library version: _____
* Firebase Product: Firebase Cloud Messaging

### [REQUIRED] Step 3: Describe the problem
Sometimes the Google Server do not respond (like described in #850 ). However, the default values to read timeout and connect timeout are "0" because they are default initialized with 0 in the FirebaseOptions. So these requests hang for infinite time.

#### Steps to reproduce:
Send a message via FCM and the SDK. If Google does not respond, there is not timeout.

#### Fix:
Provide meaningful default values like 20s. This is the default in the Google HTTP Client (com.google.api.client.http.HttpRequest#readTimeout).

Contributor guide

Open the contributing guide

Research direction

Start by tracing how FirebaseOptions initializes the read and connect timeout values used for Firebase Cloud Messaging requests, and compare them with the Google HTTP Client defaults. Done means requests no longer hang indefinitely when Google does not respond and tests cover the chosen default timeout behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
networking
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.