Consider the following scenario:
- You run a MERGE statement that has an OUTPUT clause within a Stored Procedure or an ad hoc Transact-SQL batch in SQL Server 2016 or 2017 on Windows.
- The destination database uses BULK_LOGGED or SIMPLE RECOVERY MODEL.
- You insert a large amount of data (for example: around 6,000 rows) into a table in another database.
In this scenario, an assertion error occurs, and you may receive an error message that resembles the following:
Msg 3624, Level 20, State 1, Line LineNumber
A system assertion check has failed. Check the SQL Server error log for details. Typically, an assertion failure is caused by a software bug or data corruption. To check for database corruption, consider running DBCC CHECKDB. If you agreed to send dumps to Microsoft during setup, a mini dump will be sent to Microsoft. An update might be available from Microsoft in the latest Service Pack or in a Hotfix from Technical Support.
Cumulative update information:
This issue is fixed in the following cumulative updates for SQL Server:
On-demand hotfix information:
This issue is fixed in the following on-demand hotfixe for SQL Server:
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.