influxdata / influxdata/influxdb-java

Newlines in tag values are not escaped

Offen
#578 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
difficulty/low kind/bug
Vorherrschende Sprache
Java
Sterne
1.2k
Forks
469
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

# Summary

Newlines in tag values are not escaped.
I'm not exactly sure if they can be escaped (?), but currently bad values are being inserted instead.

# Steps to reproduce

Try to insert a point where a tag value contains a newline, e.g:

Point.measurement("measurement")
.tag("name", "foo\nbar") // Newline here
.addField("count", 1)
.time(0, SECONDS);

# Actual behaviour

A new measurement `bar` is created due to the following being sent

measurement,name=foo
bar count=1 0

# Expected behaviour

I guess the line protocol sent should look something like this?

measurement,name=foo\
bar count=1 0

If it's not possible to escape newlines, there should be an error instead.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne damit, die Line-Protocol-Serialisierung des Java-Clients für Tag-Werte zu finden, und reproduziere die bereitgestellte Messung mit einem Newline im Tag. Bestätige, ob das Protokoll Escaping unterstützt; die Aufgabe gilt als abgeschlossen, wenn der Wert escaped wird, ohne eine zweite Messung zu erzeugen, oder der Client ihn mit einem Fehler ablehnt, wobei ein Regressionstest das Verhalten abdeckt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
api
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
48/100

Neue Issues direkt in Ihr Postfach

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