FIX: SQL Server 2014 crashes when you execute a query that contains a NONEXISTENT query hint on an In-Memory OLTP database

Symptoms

Assume that you create a memory-optimized table in SQL Server 2014. Then, you submit a query against the table, and the query specifies a hint that is not recognized by SQL Server. For example, you submit the following query:
SELECT * FROM dbo.ShoppingCart (non_existing_hint) WHERE ShoppingCartId = 1;
In this situation, SQL Server may crash, and you receive the following error message:

Msg 3624, Level 20, State 1, Line 27
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.

After you install the update, SQL Server doesn't crash in this scenario, and you receive an error message that looks something like:

Msg 10794, Level 16, State 86, Line 26
The table option 'xxxxx' is not supported with memory optimized tables.

Resolution

Cumulative Update information

The issue was first fixed in the following cumulative update of SQL Server.

Recommendation: Install the latest cumulative update for SQL Server

Status

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

Article ID: 3138775 - Last Review: Apr 18, 2016 - Revision: 1

Feedback