1222: Lock request time out period exceeded (délai de la demande de verrou dépassé)
SQL ServerQue signifie cette erreur ?
Le délai d'une requête a expiré pendant qu'elle attendait d'acquérir un verrou. La demande a été annulée, car une autre transaction maintenait trop longtemps verrouillée la ressource requise.
Cause
Dépassement du temps d'attente défini avec SET LOCK_TIMEOUT, transactions bloquantes de longue durée, transactions ouvertes non validées, longs parcours et conflits de verrous.
Comment la corriger
Trouvez le bloqueur : examinez sys.dm_exec_requests, sys.dm_tran_locks et la colonne blocking_session_id, ou utilisez sp_who2 / sp_whoisactive. Raccourcissez les longues transactions et validez-les. Ajustez LOCK_TIMEOUT si nécessaire. Sur les systèmes à forte charge de lecture, réduisez les conflits lecteurs-écrivains avec RCSI/l'isolation snapshot.
Autres entrées pour ce moteur
- 18456Login failed for user (échec de connexion pour l'utilisateur)
- 8152String or binary data would be truncated (les données chaîne ou binaires seraient tronquées)
- 2628String or binary data would be truncated in table, column ...; truncated value (données tronquées dans la table, la colonne ... ; valeur tronquée)
- 9002The transaction log for database is full due to ... (le journal des transactions de la base est plein)
- 1105Could not allocate space for object in database because the filegroup is full (allocation d'espace impossible : groupe de fichiers plein)
- 208Invalid object name (nom d'objet invalide)
- 229The SELECT/EXECUTE permission was denied on the object (autorisation SELECT/EXECUTE refusée sur l'objet)