2015-11-11 60 views
1

我们在DMS中至少有30%或更多的时间在几个较大的sprocs上截断并插入数百万行。但是,只有一个查询运行,所以我不看僵局如何成为我的错:DMS中的Azure SQL DW死锁

Msg 110802, Level 16, State 1, Line 1 
110802;An internal DMS error occurred that caused this operation to fail. Details: Exception: Microsoft.SqlServer.DataWarehouse.DataMovement.Workers.DmsSqlNativeException, Message: SqlNativeBufferReader.Run, error in OdbcExecuteQuery: SqlState: 40001, NativeError: 1205, 'Error calling: SQLExecDirect(this->GetHstmt(), (SQLWCHAR *)statementText, SQL_NTS), SQL return code: -1 | SQL Error Info: SrvrMsgState: 71, SrvrSeverity: 13, Error <1>: ErrorMsg: [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Transaction (Process ID 2265) was deadlocked on lock | generic waitable object resources with another process and has been chosen as the deadlock victim. Rerun the transaction. | Error calling: pReadConn->ExecuteQuery(statementText, bufferFormat) | state: FFFF, number: 7801, active connections: 120', Connection String: Driver={pdwodbc};APP=TypeC01-DmsNativeReader:DB3\mpdwsvc (13732)-ODBC;Trusted_Connection=yes;AutoTranslate=no;Server=\\.\pipe\DB.3-b6c0a7b26544\sql\query 

和:

110802;An internal DMS error occurred that caused this operation to fail. Details: Exception: Microsoft.SqlServer.DataWarehouse.DataMovement.Workers.DmsSqlNativeException, Message: SqlNativeBufferReader.Run, error in OdbcExecuteQuery: SqlState: 40001, NativeError: 1205, 'Error calling: SQLExecDirect(this->GetHstmt(), (SQLWCHAR *)statementText, SQL_NTS), SQL return code: -1 | SQL Error Info: SrvrMsgState: 71, SrvrSeverity: 13, Error <1>: ErrorMsg: [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Transaction (Process ID 804) was deadlocked on lock | generic waitable object resources with another process and has been chosen as the deadlock victim. Rerun the transaction. | Error calling: pReadConn->ExecuteQuery(statementText, bufferFormat) | state: FFFF, number: 8106, active connections: 240', Connection String: Driver={pdwodbc};APP=TypeC01-DmsNativeReader:DB38\mpdwsvc (14728)-ODBC;Trusted_Connection=yes;AutoTranslate=no;Server=\\.\pipe\DB.38-b6c0a7b26544\sql\query 

这是否点了一些东西明显,以检查或修复?还是Azure支持案例是通向解决方案的最佳途径?

更新:支持案例115111713384329为您开放,这个问题

更新:我们的SQL DW得到了一个新的更新2016年3月4日这理应解决这个问题。 (我无法按需复制,所以我不能肯定地说)如果你运行“select @@ version”,那么 10.0.8224.5或更高版本应该有修复。如果你还没有修复,我会想象打开一个支持案例,请求它或等待几个星期会给你修复。

+0

问题解决了吗?决议是什么? –

+0

@JosephIdziorek支持案例仍在进行中,但我认为很快就会部署一个修复程序。将保持此线程张贴。 – GregGalloway

+0

谢谢Greg! –

回答

4

在这种情况下创建Azure支持案例是最好的。如果您可以共享您的存储过程,那将有助于我们解决根本原因。

+0

以下链接提供了有关如何为SQL DW创建Azure支持案例的说明,https://azure.microsoft.com/en-us/文档/文章/ SQL的数据仓库-GET-开始创建支持票/。如果您没有创建票证所需的支持计划,请直接通过[email protected]向我们发送电子邮件,其中包含您的服务器名称,数据库名称以及此错误的最新时间戳。 –

+0

为了帮助您缓解此问题,您可以尝试增加数据仓库的SLO(服务级别目标)。在较小的SLO(如DW100)上运行高度并发的工作负载时,锁和资源争用更有可能发生。客户已经能够通过在更大的SLO上运行工作负载来解决资源死锁问题。 –