July 2012
Intermediate to advanced
816 pages
27h 38m
English
When a row is deleted from a FILESTREAM-enabled table, the row is removed from the table and the files associated with the row’s varbinary(max) FILESTREAM columns are removed from the file system. The files are deleted by the FILESTREAM garbage collector running on a separate background thread, so you might notice that the physical file is not removed from the FILESTREAM data container immediately.
SQL Server triggers the FILESTREAM garbage collector thread when a CHECKPOINT occurs, which, for databases that are not highly transactional, might take a long time to occur. If you want to trigger the garbage collector thread yourself, you can issue an explicit CHECKPOINT statement to the server.
Read now
Unlock full access