Re: Connect from background worker thread to database

From: Andres Freund <andres(at)anarazel(dot)de>
To: Олексій Васильєв <leopard_ne(at)inbox(dot)ru>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Connect from background worker thread to database
Date: 2013-11-24 13:06:50
Message-ID: 20131124130650.GB4403@alap2.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

On 2013-11-24 16:27:06 +0400, Олексій Васильєв wrote:
> This is part where I try to connect to database:  https://github.com/le0pard/pg_web/blob/master/src/pg_web.c#L92-L132 , but SPI functions give error in log (it is commented):
>
> 2013-11-24 02:57:43 UTC ERROR:  stack depth limit exceeded
> 2013-11-24 02:57:43 UTC HINT:  Increase the configuration parameter "max_stack_depth" (currently 2048kB), after ensuring the platform's stack depth limit is adequate.
> 2013-11-24 02:57:43 UTC CONTEXT:  SQL statement "SELECT COUNT(*) FROM pg_class;"
>
> Because I doing something in wrong way. I will appreciate for any help: where I doing wrong, link to the article how to do it, just a tip, pull request - anything. Google search and PostgreSQL sources reading  so far helped me to this point.

At the very least you're calling InitPostgres() instead of
BackgroundWorkerInitializeConnection() which you have commented out. And
the latter should only be called once in every worker.

Greetings,

Andres Freund

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2013-11-24 13:11:58 Re: [PATCH] Report exit code from external recovery commands properly
Previous Message Олексій Васильєв 2013-11-24 12:27:06 Connect from background worker thread to database