histoireComment puis-je forcer un échec d'isolement de capture instantanée de 3960
J'ai un SPROC à l'aide d'isolation d'instantané pour effectuer plusieurs insertions via Merge. Ce SPROC est appelé avec une charge très élevée et souvent en parallèle, de sorte qu'il génère parfois une erreur 3960 qui indique que l'instantané a été annulé en raison de conflits de modifications. Cela est attendu en raison de la concurrence élevée.
Problème
Je l'ai mis en place un « nouvelle tentative » file d'attente pour effectuer ce travail plus tard, mais j'ai de la difficulté à reproduire l'erreur pour vérifier mes chèques sont exacts.
Question
Comment puis-je reproduire une erreur de l'instantané (3960, en particulier) pour vérifier ma logique de nouvelle tentative fonctionne?
Déjà Essayé
- raiseError ne fonctionne pas parce que cela ne me permet pas de soulever des erreurs existantes, seules définies par l'utilisateur
- J'ai essayé réinséré le même enregistrement, mais cela ne jette pas le même échec car il n'est pas deux transactions différentes « courses » une autre
juste aller avec votre code si vous avez testé les différentes parties indépendamment de la capture d'erreur réelle. Si votre nouveau code échoue et manque l'erreur, ce ne sera pas pire alors c'est quand il échoue maintenant. –