Skip to content

ConnectionFailedException: The collection already contains item with same key 'net.transport' #1074

Closed
@atiq-cs

Description

@atiq-cs

Software versions
MySqlConnector version:
bug exists in nuget package versions starting with '2.0.0-beta.5'.
Specifically, 2.0.0-beta.5' and '2.0.0-rc.1' repro this.

Server type (MySQL, MariaDB, Aurora, etc.) and version:
MySQL

.NET version: .Net 6
ORM NuGet packages and versions: 2.0.0-beta.5 and 2.0.0-rc.1

Describe the bug
starting with version 2.0.0-beta.5 connection is failing with MySQL server. It was working till 1.4.0-beta.4. It still works if I downgrade to 1.4.0-beta.4.

Exception

Unhandled exception ConnectionFailedException: "The collection already contains item with same key 'net.transport''"
 ---> System.InvalidOperationException: "The collection already contains item with same key 'net.transport''"
   at System.Diagnostics.ActivityTagsCollection.Add(String key, Object value)
   at MySqlConnector.Core.ServerSession.OpenTcpSocketAsync(ConnectionSettings cs, ILoadBalancer loadBalancer, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ServerSession.cs:line 1059
   at MySqlConnector.Core.ServerSession.ConnectAsync(ConnectionSettings cs, MySqlConnection connection, Int32 startTickCount, ILoadBalancer loadBalancer, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ServerSession.cs:line 422
   at MySqlConnector.Core.ConnectionPool.ConnectSessionAsync(MySqlConnection connection, String logMessage, Int32 startTickCount, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ConnectionPool.cs:line 363
   at MySqlConnector.Core.ConnectionPool.GetSessionAsync(MySqlConnection connection, Int32 startTickCount, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ConnectionPool.cs:line 94
   at MySqlConnector.Core.ConnectionPool.GetSessionAsync(MySqlConnection connection, Int32 startTickCount, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ConnectionPool.cs:line 124
   at MySqlConnector.MySqlConnection.CreateSessionAsync(ConnectionPool pool, Int32 startTickCount, Nullable`1 ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/MySqlConnection.cs:line 911
   at MySqlConnector.MySqlConnection.OpenAsync(Nullable`1 ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/MySqlConnection.cs:line 405
   at Goodbye.WordPress.MysqlPostReader.ReadPostsAsync(CancellationToken cancellationToken)+MoveNext() in D:\Code\wordpress-export\Goodbye.WordPress\MysqlPostReader.cs:line 51
   --- End of inner exception stack trace ---
   at Goodbye.WordPress.MysqlPostReader.ReadPostsAsync(CancellationToken cancellationToken)+MoveNext() in D:\Code\wordpress-export\Goodbye.WordPress\MysqlPostReader.cs:line 55
   at Goodbye.WordPress.MysqlPostReader.ReadPostsAsync(CancellationToken cancellationToken)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
   at Goodbye.WordPress.WordPressExporter.ExportAsync(CancellationToken cancellationToken) in D:\Code\wordpress-export\Goodbye.WordPress\WordPressExporter.cs:line 162
   at Goodbye.WordPress.WordPressExporter.ExportAsync(CancellationToken cancellationToken) in D:\Code\wordpress-export\Goodbye.WordPress\WordPressExporter.cs:line 162
   at Program.<Main>$(String[] args) in D:\Code\wordpress-export\Export\Program.cs:line 18
   at Program.<Main>(String[] args)

Code sample
https://github.com/abock/goodbye-wordpress/blob/master/Goodbye.WordPress/MysqlPostReader.cs#L51

string? originalPermalinkStructure = null;

using var connection = new MySqlConnection(ConnectionString);

try
{
    await connection.OpenAsync(cancellationToken);
}
catch (Exception e)
{
    throw new ConnectionFailedException(e);
}

Expected behavior
runs without exception and no error with old versions. I am expecting same behavior with new versions of MySqlConnector

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions