transactions
Hello everyone.
I have the following question:
say i have two transactions going on simultaneoulsy.
in one transaction i do an insertion
and the other transaction i do a delete.
what will happen if in both the transactions, the insert(in one) and delete(in the other) are issued at exactly the same time? will bothe get blocked and enter into a deadlock, if yes then do both the transactions get aborted after some time of waiting.
Regards
Surabhi Ahuja
"Surabhi Ahuja " <surabhi.ahuja@iiitb.ac.in> writes:
Hello everyone.
I have the following question:say i have two transactions going on simultaneoulsy.
in one transaction i do an insertion
and the other transaction i do a delete.
what will happen if in both the transactions, the insert(in one) and
delete(in the other) are issued at exactly the same time? will bothe get
blocked and enter into a deadlock, if yes then do both the transactions
get aborted after some time of waiting.
The transactions will be executed completely independently, unless you
do explicit locking (via SELECT FOR UPDATE or LOCK TABLE).
-Doug
On Mon, Jun 06, 2005 at 09:21:15AM -0400, Douglas McNaught wrote:
"Surabhi Ahuja " <surabhi.ahuja@iiitb.ac.in> writes:
say i have two transactions going on simultaneoulsy.
in one transaction i do an insertion
and the other transaction i do a delete.
what will happen if in both the transactions, the insert(in one) and
delete(in the other) are issued at exactly the same time? will bothe get
blocked and enter into a deadlock, if yes then do both the transactions
get aborted after some time of waiting.The transactions will be executed completely independently, unless you
do explicit locking (via SELECT FOR UPDATE or LOCK TABLE).
Deadlock can still happen if Transaction A's INSERT blocks because
of something Transaction B did previously, and Transaction B's
DELETE blocks because of something Transaction A did previously.
Foreign key relationships are a typical cause, but even UPDATEs on
simple tables can cause later operations to deadlock if the application
isn't careful with its order of operations.
--
Michael Fuhr
http://www.fuhr.org/~mfuhr/