Symptomer
Hvis vi antager, at du bruger SQL Server 2017, og du har mange SSIS-pakker (SQL Server Integration Services), vil du måske bemærke, at SSIS- eller Power BI-rapporter sporadisk mislykkes med følgende timeoutfejl for forbindelse:
"_Main_XXXXX:Fejl: SSIS-fejlkode DTS_E_OLEDBERROR. Der opstod en OLE DB-fejl. Fejlkode: 0x80004005".
En OLE DB-post er tilgængelig. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Beskrivelse: "Timeout for login udløbet".
En OLE DB-post er tilgængelig. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Beskrivelse: "Kan ikke fuldføre logonprocessen på grund af forsinkelse i logonsvar".
En OLE DB-post er tilgængelig. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Beskrivelse: "TCP-provider: Timeoutfejl [258]. "."
Ellers er problemet ikke begrænset til SSIS- eller Power BI-rapporter. Ethvert program kan støde på problemer med ydeevnen og timeouts, mens der oprettes forbindelse til SQL Server.
Denne rettelse introducerer to nye kolonner, error_code og op_history i sys.dm_os_buffer_descriptors DMV. Error_code kolonne repræsenterer fejloplysningerne under det seneste forsøg på at udfylde den pågældende buffer. Op_history kolonne repræsenterer bufferens driftshistorik i bitformat (4 bit pr. handling, 16 handlinger i alt, sidste 4 bit repræsenterer den seneste handling og rykker mod venstre, som tiden skrider frem).
Bemærk Denne løsning løser ikke bestemte fejl, der opstår, når du udfylder buffersiderne. Det viser kun oplysninger om fejlkoder og handlinger på buffere, så der kan udføres yderligere fejlfinding med de nye oplysninger.
Grundlæggende årsag
Timeout- og ydeevneproblemer er generiske og kan have mange underliggende årsager. I dette særlige tilfælde er der mange fejl og gentagelser, som observeres under forsøg på at læse datasider fra datafiler og udfylde hukommelsesbufferne (hukommelsesrepræsentation af datasider). Den grundlæggende årsag til fejl i bufferpopulationen identificeres ikke tydeligt som de underliggende fejlkoder under forsøg på at udfylde de buffere, der ikke er blotlagt.
Status
Microsoft har bekræftet, at dette er et problem i de Microsoft-produkter, der er angivet i afsnittet "Gælder for".
Løsning
Dette problem er rettet i følgende kumulative opdatering til SQL Server:
Om kumulative opdateringer til SQL Server:
Hver ny kumulativ opdatering til SQL Server indeholder alle de hotfixes og alle de sikkerhedsrettelser, der fulgte med den forrige kumulative opdatering. Se de seneste kumulative opdateringer til SQL Server:
Referencer
Få mere at vide om den terminologi, som Microsoft bruger til at beskrive softwareopdateringer.