Re: [HACKERS] Threads in PostgreSQL - Mailing list pgsql-general

From Konstantin Knizhnik
Subject Re: [HACKERS] Threads in PostgreSQL
Date
Msg-id 5677AEE4.9010609@postgrespro.ru
Whole thread Raw
In response to Threads in PostgreSQL  (sri harsha <sriharsha9992@gmail.com>)
List pgsql-general
Hi,

PostgreSQL is not using threads but it is possible to spawn thread in your PostgreSQL extensions.
For example, I have used pool of threads in my IMCS extension.
But you need to build your  extension with -pthread:

CUSTOM_COPT = -pthread

Also, please take in account that many PostgreSQL functions (even in/out or comparison functions) are not reentrant: them are storing their state in global variables.
So you will get race conditions if you are calling  such functions from multiple threads.

Concerning stack overflow, I think that the most probable reason is trivial infinite recursion.
Did you inspect stack trace in debugger?






On 21.12.2015 09:21, sri harsha wrote:
Hi,

   Is it possible to use threads in Postgresql ?? I am using threads in my foreign data wrapper and i get the following error when i use the threads .

ERROR:  stack depth limit exceeded
HINT:  Increase the configuration parameter "max_stack_depth" (currently 2048kB), after ensuring the platform's stack depth limit is adequate.

No matter how much i increase the stack size , the error keeps occurring . How do i solve this problem ??


Thanks,
Harsha

pgsql-general by date:

Previous
From: Chapman Flack
Date:
Subject: Re: Threads in PostgreSQL
Next
From: james garner
Date:
Subject: dblink connect per socket / specify cluster name