Parallel Function calls using multiple processes

From: Vishal Gupta <vishal(dot)g(at)pinelabs(dot)com>
To: pgsql-performance(at)postgresql(dot)org
Subject: Parallel Function calls using multiple processes
Date: 2009-12-16 06:46:36
Message-ID: 32477150.531260945959867.JavaMail.SYSTEM@pinenoil10102
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Problem: Function call typically takes 2-3 millisecond but at times exceeding 2-3 Minutes.
=====================================================
>From the DB logs it seems when multiple processes are trying to execute the function ,
execution takes sequentially rather than parallel, which means Nth thread will have to wait for (N-1)*ExecutionTime before getting its turn

Is my observation correct? If yes then what is the solution for this? If not where/how to find the exact cause of the above problem?
=====================================================
DB Version: 8.2
Function Details:
--returns numeric, takes 10 parameters
--select query to validate data
--row level lock for select and validate
--bare minimum business logic
--update data
--couple of inserts for transaction logs/account management
--also note that few of the tables have audit triggers causing the row to be inserted in audit table with the action (only Update/Insert/Delete)

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Pavel Stehule 2009-12-16 07:34:48 Re: Parallel Function calls using multiple processes
Previous Message Scott Carey 2009-12-16 01:28:21 Re: big select is resulting in a large amount of disk writing by kjournald