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)
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 |