firebase / firebase/firebase-admin-java

Running a native image on GCP (Cloud Run) throws error 400

Ouverte
#860 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
api: core api: messaging
Langage dominant
Java
Étoiles
620
Forks
305
Merge moyen
3 h 23 min
PR mergées (30 j)
1

Description

Hi,

Compiling to native this dependency:
```java

com.google.firebase
firebase-admin
9.2.0

```

makes the build fail because grpc-netty-shaded, however with this alternative we can compile:
```java


com.google.firebase
firebase-admin
9.2.0


io.grpc
grpc-netty-shaded




io.grpc
grpc-okhttp
1.51.1

```

The problem is that FCM client always responds with error 400:
```javascript
Exception in thread "main" com.google.firebase.messaging.FirebaseMessagingException: Unexpected HTTP response with status: 400
{
"error": {
"code": 400,
"message": "Recipient of the message is not set.",
"status": "INVALID_ARGUMENT",
"details": [
{
"@type": "type.googleapis.com/google.rpc.BadRequest",
"fieldViolations": [
{
"field": "message",
"description": "Recipient of the message is not set."
}
]
},
{
"@type": "type.googleapis.com/google.firebase.fcm.v1.FcmError",
"errorCode": "INVALID_ARGUMENT"
}
]
}
}
```

Running on JVM works fine.
There is a issue with same problem: https://github.com/GoogleCloudPlatform/native-image-support-java/issues/116 for the old google native support libraries. Their workarounds didn't work for me.

Are there any know solutions?
Thanks

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez par les déclarations de dépendances de Firebase Admin et par le client Firebase Cloud Messaging exécuté en tant qu’image native sur Cloud Run, en comparant le comportement signalé de JVM et de native-image. Reproduisez la réponse 400 avec l’exclusion de grpc-netty-shaded et la substitution de grpc-okhttp, puis déterminez si le problème se situe dans la construction de la requête ou dans la configuration de native-image. La tâche est terminée lorsqu’une configuration prise en charge ou un diagnostic minimal reproductible est documenté.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
firebase, gcp, grpc, java
Domaine
backend-api-design, cloud
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.