We've been running SQL Server 2014 for almost a year now, but SQL Server 2012 SP3 continues to appear in the Windows Update list (as an optional install). It seemed ridiculous to install a service pack from a previous version, so I've just ignored it.
However, we've recently started encountering an assertion failure (see below for more info), and one thing we're doing to try and resolve it is making sure the server is fully patched. We installed the latest cumulative update for 2014, but it hasn't solved the problem or made that SP3 item disappear from Windows Update. SP3 still wasn't on my radar, but then I found a Microsoft Product Support Services blog post that said to use the Best Practices Security Analyzer to try and troubleshoot assertion failures, and when I did it raised a warning that we hadn't applied that SP3.
So now I am considering applying that install, but I'm worried that I'm going to accidentally downgrade my server – not that we'd go back 2012 entirely, but that some of the cumulative updates might get reverted, or some other bizarre behvaior.
(This is not the exact assertion failure we've been receiving, but it's close. I cannot find a KB article that seems to describe the actual issue we're having – the KB linked in the previous sentence has to do with TOP N
and ours has to do with a procedure using OFFSET X ROWS FETCH NEXT Y ROWS ONLY
. The actual assertion failure is SQL Server Assertion: File: <op_ppqte.cpp>, line=12258
)
Best Answer
Windows Update isn't offering you a Service Pack for SQL Server 2012 to apply to your SQL Server 2014 instance; there is something else on your machine that is triggering it. Could be dozens of things, but most commonly:
Here is what I suggest.
Go download the SQL Server 2012 SP3 standalone installer:
When you run the installer, very early in setup, you'll get to a screen like this, which will tell you all of the components that are eligible for upgrade:
This will give you an indication of what components you need to either patch or remove.
I do not think you should ignore this. If you have other instances on this machine and don't want them there, clean them up! If you do need them, but leave them unpatched, it could be a security vulnerability waiting to happen. There is just no upside at all to ignoring the prompt to apply the service pack - you're getting it for a reason.
As for the assertion error you're getting, that has nothing to do with the SQL Server 2012 Service Pack you're being offered, either. It could be an indication that you are on RTM still and are missing a fix for that problem (in which case, go get the latest SP + CU, or that you've come across a bug that hasn't yet been fixed (in which case contact SQL Server support). Note that a fix may cover your issue even if your exact error message isn't listed explicitly in the knowledge base article.