KB4520149 - FIX: Assertion occurs when you fail over Read-Scale AlwaysOn Availability Groups in SQL Server 2017

Applies to: SQL Server 2017 on Windows (all editions)

Symptoms


When you run the following command to fail over the SQL Server 2017 Read-Scale AlwaysOn Availability Groups (AG), you may notice it fails and receive an assertion dump that resembles the following:
use[master]
go
alteravailability group [ag-rds] set(
    required_synchronized_secondaries_to_commit= 1
)
go
alteravailability group [ag-rds] set (role = secondary)
Assertion dump
DateTime spid##      Error: 17066, Severity: 16, State: 1.
DateTime spid##      SQL Server Assertion: File:<HadrAvailabilityGroupReplica.cpp>, line=LineNumber Failed Assertion ='cbDataTotal <= cbRemainingBuffer'. This error may be timing-related. If theerror persists after rerunning the statement, use DBCC CHECKDB to check thedatabase for structural integrity, or restart the server to ensure in-memorydata structures are not corrupted.

Status


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section. 

Resolution


This issue is fixed in the following cumulative update for SQL Server:
About cumulative updates for SQL Server:
Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. Check out the latest cumulative updates for SQL Server:

References


Learn about the terminology that Microsoft uses to describe software updates.