Hi,
On 2025-03-23 09:32:48 -0700, Noah Misch wrote:
> Another candidate description string:
>
> AIO_COMPLETED_SHARED "Waiting for another process to complete IO."
I liked that one and adopted it.
> > A more minimal change would be to narrow AIO_IO_URING_COMPLETION to
> > "execution" or something like that, to hint at a separation between the raw IO
> > being completed and the IO, including the callbacks completing.
>
> Yes, that would work for me.
I updated both the name and the description of this one to EXECUTION, but I'm
not sure I like it for the name...
> > > > --- a/doc/src/sgml/config.sgml
> > > > +++ b/doc/src/sgml/config.sgml
> > > > @@ -2710,6 +2710,12 @@ include_dir 'conf.d'
> > > > <literal>worker</literal> (execute asynchronous I/O using worker processes)
> > > > </para>
> > > > </listitem>
> > > > + <listitem>
> > > > + <para>
> > > > + <literal>io_uring</literal> (execute asynchronous I/O using
> > > > + io_uring, if available)
> > >
> > > I feel the "if available" doesn't quite fit, since we'll fail if unavailable.
> > > Maybe just "(execute asynchronous I/O using Linux io_uring)" with "Linux"
> > > there to reduce surprise on other platforms.
> >
> > You're right, the if available can be misunderstood. But not mentioning that
> > it's an optional dependency seems odd too. What about something like
> >
> > <para>
> > <literal>io_uring</literal> (execute asynchronous I/O using
> > io_uring, requires postgres to have been built with
> > <link linkend="configure-option-with-liburing"><option>--with-liburing</option></link> /
> > <link linkend="configure-with-liburing-meson"><option>-Dliburing</option></link>)
> > </para>
>
> I'd change s/postgres to have been built/a build with/ since the SGML docs
> don't use the term "postgres" that way. Otherwise, that works for me.
Went with that.
Greetings,
Andres Freund