A major performance regression from when you upgraded 5.2.2 to 7.1.1
メンテナーはふだん 2 日以内に返信
評価
この issue はまだ評価されていません。
説明
Describe the bug
A major performance regression from when you upgraded 5.2.2 to 7.1.1.
We have a service that bulk loads data from files to hundreds of tables across hundreds of databases as a core part of our operation.
Since the upgrade to 7.1.1 our CPU usage went up 20% and the leading statements running against our DB (based off of Query Store and sys.dm_exec_request) are:
35% of all CPU usage on the server:
SELECT @Column_Names = COALESCE(@Column_Names + '', '', '''') + QUOTENAME([name]) FROM .[sys].[all_columns] WHERE [object_id] = @Object_ID AND COALESCE([graph_type], 0) NOT IN (1, 3, 4, 6, 7) ORDER BY [column_id] ASC
11% of all CPU usage on the server:
IF EXISTS (SELECT TOP 1 * FROM .[sys].[all_columns] WHERE [object_id] = OBJECT_ID($) AND [name] = $)
4% of all CPU usage on the server:
SELECT [Canonical_Column_Name], [Aliased_Column_Name]
FROM #Column_Aliases
ORDER BY [Canonical_Column_Id] ASC
To reproduce
This is our data loading code fragment
using (SqlBulkCopy bc = new SqlBulkCopy(connectionString, SqlBulkCopyOptions.CheckConstraints | SqlBulkCopyOptions.FireTriggers))
{
foreach (DataColumn col in dt.Columns)
{
bc.ColumnMappings.Add(col.ColumnName.ToUpper(), col.ColumnName.ToUpper());
}
bc.DestinationTableName = TableName;
bc.BulkCopyTimeout = 0;
bc.WriteToServer(dt);
bc.Close();
}
Further technical details
Microsoft.Data.SqlClient version: 7.1.1
.NET target: .NET 10
SQL Server version: SQL 2025 CU 9
Operating system: mcr.microsoft.com/dotnet/aspnet:10.0
- 主要言語
- C#
- スター
- 1k
- フォーク
- 352
- 平均マージ
- 4日 10時間
- マージ済み PR(30日)
- 98
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
dotnet/SqlClient のほかの issue
-
Sync ExecuteReader on an STA thread deadlocks against a StateChange handler that marshals to the UI thread (OpenAsyncRetry path)再び着手できるかも @mdaigle が 47 日前に担当しましたが、オープン中のプルリクエストはありません。 オープンExternal :link:
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
dotnet/SqlClient#4534 · コメント 2 件 · 担当者 1 名 ·
メンテナーはふだん 2 日以内に返信
-
Area\Tests
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
dotnet/SqlClient#4377 · コメント 2 件 ·
メンテナーはふだん 2 日以内に返信
-
SqlTransaction.Dispose() throws NullReferenceException from SqlInternalTransaction.Rollback() when it races the background close of a broken connection対応中かも @MaceWindu が今日担当しました。 オープン
dotnet/SqlClient#4971 · コメント 2 件 · 担当者 1 名 ·
メンテナーはふだん 2 日以内に返信
-
Suspected: async MARS command can lose its own fatal error, and sync MARS Read waits for CommandTimeout, after another session tears down the connection (managed SNI)対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンTriage Needed :new:
難易度 4/5 3〜5日 初心者へのやさしさ 15/100
メンテナーはふだん 2 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
メンテナーはふだん 2 日以内に返信
dotnet/SqlClient の issue をすべて見る
似ている issue
-
bug github_actions
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
endercodezz/BYDLO#336 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
sebastienros/jint#4449 ·
メンテナーはふだん 1 日以内に返信
-
clawsweeper:bulk-filed clawsweeper:needs-security-review clawsweeper:no-new-fix-pr clawsweeper:source-repro impact:security issue-rating: 🦞 diamond lobster P2
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
openclaw/openclaw-windows-node#2010 · コメント 2 件 · リアクション 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 77/100
imazen/imageflow-dotnet#72 · コメント 1 件 ·