Angular + ASP.NET Core version 8.0 ANZ version 13.2.0
Greetings;
We have upgraded to version 13.2.0 from 13.1.1 and are now encountering backend connection errors immediately on startup:
ERROR 2024-05-24 22:33:40,227 [14 ] oft.EntityFrameworkCore.Database.Command - Failed executing DbCommand (2ms) [Parameters=[@__Now_0='?' (DbType = DateTime), @__p_1='?' (DbType = Int32)], CommandType='Text', CommandTimeout='300']
SELECT a
.Id
, a
.CreationTime
, a
.CreatorUserId
, a
.IsAbandoned
, a
.JobArgs
, a
.JobType
, a
.LastTryTime
, a
.NextTryTime
, a
.Priority
, a
.TryCount
FROM AbpBackgroundJobs
AS a
WHERE NOT (a
.IsAbandoned
) AND (a
.NextTryTime
<= @__Now_0)
ORDER BY a
.Priority
DESC, a
.TryCount
, a
.NextTryTime
LIMIT @__p_1
ERROR 2024-05-24 22:33:40,263 [14 ] Microsoft.EntityFrameworkCore.Query - An exception occurred while iterating over the results of a query for context type 'LSSPortal.EntityFrameworkCore.LSSPortalDbContext'.
System.InvalidOperationException: This MySqlConnection is already in use. See https://fl.vu/mysql-conn-reuse
at MySqlConnector.Core.ServerSession.StartQuerying(ICancellableCommand command) in //src/MySqlConnector/Core/ServerSession.cs:line 288
at MySqlConnector.Core.CommandExecutor.ExecuteReaderAsync(CommandListPosition commandListPosition, ICommandPayloadCreator payloadCreator, CommandBehavior behavior, Activity activity, IOBehavior ioBehavior, CancellationToken cancellationToken)
at MySqlConnector.MySqlCommand.ExecuteReaderAsync(CommandBehavior behavior, IOBehavior ioBehavior, CancellationToken cancellationToken) in //src/MySqlConnector/MySqlCommand.cs:line 357
at MySqlConnector.MySqlCommand.ExecuteDbDataReader(CommandBehavior behavior) in /_/src/MySqlConnector/MySqlCommand.cs:line 290
at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReader(RelationalCommandParameterObject parameterObject)
at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable1.Enumerator.InitializeReader(Enumerator enumerator) at Pomelo.EntityFrameworkCore.MySql.Storage.Internal.MySqlExecutionStrategy.Execute[TState,TResult](TState state, Func
3 operation, Func3 verifySucceeded) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable
1.Enumerator.MoveNext()
Note, these repeat over a few minutes and then exhaust the connection pool, rendering the backend non-functional. This appears to start with the Background job system.
We have not upgraded any MySql components and this is NOT an issue on version 13.1.1. This upgrade from 13.1.1 to 13.2.0 was quite easy relative to past upgrades and we've done many. Although we are using MySql (have been for years), this would likely happen with the SQL provider as well, although I have not tested that.
I'll continue to look in to this as time permits, but I thought it should be reported as this release is quite new.
Sam.
3 Answer(s)
-
0
Additional information from my testing:
Disabling the Backgound job system entirely using IsJobExecutionEnabled=false, stops the issue described above, so it's very likely something was introduced since 13.1.1 that affects the Background job processing / database connection use.
Thanks, Sam.
-
0
Hi,
Please follow https://github.com/aspnetboilerplate/aspnetboilerplate/issues/6950, we will fix this issue and release a new version as soon as possible.
-
0
Thanks @ismcagdas