or
sql-server
Max
In the following error message, the reason given is "Invalid Protection Option".  What does that indicate?  

> SQL Server detected a logical consistency-based I/O error: invalid protection option

For the purposes of this question, I don't need to know anything about "how to run DBCC", or "check for corruption".  I got that.  I'm just curious about the "root cause" piece, and what could possibly cause *this* flavor of the logical consistency-based I/O error.
Top Answer
Sean Gallardy
> What does that indicate?

It indicates that invalid page flags for protection are set, mostly likely caused by something in the hardware, Windows I/O stack, or 3rd party software. In *supported* SQL Server versions there are three options for page protections:

 1. None
 2. Torn Page
 3. Checksum

Imagine reading a page from disk and doing basic sanity checks against it. One check might be, let's check to make sure the page protection options are set appropriately. If there are three options, having a 4th value set or having multiple options set would be invalid.

>I'm just curious about the "root cause" piece, and what could possibly cause this flavor of the logical consistency-based I/O error.

It indicates that something scribbled the data on disk or the data being read from the disk into memory. The root cause for on-disk corruption is extremely hard to get if it isn't reproducible, so at best it's a bad piece of hardware or software in the I/O stack. Worst is it's another application not playing nice and doing whatever it wants to files on that server. 
“Invalid Protection Option”
Max replying to Jack Douglas
cheers!
Jack Douglas replying to Max
I just verified that having linked Sean's account I could import the answer, so it's now here @Max
Josh Darnell replying to PeterVandivier
I like to scatter information around in different places :P
PeterVandivier
[if only someone had answered that exact question in chat previously 😅](https://topanswers.xyz/transcript?room=2&id=12659&year=2020#c12659)
PeterVandivier replying to Josh Darnell
can you @ someone from a room they've never been in before? 🤔 @Jack 
Josh Darnell replying to Max
To make sure Jack looks into this, you should ping him in The Heap.
Max
I'd like to import @Sean's answer from dba.se - but I suppose it doesn't like the import because his account name doesn't match?  This is the answer url:  https://dba.stackexchange.com/a/243493/10832