Symptoms
Assume that you have a database that has Read Committed Snapshot Isolation (RCSI) enabled by setting option READ_COMMITTED_SNAPSHOT on in Microsoft SQL Server 2014. When you access both a memory-optimized table and a memory-optimized table variable in the same statement outside the context of a user transaction, the operation may fail. Additionally, you may receive the following error:
Msg 41359. A query that accesses memory optimized tables using the READ COMMITTED isolation level, cannot access disk based tables when the database option READ_COMMITTED_SNAPSHOT is set to ON. Provide a supported isolation level for the memory optimized table using a table hint, such as WITH (SNAPSHOT).
Resolution
The issue was first fixed in the following cumulative update of SQL Server.
Cumulative Update 1 for SQL Server 2014 /en-us/help/2931693
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, use the following workarounds:
-
Use the table hint WITH (SNAPSHOT) with the table variable.
-
Set the database option MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT to ON.
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.