我在 SQL Server 中有一些内存中 OLTP 对象,它的版本是 SQL Server 2016 SP2-CU4。由于某些表的数据行大小大于 8060 字节,我遇到了问题,因此内部 xtp DMV 中有一些行外存储,这些表分配了大约 120GB 的内存。
我改变这些表并将行大小减少到小于 8060 字节,分配给这些表的内存减少,分配给 object_id=0 的内存在 sys.dm_db_xtp_table_memory_stats 中增长,大约 50GB。我认为垃圾收集器线程无法找到这个孤立对象,因此它无法释放内存。
另一个问题是“分配给内存优化对象的内存”为 25GB,其中“内存优化对象使用的内存”为 62GB,可能我认为这是一个错误
我怎么能释放这个内存?!