2012-02-06 06:42 AM - edited 2015-12-18 01:21 AM
This one is stumping me.
This morning I was alerted to a situation where one of my SQL LUN's had filled up. The bizarre situation is that my NetApp system seems to think there is a lot more free space available than Windows (I know people often get hit with the opposite scenario).
The Volume / LUN were 100GB in size, I increased both to 120GB to get service back online. However, here is the data I am seeing:
Shows volume still at 100GB, with 16.93GB Free
Shows LUN at 120GB, with 36.09GB Free
Shows LUN at 120GB, with 21GB Free
running 'lun show -v' gives me the following:
/vol/MSSQL_SQL07_Data/MSSQL_SQL07_Data 120.0g (128873687040) (r/w, online, mapped)
Space Reservation: disabled
Multiprotocol Type: windows
Maps: SERVER01=4 SERVER02=4
Occupied Size: 83.9g (90120962048)
Creation Time: Sat Nov 19 09:51:38 EST 2011
Cluster Shared Volume Information: 0x1
No snapshots. Dedupe was on (only reclaiming about 1GB, so I disabled it thinking it might have something to do with it, no changes). Both Volume and LUN are thin provisioned. No fractional reserve (not that it should matter). Autogrow is on.
Any ideas? I can live with the situation where my SAN thinks I have less free space than the servers that access it, but the opposite situation scares me greatly.
Solved! SEE THE SOLUTION
2012-02-06 11:35 AM
Windows will in some cases create files without writing/allocating them on the actual storage. An example would be the SQL Server Instant File Initialization feature. In that case you'd have a big empty database file that doesn't necessarily occupy much space on the storage controller until it fills up with data. "Sparse Files" should work basically the same way.
The upside is that you have more space available, and less actual data to manage/backup/snapshot!