Re: improve DEBUG1 logging of parallel workers for CREATE INDEX?

From: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
To: Sami Imseih <samimseih(at)gmail(dot)com>
Cc: Michael Paquier <michael(at)paquier(dot)xyz>, Bertrand Drouvot <bertranddrouvot(dot)pg(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: improve DEBUG1 logging of parallel workers for CREATE INDEX?
Date: 2025-01-19 10:30:13
Message-ID: CAECtzeVGvSJzuVwaALtmZZYUZYP4=cWku3J9yAktCENWy3OjgQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

Le dim. 19 janv. 2025 à 06:40, Sami Imseih <samimseih(at)gmail(dot)com> a écrit :

> > Hmm. I am reading Tom's opinion that goes toward not going in this
> > direction for more commands, with the point to extend EXPLAIN to show
> > this kind of information:
> > https://www.postgresql.org/message-id/1692530.1736369905@sss.pgh.pa.us
>
> That sounds like the ability to do something like EXPLAIN CREATE INDEX ...
> is that correct?
>
>
Yes, and I suppose this would be quite some work to do. Though I see how
interesting it would be, and a nice project to hack on.

> > So do we really want to do what's proposed here? I'm +-0 about the
> > VERBOSE option attached to more commands, as it is a bit harder for
> > clients to catch the information wanted.

It sounds to me a lot easier to know about a VERBOSE option that gives you
more information, than using a DEBUG level to get the same information.
DEBUG level messages aren't explained in the CREATE INDEX manpage, whereas
a VERBOSE option would be.

> So here comes my question:
> > how do we want to consume this information at the end from the
> > perspective of the client?
>
> For interactive usage in psql or pgadmin, it's trivial to capture this
> information.

+1

The information can also be written to the server log with
> log_min_messages=INFO
>
> A bit more work is required to redirect messages to an out file from psql,
> as
> you need to ensure that stderr is redirected to a file.
> It's also a bit more work to capture this information from something like a
> JDBC application.
>
> IMO the interactive use-case is where this is the most useful as you can
> start a
> CREATE INDEX (VERBOSE) and ensure that it's going to launch all the
> parallel
> workers that it planned before letting it it continue; or control-c and
> figure
> out why not all planned workers launched.
>

--
Guillaume.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message vignesh C 2025-01-19 12:07:27 Re: Pgoutput not capturing the generated columns
Previous Message Jim Jones 2025-01-19 09:33:55 Re: Add XMLNamespaces to XMLElement