Re: SPI_ERROR_CONNECT within pl/pgsql, PG 8.4
От | Tom Lane |
---|---|
Тема | Re: SPI_ERROR_CONNECT within pl/pgsql, PG 8.4 |
Дата | |
Msg-id | 22050.1247492029@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: SPI_ERROR_CONNECT within pl/pgsql, PG 8.4 (Marek Lewczuk <newsy@lewczuk.com>) |
Ответы |
Re: SPI_ERROR_CONNECT within pl/pgsql, PG 8.4
Re: SPI_ERROR_CONNECT within pl/pgsql, PG 8.4 |
Список | pgsql-general |
Marek Lewczuk <newsy@lewczuk.com> writes: >>> I have made an upgrade to PG 8.4 and following error was thrown during >>> execution of some pl/pgsql function: >>> ERROR: �XX000: SPI_connect failed: SPI_ERROR_CONNECT >> > I can't prepare an example, cause I can't reproduce this error in an > example, but in production database that error occurs. As I wrote > before, the problem is also that second try of executing a statement, > that cause an error works just fine, but I don't know whether this is > executed in the same connection or in the different one, cause my > application uses connection pooling. How can it be, that pl/pgsql > looses SPI connection within the middle of some function ? No, you're misinterpreting the message. What that code likely means is that something is trying to use SPI and finding plpgsql already connected. In other words, plpgsql forgets to do a SPI_push() before calling something that might try to use SPI re-entrantly. It should be perfectly deterministic and it definitely doesn't have anything to do with the states of other sessions. But we're going to need a test case to fix it. regards, tom lane
В списке pgsql-general по дате отправления: