Symptoms
Starting from Microsoft SQL Server 2017 and 2016, data types varchar(max), nvarchar(max), and varbinary(max) are supported in memory-optimized tables. Assume that you use sp_addarticle to add article on a table for transactional replication to a memory-optimized table on the subscriber in SQL Server 2016. If the table has these specific data types of columns, you might receive an error message that resembles the following:
Msg 10794, Level 16, State 1, Procedure ProcedureName, Line LineNumber[Batch Start Line LineNumber]
The type 'varchar(max)' is not supported with memory-optimized tables. The instance this was tested with was InstanceName.
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
Resolution
This problem 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:
Service pack information for SQL Server 2016
This problem is fixed in the following service pack for SQL Server:
Service packs are cumulative. Each new service pack contains all the fixes that are in previous service packs, together with any new fixes. We recommend that you apply the latest service pack and the latest cumulative update for that service pack. You do not have to install a previous service pack before you install the latest service pack. Use Table 1 in the following article to find more information about the latest service pack and latest cumulative update.
Determine the version, edition, and update level of SQL Server and its components
References
Learn about the terminology that Microsoft uses to describe software updates.