FIX: Data loss when you alter column operation on a large memory-optimized table in SQL Server 2016


In SQL Server 2016, on a memory-optimized table, most ALTER TABLE scenarios now run in parallel and result in an optimization of writes to the transaction log. However, alter column operations on a large memory-optimized table that run in parallel may result in data loss. 

NoteALTER TABLE operations run single-threaded and are not affected by this issue.


The issue was first fixed in the following cumulative update of SQL Server:
Recommendation: Install the latest cumulative update for SQL Server


To work around this issue, turn off the log-optimized for the alter operations by enabling trace flag 9909. 

To enable trace flag 9909, add the -T9909 startup parameter. Or, you can use the dbcc traceon(9909) statement for a specific session.


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


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

文章識別碼:3174963 - 最後檢閱時間:2016年7月25日 - 修訂: 1