This thing started to happen quite often. It seems that Rollback fails somehow (there is no error in the log) and every transaction afterwards rasults in a "SqlTransaction has completed; it is no longer usable".
How do we reset the adapter?
Or do we just dispose it and create a new one?
What happens to the transaction that turned into a zombie transaction?
If we try to close the adapter (CloseConnection) it calls Rollback automaticaly and fails again. Is there a way to reuse that adapter?
We use LLBLGen version 1.0.2005.1 Final November, 8. 2005.
Stack trace:
Event class: ERROR
Event description: System.InvalidOperationException: This SqlTransaction has completed; it is no longer usable.
at System.Data.SqlClient.SqlTransaction.ZombieCheck()
at System.Data.SqlClient.SqlTransaction.Rollback()
at SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.Rollback()
at PIMP.DAL.DatabaseSpecific.DataAccessAdapter.Rollback() in C:\PIMP\DAL 2.0\DatabaseSpecific\DataAccessAdapter.cs:line 947
at PIMP.Common.BLL.BDokumenti.ClearAfterError(Boolean statusChanged, Int32 vds_Id, String transactionName) in C:\PIMP2.0\Solutions\Common\BLL\BDokumenti.cs:line 1805
at PIMP.BLL.DokumentiProdaje.BPonude.SaveEntity(Int32 vds_Id, Boolean rezerviraj, Boolean fullSave, Boolean kreirajDokument, Boolean odobriIsporuku) in C:\PIMP2.0\Solutions\DokumentiProdaje\BLL\BPonude.cs:line 232
at PIMP.GUI.DokumentiProdaje.FormPND.SpremiClick() in C:\PIMP2.0\Solutions\DokumentiProdaje\GUI\FormPND.cs:line 948