Symptoms
Assume that you have a view or function that contains a statement that has a union on a linked server in an instance of Microsoft SQL Server 2017, 2016, or 2014. When you select from the view or function, and then you filter the results, you get a stack dump. Additionally, you receive the following error message that returns to the client:
Location: op_decod.cpp:7525
Expression: false
SPID: SPID
Process ID: ProcessID
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.
Msg 596, Level 21, State 1, Line LineNumber
Cannot continue the execution because the session is in the kill state.
Msg 0, Level 20, State 0, Line LineNumber
A severe error occurred on the current command. The results, if any, should be discarded.
Resolution
Cumulative Update information:
This issue is fixed in the following cumulative updates 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:
Workaround
To work around the issue, enable trace flag 9121.
References
Learn about the terminology that Microsoft uses to describe software updates.