Re: Disparity in search_path SHOW and SET - Mailing list pgsql-patches

From Bruce Momjian
Subject Re: Disparity in search_path SHOW and SET
Date
Msg-id 200512230012.jBN0C6m04919@candle.pha.pa.us
Whole thread Raw
In response to Re: Disparity in search_path SHOW and SET  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Disparity in search_path SHOW and SET
List pgsql-patches
Tom Lane wrote:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > Agreed.  I have gotten confused on how to set $user in the past.  I have
> > developed the following patch that sets the default with the double
> > quotes around it, and it works fine.  The patch also contains updated
> > documentation.
>
> This is really entirely irrelevant to Greg's complaint.  To respond to
> that, you'd have to modify the behavior of SHOW.

Uh, SHOW does show the quotes:

    test=> show search_path;
      search_path
    ----------------
     "$user",public
    (1 row)

and that can be fed right into SET:

    test=> set search_path = "$user",public;
    SET

I thought that was the goal.

> Actually, it seems that this exposes a bug in the search_path code: if
> I wrote what you wrote, I'd really expect that it refers to a schema
> named exactly $user --- the quoting ought to suppress the substitution,
> one would think.  Not sure how hard or easy that might be to implement
> though ...

I am unsure if the quotes are suppose to still allow dollar expansion.
It does in shell scripts.  Actually this is kind of unusual:

    test=> set search_path = '$user', public;
    SET
    test=> show search_path;
       search_path
    -----------------
     "$user", public
    (1 row)

It converts the single quotes to double.

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

pgsql-patches by date:

Previous
From: Tom Lane
Date:
Subject: Re: Disparity in search_path SHOW and SET
Next
From: Bruce Momjian
Date:
Subject: Re: Trouble building 8.1.1 on Tru64 UNIX 5.1