On 3/10/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> Hello,
>
> I need to run some SELECT queries that take a while (10+ minutes) to 
> complete, and I'm wondering about the isolation about the results I get.  
> More precisely, while my SELECT is running, the DB is being updated by 
> another application, and I am wondering which, if any, data changes my SELECT 
> will see.
>
> Example:
> If I start my SELECT at 10:00, and it finishes at 10:10, will my results 
> include data that was inserted between 10:00 and 10:10?
> Similarly, will my result include data that was updated between 10:00 and 
> 10:10?
> The same question for data that was deleted during that period.
>

no

> If it matters, my SELECT runs from psql client, while concurrent inserts, 
> updates, and deletes are executed from a separate application (webapp).
>

doesn't really matters

> For my purposes in this case I need the SELECT to get the results that 
> represent data right at the beginning of the query - a snapshot.  I read 
> this: http://www.postgresql.org/docs/8.1/static/transaction-iso.html  and it 
> looks like this is the default PG behaviour (READ COMMITTED)
>

yes, it is

> Question:
> If I do not explicitly START TRANSACTION before the SELECT, will this READ 
> COMMITTED XA behaviour still be in effect?
>

yes. all statements not executed inside a transaction block are in an
implicit transaction

> Thanks,
> Otis
>
>

--
regards,
Jaime Casanova

"What they (MySQL) lose in usability, they gain back in benchmarks, and that's
all that matters: getting the wrong answer really fast."
                           Randal L. Schwartz

---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
       subscribe-nomail command to [EMAIL PROTECTED] so that your
       message can get through to the mailing list cleanly

Reply via email to