Domanda

C'è un modo per determinare con precisione il motivo per cui uno System.Transaction TrasactionScope viene escalation al DTC? Stiamo colpendo un urto con uno dei nostri componenti che sembrano intensificare la transazione mentre tutti gli altri componenti (che sembrano ingannevolmente simile) non fa escalation.

sono tutte le informazioni messe a disposizione sui motivi per l'escalation e come possono essere trovato e osservato? SQL Profiler? Log files? O sono fuori di fortuna su questo?

UPDATE: Io corro contro SQL Server 2005 per informazioni

È stato utile?

Soluzione

Si potrebbe provare a chiudere il servizio di Cordinator Distributed Transaction e impostando il tipo di avvio su Disabilitato. Ciò causerà un'eccezione quando la transazione viene promossa che avrà il codice problema nel stack di chiamate.

Naturalmente questo non vi aiuterà se si dispone di altri elementi in esecuzione sulla macchina che richiedono questo servizio, ma sarebbe possibile su una macchina di debug.

Altri suggerimenti

Quando si utilizza TransactionScope una transazione viene escalation ogni volta che un'applicazione apre una seconda connessione (anche allo stesso database) nel quadro dell'operazione in questione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top