Short answer is ‘Yes’. Long answer – Exchange will make use of the white space that’s available in the database, provided there’s enough available and the pages that are free have been marked as available by the maintenance processes, and are not currently assigned to existing tables in use.

For example, a database is 150mb, and you’ve just deleted 50mb of information.  When you attempt to write an email that maybe have embedded images or attachment that takes up 5mb, the database will grow by 5mb in size to 155mb.  That 50mb information is not marked as available until the deleted item retention period expires, and the online maintenance period marks the space as available.

However, using the same scenario, if you removed the 50mb several days ago, and retention period has expired, and maintenance has made a full pass to mark the space as available, then the size of the database will stay at 150mb, and you will still have 45mb of leftover “white space” to use for new information before the file size will grow again.

Now, on top of that, in general you have an allocation size of 4kb per page, but requests are made in 64k chunks (16 consecutive pages), so it’s possible that not all of the space in a table is in use at any given time. A table may have 100 pages in use, but each page only half full.  Pages can’t be shared, so almost always you’ll have some space that’s unused, but not available.  Online maintenance attempts to compress the used pages to free up space and return consecutive pages as “white space” but quite often, not all of the available space is able to meet the criteria to be returned.

Additional Information on Database Whitespace and Free Space calculations:

Determine the True amount of White Space in an Exchange Database.

http://technet.microsoft.com/en-us/library/aa996139.aspx
http://blogs.msdn.com/jeremyk/archive/2004/04/09/110553.aspx

Thanks to Steve S (MSFT) for the information.

Note: See this post for information on Whitespace cleanup procedure.

–Thanks, Jinesh.

Advertisements