Симптоми
Да предположим, че използвате SQL Server 2017 и имате много пакети на услугите за интеграция на SQL Server (SSIS), може да забележите, че SSIS или Power BI отчети са неуспешни спорадично със следните грешки при изчакване на връзката:
"_Main_XXXXX:Грешка: SSIS код на грешка DTS_E_OLEDBERROR. Възникна грешка в OLE база данни. Код на грешка: 0x80004005".
Наличен е OLE DB запис. Източник: "Microsoft SQL Server Native Client 11.0" Hresult: описание на 0x80004005: "Времето на изчакване за влизане изтече".
Наличен е OLE DB запис. Източник: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Описание: "Не може да завърши процеса на влизане поради забавяне в отговора за влизане".
Наличен е OLE DB запис. Източник: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 описание: "TCP доставчик: грешка за изтичане на времето на изчакване [258]. "."
В противен случай проблемът не е ограничен само до отчети на SSIS или Power BI. Всяко приложение може да достигне до проблеми с производителността и времена на изчакване при свързване с SQL Server.
Тази корекция въвежда две нови колони, error_code и op_history в sys.dm_os_buffer_descriptors DMV. Error_code колона представя информацията за грешката по време на последния опит за попълване на въпросния буфер. Op_history колона представя хронологията на операциите на буфера в битов формат (4 бита за операция, общо 16 операции, последните 4 бита представляват последната операция и се изместват наляво с напредването на времето).
Забележка Тази корекция не отстранява конкретни грешки, които виждате при попълване на буферните страници. Той показва само информация за кодовете на грешки и операциите на буферите, така че да може да се извърши допълнително отстраняване на неизправности с новата информация.
Главна причина
Проблемите с изтичането на времето на изчакване и производителността са общи по своето естество и може да имат много основни причини. В този конкретен случай има много грешки и повторни опити, които се наблюдават при опит за четене на страници с данни от файлове с данни и попълване на буферите в паметта (представяне на страници с данни в паметта). Основната причина за грешки в генералната съвкупност от буфери не се идентифицират ясно като основни кодове на грешки при опит за попълване на буферите, които не са показани.
Статут
Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са изброени в раздела "Отнася се за".
Решение
Този проблем е коригиран в следната кумулативна актуализация за SQL Server:
За кумулативните актуализации за SQL Server:
Всяка нова кумулативна актуализация за SQL Server съдържа всички горещи поправки и всички корекции на защитата, които са били включени в предишната кумулативна актуализация. Прегледайте най-новите кумулативни актуализации за SQL Server:
Препратки
Научете повече за терминологията, която Microsoft използва за описване на актуализациите на софтуера.