I'm writing a program which needs to do a lot of (read only)
processing on a database. The program works on a SMP system with 16
CPUs, so it's natural to try to make it use all of them.

However, here lies the problem: I need to use SERIALIZABLE transaction
isolation level, and AFAIK it's not possible to make several database
connections to share the same exact view of the database.

So, is there a way to somehow stop all mutating operations? I want to
do something like:

STOP_MUTATING_OPERATIONS;
for(int f=0;f<10;++f)
{
   START_CONNECTION(f);
   SET_TO_SERIALIZABLE(f);
}
START_MUTATING_OPERATIONS();

for(int f=0;f<10;++f)
   DO_WORK_IN_CONNECTION(f);

Or is there a better way?

-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to