"Thomas F. O'Connell" <tfo@sitening.com> writes:
> This is an important distinction because testing reveals that the
> quoted $user after the reversal is no longer actually a dynamic
> variable that results in a search_path that resolves to the current
> user.
Really? It works fine for me:
regression=# create schema postgres;
CREATE SCHEMA
regression=# show search_path;
search_path
--------------
$user,public
(1 row)
regression=# select current_schemas(true);
current_schemas
------------------------------
{pg_catalog,postgres,public}
(1 row)
regression=# alter database regression set search_path = public, '$user';
ALTER DATABASE
regression=# \c -
You are now connected to database "regression".
regression=# show search_path;
search_path
-----------------
public, "$user"
(1 row)
regression=# select current_schemas(true);
current_schemas
------------------------------
{pg_catalog,public,postgres}
(1 row)
regression=#
regards, tom lane