Deadlocks. Everything you ever wanted to ask but were too shy.
It's not a secret that a deadlock - it's not very good. Definition of deadlock is very simple and quite clear: This is an exceptional situation when two concurrent queries request same resources but in a different order. Classic deadlock can occur when two concurrent transactions modifying data from the two tables in a different order. Unfortunately, in a real life deadlocks often are be more complex and unobvious. One of the rules, which I always keep in mind, sounds: "You can not design a database, in which the occurrence of deadlock is impossible". And we should deal with them. The algorithm is simple: catch, analyze, fix. In practice, the process can be challenging and can require different types of analysis.
In this session, we will learn some basics about Locks and Transaction Isolation Levels and then analyse and solve as many deadlocks as we can in 75 min.
Experience in SQL query execution. Experience in gathering profiler traces.