Questo è stato segnalato non meno di quattro volte. Questo è stato chiuso come risolto:
http://connect.microsoft.com/SQLServer/feedback/details/365876/
Ma questo non era vero. (Guarda anche la sezione delle soluzioni alternative - la soluzione che ho suggerito non sarà sempre accettabile.)
Questo è stato chiuso come da progetto / non risolto:
http://connect.microsoft.com/SQLServer/feedback/details/581193/
Questi due sono più recenti e ancora attivi :
http://connect.microsoft.com/SQLServer/feedback/details/800919/ (ora chiuso come non risolto )
http://connect.microsoft.com/SQLServer/feedback/details/804365/ (ora chiuso come da progetto )
Fino a quando Microsoft non può essere convinta diversamente, dovrai trovare una soluzione alternativa: devi solo distribuire tutti i tipi prima di eseguire il test o suddividerlo in più test.
Cercherò di ottenere conferma dai miei contatti su ciò che Umachandar intendeva per risolto nel primo articolo, perché ovviamente è in conflitto con dichiarazioni successive.
AGGIORNAMENTO # 1 (di, si spera, esattamente 2)
Il bug originale (che era stato chiuso come riparato) riguardava tipi di alias, ma non di tipo TABLE
. È stato segnalato contro SQL Server 2005, che ovviamente non aveva tipi di tabella e TVP. Sembra che UC abbia riferito che il bug con tipi di alias non di tabella è stato corretto in base al modo in cui gestiscono le transazioni interne, ma non copriva uno scenario simile successivamente introdotto con i tipi di tabella. Sto ancora aspettando la conferma se quel bug originale avrebbe dovuto essere chiuso come riparato; Ho suggerito di chiudere tutti e quattro come da progetto. Questo in parte perché è un po 'come mi aspettavo che funzionasse, e in parte perché ho capito da UC che "ripararlo" in modo diverso è estremamente complesso, potrebbe rompere la compatibilità con le versioni precedenti e sarebbe utile in un numero molto limitato di casi d'uso. Nulla contro di te o il tuo caso d'uso, ma al di fuori degli scenari di test
AGGIORNAMENTO # 2
Ho scritto un blog su questo problema:
http://www.sqlperformance.com/2013/11/t-sql-queries/single-tx-deadlock