Paul Dubois wrote:
>
 >
>> I am worried that if I use persistent connections it might be possible 
>> for more than one PHP script to be inside the same transaction at the 
>> same time.
> 
> 
> Not at the *same* time, because although a persistent connect might be
> used by more than one script, this will be serially rather than 
> simultaneously.
> That does mean it's possible for a transaction to be started by
> one script and then either committed or rolled back by the next if
> they share a connection.

That's exactly what I meant and feared. In a sense User 2 who is 
re-using User 1's connection would be in User 1's "un-completed" 
transaction. And the result of User 2's transaction (commit or rollback) 
would affect the first transaction. Yuck ...

>> 2- If user 1's hits the stop button on his browser, what happens to 
>> his transaction? I assume it is stopped. But what about the 
>> connection? If user 2
>  
> No, the script won't have any idea the stop button has been pressed.
> It should have executed and completed its transaction regardless of what 
> the user does.

Really? I don't exactly know how PHP script execute but I though that is 
that the user goes to a page that starts a script and then closes the 
browser that causes the script to end prematurely.

Am I wrong? Does the script go from start to finish even though the 
connection to the browser has been severed. I.e. The script will run 
complete even if there is output to the browser as the script is running?

If the script goes from start to finish regardless of what the user does 
that would be nice. That way I am sure a transaction will go from start 
to finish, and if I make sure to either commit or rollback the 
transaction at the end of the script then I don't have to worry.

Maybe the safest thing to do is not use persistent connections at all? 
Or in your opinion is there a safe way to use persistent connections and 
transactions?

Jc

PS Great book!


-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to