apache / apache/pulsar-client-node

No Error handling for Deserialize method which ends up crashing Node JS

Offen
#422 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
C++
Sterne
164
Forks
98
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Hello Team

Here I am trying to serialize and deserialize messageId for my business use case

but issue is for proper error handling if in case we pass invalid buffer data to MessageId.deserialize method then it throws C++ exception
`libc++abi: terminating due to uncaught exception of type std::invalid_argument: Failed to parse serialized message id`
which is not handled by pulsar-client and node JS crashes

I see similar issue was there while creating a client too but that got fixed with this issue and PR https://github.com/apache/pulsar-client-node/pull/307/files
where it was wrapped with try catch block
but deserialize method is still not fixed

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne bei MessageId.deserialize und vergleiche dessen Fehlerbehandlung mit der in PR #307 eingeführten Client-Fehlerbehandlung. Reproduziere den Fall eines ungültigen Puffers und verfolge die deserialize-Bindung; abgeschlossen ist die Aufgabe, wenn ungültige Eingaben Node.js nicht mehr mit einer unbehandelten C++-Ausnahme beenden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp, javascript, node.js
Bereich
api
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.