#SQLServer The current transaction cannot be committed and cannot support operations that write to the log file. Roll back the transaction.

Hoy he tenido uno de esos problemas que cuando buscas por internet te sale la solución al instante y casi todas coinciden menos para mi caso como no Smile. El error en concreto fue el siguiente:

“Msg 3930, Level 16, State 1, ‘Nombre de mi procedimiento almacenado’ The current transaction cannot be committed and cannot support operations that write to the log file. Roll back the transaction.”

Resulta que tengo un procedimiento almacenado (en adelante SP) que me trae una serie de datos que luego se muestran en un report. Hasta ahí bien, este mismo SP lo uso para guardar los datos en una tabla que se usará a posteriori para históricos. Todo esto funciona bien hasta que cambias la tabla de histórico para meter un campo y esta ya no cumple con los que actualmente me da el SP.

Si buscamos el error por internet, lo primero que nos dice es que si tienes un Begin Try y una transacción debes controlar esta última para evitar problemas. Mi quebradero ha sido el que yo no tenía transacción aunque si un TRY.

Después de darle muchas vueltas con solo agregar el campo que faltaba en el insert desde el SP nos ha solventado el problema.

Cosas que pasan, hay que seguir el hilo de todo el procedimiento para poder ir más allá de un simple mensaje que no tenía nada que ver Sad smile.

Un Saludo

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s