Re: Support worker_spi to execute the function dynamically.

From: Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com>
To: Michael Paquier <michael(at)paquier(dot)xyz>
Cc: Masahiro Ikeda <ikedamsh(at)oss(dot)nttdata(dot)com>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Support worker_spi to execute the function dynamically.
Date: 2023-07-20 04:50:43
Message-ID: CALj2ACWj7qF-YYVi05okBFJnPugkwsM8PSrEwfHs-tQqKO80Uw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Jul 20, 2023 at 10:09 AM Michael Paquier <michael(at)paquier(dot)xyz> wrote:
>
> On Thu, Jul 20, 2023 at 09:43:37AM +0530, Bharath Rupireddy wrote:
> > +1. However, a comment above helps one to understand why some GUCs are
> > defined before if (!process_shared_preload_libraries_in_progress). As
> > this is an example extension, it will help understand the reasoning
> > better. I know we will it in the commit message, but a direct comment
> > helps:
> >
> > /*
> > * Note that this GUC is defined irrespective of worker_spi shared library
> > * presence in shared_preload_libraries. It's possible to create the
> > * worker_spi extension and use functions without it being specified in
> > * shared_preload_libraries. If we return from here without defining this
> > * GUC, the dynamic workers launched by worker_spi_launch() will keep
> > * crashing and restarting.
> > */
>
> WFM to be more talkative here and document things, but I don't think
> that's it. How about a simple "These GUCs are defined even if this
> library is not loaded with shared_preload_libraries, for
> worker_spi_launch()."

LGTM.

--
Bharath Rupireddy
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Kyotaro Horiguchi 2023-07-20 05:02:17 Re: Make mesage at end-of-recovery less scary.
Previous Message Michael Paquier 2023-07-20 04:39:36 Re: Support worker_spi to execute the function dynamically.