I'm onsite at a customer who's experienced a weird problem with HP PolyServe and SQL Server 2005 and I'm wondering whether anyone else has hit it.
The problem is that with default settings, a DBCC CHECKDB will fail on a database underpinned by PolyServe managed storage. This is because DBCC CHECKDB (by default) uses a hidden database snapshot which it stores in NTFS alternate streams on the existing database data files, and PolyServe by default doesn't support NTFS alternate streams.
Now - I know why this happens (I wrote DBCC CHECKDB) and I know how to work around it (create your own snapshot and check that, or restore a backup and check that, or use WITH TABLOCK as a last resort) - so I don't want answers that explain these things.
What I'd love to know is the following:
- why does PolyServe not support NTFS alternate streams by default?
- what functionality do you lose in PolyServe by enabling NTFS alternate stream support?
- has anyone else experienced this?
Edit: Btw - the last upgrade to PolyServe 3.6.1 was what turned the option OFF by default, which caused the DBCC CHECKDB failure. We're trying to figure out why it went from ON to OFF by default.
I tried to find some info on this online before asking here.
Thanks!
PS If you want background on why DBCC CHECKDB uses a snapshot, see my long blog post on CHECKDB internals at CHECKDB From Every Angle: Complete description of all CHECKDB stages.