Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.Net SqlClient批量插入挂起_.net_Sql Server_Sql Server 2008_Bulkinsert_Bulk Load - Fatal编程技术网

.Net SqlClient批量插入挂起

.Net SqlClient批量插入挂起,.net,sql-server,sql-server-2008,bulkinsert,bulk-load,.net,Sql Server,Sql Server 2008,Bulkinsert,Bulk Load,我们正在使用.NETSQLClient将数据从远程服务器批量插入到SQL服务器 有时我们的ETL会失败,所以我们正在试图找出原因 我们可以注意到,与同时启动的其他批量插入相比,批量插入(我们称之为BI1)的挂起时间过长 通过监视SQL server上正在运行的查询,我们可以看到此BI1查询正在更改状态,有时是“挂起的”,有时是“可运行的”。我目前还没有看到“正在运行”,但它运行时可能非常快,在刷新查询之间我看不到它。 当它处于“挂起”状态时(大多数情况下),等待类型为“异步网络IO”。行数始终相

我们正在使用.NETSQLClient将数据从远程服务器批量插入到SQL服务器

有时我们的ETL会失败,所以我们正在试图找出原因

我们可以注意到,与同时启动的其他批量插入相比,批量插入(我们称之为BI1)的挂起时间过长

通过监视SQL server上正在运行的查询,我们可以看到此BI1查询正在更改状态,有时是“
挂起的
”,有时是“
可运行的
”。我目前还没有看到“正在运行”,但它运行时可能非常快,在刷新查询之间我看不到它。 当它处于“
挂起”状态时(大多数情况下),等待类型为“
异步网络IO
”。行数始终相同:38

我的理解是,批量插入正在等待输入要插入的数据。我说得对吗

这里的问题是如何识别潜在问题

我已经排除了网络问题,因为这两台机器之间同时有其他进程正在成功完成。
目标表相当大(超过7M行),但插入似乎工作得很好,速度也很快。

调试正在传送数据的.NET应用程序。我还建议您使用SSI进行数据传输。我遇到了完全相同的问题(只是在一个更大的表上,并试图一次插入700多行)。当系统挂在同一等待类型上时,会出现随机故障。而其他时候,它只是工作。你有没有找到这件事的真相??