It seems 6b (<blocked>) per the book is not correct because there is no block at 6b.
ste5an
6b is misleading, cause the b thread is already waiting in 5b. Here it wants to update Employees, but it is waiting, cause 2a has still its lock from its update.
re:> Because it's a deadlock and the engine already chose 'A' to be killed.
I am following the example in the book. Coming across to <blocked> at step 6b is expected per the book I am reading?
Is your conclusion "The book is wrong?"
If you find that the book is wrong, I am okay with that. But if you find the book is correct then my original question remain not answered (Why am I not coming across <blocked> at step 6b?)
Sorry, I was off on vacation.
The book is not wrong (at least if the table you post in your original question is from the book). Between points 6 and 7 it says: "one transaction finnishes and the other transaction is aborted", so there's no human intervention, like I said before. Is the engine who chose which one to abort/kill.