Tôi nghĩ rằng bạn đang đơn giản hóa thuật ngữ / quy trình. Sau khi truy vấn được phân tích cú pháp và trước khi nó được thực thi, nó cần có được các khóa cần thiết. Tại thời điểm này, người ta xác định rằng:
- phiên 1 có khóa độc quyền vì nó đang chèn và không có khóa nào khác
- phiên 2 và 3 được xếp hàng đợi cho khóa chia sẻ vì khóa riêng đã được giữ bởi phiên 1 và phiên 2 và 3 gặp lỗi khóa trùng lặp
Theo trên, phiên 2 và 3 được xếp hàng đợi cho các khóa dùng chung vì chúng bị lỗi khóa trùng lặp. Tuy nhiên, khi phiên 1 xóa khóa và phát hành khóa độc quyền, bây giờ cả phiên 2 và 3 đều được cấp các khóa dùng chung. Tại thời điểm này, cả hai đều cố gắng có được một khóa độc quyền để hoàn thành việc chèn. Tuy nhiên, không ai có thể, bởi vì người kia đã giữ khóa chia sẻ. Vì vậy, khóa độc quyền không được cấp cho cả hai và chúng sẽ bị khóa.