| From: | Philippe Lang <philippe(dot)lang(at)attiksystem(dot)ch> |
|---|---|
| To: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
| Subject: | Non-reentrant plperlu function & concurrent access |
| Date: | 2010-08-17 07:12:35 |
| Message-ID: | 8AE5A725DAF7364F97FF75D99E45B6575B98401A@SBS1.attiksystem.local |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Hi,
I have a non-reentrant plperlu function, which does no database modification. It basically stores input data into a file, calls a unix shell command, and reads the result back from another file.
I don't really care about database isolation here, phantom reads and such. It is not likely to be a problem. What could be a problem, is if another call to this function is fired while another one is running.
In this specific case, I could solve the problem by generating random input and ouput filenames, but I would prefer a more general solution, like using some sort of mutex for the function. What is the best way to do that under Postgresql? Although not designed for this (if I understand correctly), would a "serializable" isolation level help here?
Best regards!
-------------------------------------------------------------
Attik System web : http://www.attiksystem.ch
Philippe Lang phone: +41 26 422 13 75
rte de la Fonderie 2 gsm : +41 79 351 49 94
1700 Fribourg pgp : http://keyserver.pgp.com
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Philippe Lang | 2010-08-17 08:15:37 | Re: Non-reentrant plperlu function & concurrent access |
| Previous Message | Sandeep Srinivasa | 2010-08-17 05:08:56 | Re: Relationship between ulimit and effective_cache_size, work_mem, shared_buffers, maintenance_work_mem and vacuum |