DB2 - Problem description
Problem IT37183 | Status: Closed |
IBM ENTITYFRAMEWORK CORE 5.0 PROVIDER THROWS ERROR SQL0104N WHENAPPLICATION USES TRANSACTION | |
product: | |
DB2 CONNECT / DB2CONNCT / B50 - DB2 | |
Problem description: | |
User Application throws error SQL0104N when transaction is used using IBM Entity Framework Core provider v5.0.0.200. Error: IBM.Data.Db2.DB2Exception (0x80004005): ERROR [42601] [IBM][AS] SQL0104N An unexpected token "_" was found following "". Expected tokens may include: "". Example stack trace that can be seen: ERROR [42601] [IBM][AS] SQL0104N An unexpected token "_" was found following "". Expected tokens may include: "". at IBM.Data.Db2.DB2Connection.HandleError(IntPtr hHandle, SQL_HANDLE hType, RETCODE retcode) at IBM.Data.Db2.DB2Command.ExecuteNonQueryObject(Boolean skipInitialValidation) at IBM.Data.Db2.DB2Command.ExecuteNonQueryObject() at IBM.Data.Db2.DB2Command.ExecuteNonQuery() at Microsoft.EntityFrameworkCore.Storage.RelationalTransaction.Crea teSavepoint(String name) at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.Exec ute(IEnumerable`1 commandBatches, IRelationalConnection connection) at Microsoft.EntityFrameworkCore.Storage.RelationalDatabase.SaveCha nges(IList`1 entries) at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManag er.SaveChanges(IList`1 entriesToSave) at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManag er.SaveChanges(DbContext _, Boolean acceptAllChangesOnSuccess) at Microsoft.EntityFrameworkCore.Storage.NonRetryingExecutionStrate gy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded) at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManag er.SaveChanges(Boolean acceptAllChangesOnSuccess) at Microsoft.EntityFrameworkCore.DbContext.SaveChanges(Boolean acceptAllChangesOnSuccess) Exception thrown: 'IBM.Data.Db2.DB2Exception' in Microsoft.EntityFrameworkCore.dll An exception of type 'IBM.Data.Db2.DB2Exception' occurred in Microsoft.EntityFrameworkCore.dll but was not handled in user code External component has thrown an exception. The problem can be seen with all supported DB2 and IDS servers. The stack trace may vary with the application use-cases. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * Nuget users for EF Core 5.0.0.200. * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to v5.0.0.300 Nuget to avoid this issue. * * NuGet package are located: * * https://www.nuget.org/packages/IBM.EntityFrameworkCore/5.0.0 * * .300 * * https://www.nuget.org/packages/IBM.EntityFrameworkCore-lnx/5 * * .0.0.300 * * https://www.nuget.org/packages/IBM.EntityFrameworkCore-osx/5 * * .0.0.300 * **************************************************************** | |
Local Fix: | |
Solution | |
Workaround | |
**************************************************************** * USERS AFFECTED: * * Nuget users for EF Core 5.0.0.200. * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to v5.0.0.300 Nuget to avoid this issue. * * NuGet package are located: * * https://www.nuget.org/packages/IBM.EntityFrameworkCore/5.0.0 * * .300 * * https://www.nuget.org/packages/IBM.EntityFrameworkCore-lnx/5 * * .0.0.300 * * https://www.nuget.org/packages/IBM.EntityFrameworkCore-osx/5 * * .0.0.300 * **************************************************************** | |
Comment | |
Implemented SAVEPOINT command support in EF and the same will be available with EF Core 5.0.0.300 NuGet package. | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 09.06.2021 10.01.2022 10.01.2022 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) |