Conversation
It was reported in #993 that using an empty `application_name` on connection startup could result in the actual application_name that was set later not being detected. The reason was that we were explicitely not forwarding empty strings from clients as settings to Postgres. This is fixed by simply removing this check. Why we were explicitely ignoring empty strings is not clear to me. But our handling of startup parameters and GUCs has heavily changed over the years, and is able to handle them fine like this.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
It was reported in #993 that using an empty
application_nameonconnection startup could result in the actual
application_namethat wasset later not being detected. The reason was that we were explicitely
not forwarding empty strings from clients as settings to Postgres. This
is fixed by simply removing this check. Why we were explicitely ignoring
empty strings is not clear to me. One possible reason is because when
this code was introduced, the empty string was an invalid value for
all of the supported startup parameters. But our handling of startup
parameters and GUCs has heavily changed over the years, and is
able to handle them fine like this and the empty string is a valid
value for
application_name.Fixes #993