Re: How to debug: password authentication failed for user - Mailing list pgsql-general

From Greg Sabino Mullane
Subject Re: How to debug: password authentication failed for user
Date
Msg-id CAKAnmm+VPxUkZ3jq7CtGoUT-gJ0NrFGTukyp8g_GvJsUxXiicg@mail.gmail.com
Whole thread Raw
In response to Re: How to debug: password authentication failed for user  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: How to debug: password authentication failed for user
List pgsql-general
On Thu, Feb 27, 2025 at 1:32 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
> -c 'ALTER USER timeshift_user PASSWORD '"'"'timeshift_pass'"'"';'
> I am still trying to work out what that quoting is doing?

That's standard for -x output for some versions of bash. FWIW, none of the shells I had access to output it quite like that, but who knows what shell the OP has. It's basically trying to stop the current ALTER USER statement, add a new single quote (but wrap it in double quotes!), then start a new single-quoted string (the actual password). (So single, double-single-double, single). Then do it all again at the end. It's valid, and it should really be equivalent to PASSWORD 'timeshift_pass' so it's hard to see what the problem is.

The fact that a manual ALTER ROLE cleared it up certainly suggests that something is going wrong, however, and the SELECT rolpassword output definitely means it had some password. A possibility is that somehow the user password was already set and this particular statement was not run (or run on a different cluster).

Another debug technique might be to have the shell script write the ALTER USER command to a temp file, then slurp it in via psql -f. Then you can cat that file as part of the script's output

Cheers,
Greg

--
Enterprise Postgres Software Products & Tech Support

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: How to debug: password authentication failed for user
Next
From: Adrian Klaver
Date:
Subject: Re: How to debug: password authentication failed for user