KB4495663 - FIX: tõrge 41162 ilmneb, kui jaotatud kättesaadavuse rühmade loomine nurjub SQL Server 2016 ja 2017

Rakenduskoht
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Sümptomid

Oletame, et kasutate Microsoft SQL Server 2016 või 2017. Kui kättesaadavusrühm liitub olemasoleva jaotatud kättesaadavusrühmaga (DAG) kohe pärast DAG-i kaotamist ja uuestiloomist, ei saa see DAG-ga liituda ja kuvatakse tõrketeade, mis sarnaneb järgmisega:

      

Alati sees: protsess AG konfiguratsioonimuudatuse teatis AG AGName'i kohta olekus "FORWARDER" (7).
Tõrge: 41162, raskusaste: 16, olek: 0.
Kättesaadavusrühma AGName konfiguratsiooni järjekorranumbri kontrollimine nurjus.  Mälus olev järjekorranumber ei vasta püsivale järjekorranumbrile.  Kättesaadavusrühm ja/või kohalik saadavuskoopia taaskäivitatakse automaatselt.  Kasutajatoiminguid pole praegu vaja teha.
Alati sees: AR 'AGName' töötleb nüüd teatist (tüüp 64).
Alati sees: protsess AG konfiguratsioonimuudatuse teatis AG AGName'i kohta olekus "FORWARDER" (7).
Alati sees: AR 'AGName' valideerib nüüd AG terviklikkust WSFC-s.
Alati sees: AR -AGName'i rolliüleminek [FORWARDER] --> [FORWARDER], päästik [VALIDATE_AG_CONFIG], olek (wsfc = 1, metaandmed = 1).
Alati sees: AR 'AGName' töötleb nüüd teatist (tüüp -2).

Lisaks võib tõrge 41162 tuua AG lahendamisoleku ja see võib põhjustada kaht muud probleemi: tõrge 19407 ja kinnituse nurjumine.

      

Tõrge 19407:

Kvalifitseerimata tehingud pööratakse andmebaasis DBName tagasi oleku Always On Availability Groups muutmiseks. Hinnanguline tagasipööramise lõpuleviimine: 100%. See on ainult teavitav sõnum. Kasutajatoiminguid pole vaja teha.
[HaDrDbMgr::SetPrimaryAR] Esmaseks määramine agID-ks: AGNumber, replicaID: ReplicaNumber, AGDBID: AGDBNumber
Tõrge: 19407, raskusaste: 16, olek: 2.
Kättesaadavusrühma GroupName ja Windows Server Tõrkesiirdeklastri vaheline rendileping on aegunud. SQL Server ja Windows Server Tõrkesiirdeklastri vahel ilmnes ühendusprobleem. Et teha kindlaks, kas kättesaadavusrühm nurjub õigesti, kontrollige vastavat kättesaadavusrühma ressurssi Windows Server Tõrkesiirdeklastris.

Kinnitus:

Alati sees: töötle AG konfiguratsioonimuudatuse teatist AG andmebaasinime kohta olekus "RESOLVING_NORMAL" (0).
      

Alati sees: AR DatabaseName valideerib nüüd WSFC AG terviklust.
      

Alati sees: GetTransportWithRef() lükatakse tagasi, kuna kohalik AR pole võrgus.
      

Andmebaasi DatabaseName olekuteave – hardened Lsn: '(34:304752:1)' Commit LSN: '(0:0:0)' Kinnitamisaeg: '1. jaanuar 1900 12:00AM'
      

RECOVERY (DatabaseName, 6): paralleelse uuestitegemise tööliste peatamise alustamine
      

**Tõmmise lõim – spid = 0, EC = 0x000001F280CC7250
      

Pinutõmmis, mis saadetakse kausta FileLocation
      

* BEGIN STACK DUMP:
      

* Asukoht: "FileLocation":1774
      

* Expression: GetContext ()->GetController ()->GetHadrArRoleExternal () == HADR_ROLE_FORWARDING_SECONDARY
      

* SPID: SPId
      

* Protsessi ID: ProcessId
      

Tõrge: 17066, raskusaste: 16, olek: 1.
      

SQL Server kinnitus: Fail: <"Filelocation">, line=1774 Failed Assertion = 'GetContext ()->GetController ()->GetHadrArRoleExternal () == HADR_ROLE_FORWARDING_SECONDARY'. See tõrge võib olla ajastusega seotud. Kui tõrge ei lahene pärast lause uuesti käivitamist, kasutage andmebaasi struktuuritervikluse kontrollimiseks DBCC CHECKDB-d või taaskäivitage server, et tagada mälusiseste andmestruktuuride rikkumine.
      

Tõrge: 3624, raskusaste: 20, olek: 1.
      

Süsteemi kinnituskontroll on nurjunud. Üksikasjalikumat teavet leiate SQL Server tõrkelogist. Tavaliselt on kinnituse nurjumise põhjuseks tarkvaraviga või andmete rike. Andmebaasi rikete kontrollimiseks võiksite käivitada DBCC CHECKDB. Kui nõustusite häälestuse ajal tõmmiseid Microsoftile saatma, saadetakse Microsoftile väike tõmmis. Microsofti värskendus võib olla saadaval uusima hoolduspaketiga või tehnilise toe kiirparandusega.
      

Olek

Microsoft on kinnitanud, et see on jaotises „Rakenduskoht“ loetletud Microsofti toodete korral esinev probleem.

Lahendus

See probleem on lahendatud järgmises SQL Server koondvärskenduses:

Teave SQL Server koondvärskenduste kohta.
      

Iga uus koondvärskendus SQL Server sisaldab kõiki kiirparandusi ja kõiki turbeparandusi, mis olid kaasatud eelmise koondvärskenduse. Vaadake uusimaid SQL Server koondvärskendusi.

Nõudmisel kiirparanduse teave:

See probleem on lahendatud järgmise nõudmisel kiirparanduse SQL Server:

Viited

Lisateave Microsofti tarkvaravärskenduste terminoloogia kohta.