SQL Server 2017 CU18 is out, and it fixes a pretty neat list of bugs including:
- Snapshot & transactional replication are now supported on Linux
- Database cannot recover and reports error 5423 (involves unrecoverable corruption on encrypted database)
- Concurrent inserts into a clustered columnstore index causing deadlocks
- Access violation when you restore an In-Memory OLTP database
- Restore fails when you restore a compressed TDE backup (man, I notice a theme here – this has popped up a lot over the last couple of years)
- Orphaned CLR sessions cause blocking
- Access violation when you insert proc results into a table with dynamic data masking
- Error 3628 when you run a proc
- Update stats takes a long time to build a query plan
- Access violation on an adaptive join
Not bad! And I’m not showing everything, either.
Next up: SQL Server 2016 SP2 CU11, which includes some of the above stuff, plus some others:
- Self-deadlock when auditing is enabled
- Non-yielding scheduler if large number of row-column values are processed in row groups (kinda odd, vague description there)
- Non-yielding scheduler for parallel batch-mode sort operator
- Non-yielding scheduler if you do an online index rebuild for an index that isn’t partition-aligned
- CHECKDB reports a false error on filtered nonclustered indexes atop clustered columnstore indexes (look at y’all getting fancy with the feature interoperability)
- Unable to restore a SQL 2012 database up onto SQL 2016 if it has a nonclustered columnstore index
- Memory leak on partitioned tables
Lots of good stuff. Time to get these implemented in your dev & staging environments, and then start making that plan to roll ’em out over the holidays when everyone’s drunk. Everyone but you, that is. You would never drink and patch. Cheers!