We have a job on the database server in the past few days occasionally encountered the following error (sensitive information has been processed), mainly reported "TCP provider:the semaphore timeout period has expired. [SQLSTATE 07008] (Error 121) OLE DB Provider "SQLNCLI" for linked server "(NULL)" returned message "Communication link failure". [SQLSTATE 01000] (Error 7412). The step failed. The stored procedure executed by the job uses linked Server. The server is a virtual machine under VMware for Windows Server 2003.
1 Date ./6/2 9: the: -2 LogJob History (job_name)3 4 Step ID15 Server SERVERNAME6 Job Name job_name7 Step Name job_name8 Durationxx:xx: A9 SQL Severity -Ten Sql Message ID7412 One Operator emailed A Operator Net sent - Operator Paged - Retries Attempted0 the - Message - Executed as User: NT authority\system. TCP Provider:the semaphore timeout period has expired. [SQLSTATE 07008](Error121) OLE DB provider "SQLNCLI" forLinked server "(NULL) "returned message" Communication link failure ". [SQLSTATE 01000](Error7412). The step failed.
On this error, I looked up some information on the Internet. For example, this article TCP provider:the semaphore timeout period has expired describes a lot of possible causes of this error, such as TCP chimney not disabled, system memory pressure, etc. Think it is likely that the network problem, on this server, continue to ping that link past the server,
M:\db_backup>ping-t 192.168.xxx.xxx> Ping.txt
continued to ping more than 20 children, during the job occurred once the above problems, during the swap 14, it should be confirmed that the virtual machine between the network swap caused the error in this job. For information on how to diagnose network problems, refer to the official documentation on how to troubleshoot network connectivity issues. The problem is basic positioning, but how to solve is a headache for the system administrators.
Resources:
https://social.technet.microsoft.com/Forums/zh-CN/c3fc9f5d-c073-4a9f-bb3d-b7bb8f893f78/ Error-0x80070079-the-semaphore-timeout-period-has-expired?forum=itprovistanetworking
https://social.msdn.microsoft.com/Forums/sqlserver/en-US/24df17db-5125-43d7-b504-5d2de132e461/ Sqlncli-linked-server-error?forum=sqldataaccess
https://support.microsoft.com/zh-cn/kb/325487
TCP Provider The semaphore timeout period has expired