Re: SPI_connect, SPI_connect_ext return type

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Stepan <sndcppg(at)gmail(dot)com>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: SPI_connect, SPI_connect_ext return type
Date: 2024-08-10 14:12:04
Message-ID: 3133982.1723299124@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Stepan <sndcppg(at)gmail(dot)com> writes:
> Hi, hackers! If you look at the code in the src/backend/executor/spi.c file,
> you will see the SPI_connect function familiar to many there, which
> internally simply calls SPI_connect_ext. The return type is int, at the end
> it says return SPI_OK_CONNECT;
> It confuses me that nothing but OK, judging by the code, can return.(I
> understand that earlier, before 1833f1a1, it could also return
> SPI_ERROR_CONNECT). Therefore, I suggest making the returned value void
> instead of int and not checking the returned value. What do you think about
> this?

That would break a lot of code (much of it not under our control) to
little purpose; it would also foreclose the option to return to using
SPI_ERROR_CONNECT someday.

We go to a lot of effort to keep the SPI API as stable as we can
across major versions, so I don't see why we'd just randomly make
an API-breaking change like this.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message vignesh C 2024-08-10 14:23:04 Re: Pgoutput not capturing the generated columns
Previous Message Stepan 2024-08-10 14:00:02 Re: SPI_connect, SPI_connect_ext return type