On Fri, 3 Jan 2020 at 00:40, Tom Lane <t...@sss.pgh.pa.us> wrote:
>
> Robert Haas <robertmh...@gmail.com> writes:
> > On Thu, Jan 2, 2020 at 12:59 PM Mahendra Singh <mahi6...@gmail.com> wrote:
> >> While reading code and doing some testing, I found that if we create a 
> >> temporary table with same name as we created a normal(global) table, then 
> >> \d is showing only temporary table info.
>
> > That's because the query that \d issues to the backend includes:
> >   AND pg_catalog.pg_table_is_visible(c.oid)
> > So I'd say it's not a bug, because that bit of SQL didn't get included
> > in the query by accident.
>
> It's also documented:
>
>     Whenever the pattern parameter is omitted completely, the \d commands
>     display all objects that are visible in the current schema search path
>     — this is equivalent to using * as the pattern. (An object is said to
>     be visible if its containing schema is in the search path and no
>     object of the same kind and name appears earlier in the search
>     path. This is equivalent to the statement that the object can be
>     referenced by name without explicit schema qualification.) To see all
>     objects in the database regardless of visibility, use *.* as the
>     pattern.
>
> Perhaps that's not clear enough, but the behavior is certainly as-intended.
>
>                         regards, tom lane

Thanks Robert  and Tom  for quick detailed response.

-- 
Thanks and Regards
Mahendra Singh Thalor
EnterpriseDB: http://www.enterprisedb.com


Reply via email to