You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Early versions of OpenTracing specified a restriction on the available character set for baggage key such that the keys were safe for HTTP headers. This restriction has been subsequently lifted, but all Jaeger clients currently still rely on it by avoiding doing any sort of encoding of the baggage keys when appending them to uberctx- prefix.
The proposed solution is to introduce some sort of encoding that will have the following characteristics:
the encoded strings can be case-insensitive (because HTTP headers can change case randomly). In other words, we should be able to rely on decode(header) == decode(toLowerCase(header))
the snake-lower-case keys will be unchanged by the encoding for backwards compatibility with the current restriction: encode("snake-lower-case") == "snake-lower-case"
all other characters will be encoded in some way (e.g. url-encoded, but really need to do more research on what's most appropriate). In particular, the original strings will be case sensitive: encode("Snake-Lower-Case") != encode("snake-lower-case")
The text was updated successfully, but these errors were encountered:
Early versions of OpenTracing specified a restriction on the available character set for baggage key such that the keys were safe for HTTP headers. This restriction has been subsequently lifted, but all Jaeger clients currently still rely on it by avoiding doing any sort of encoding of the baggage keys when appending them to
uberctx-
prefix.The proposed solution is to introduce some sort of encoding that will have the following characteristics:
decode(header) == decode(toLowerCase(header))
snake-lower-case
keys will be unchanged by the encoding for backwards compatibility with the current restriction:encode("snake-lower-case") == "snake-lower-case"
encode("Snake-Lower-Case") != encode("snake-lower-case")
The text was updated successfully, but these errors were encountered: