Please deprecate autoclose - by AaronBertrand

Status : 

  Fixed<br /><br />
		This item has been fixed in the current or upcoming version of this product.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.

Sign in
to vote
ID 238888 Comments
Status Closed Workarounds
Type Suggestion Repros 0
Opened 11/17/2006 11:40:14 AM
Access Restriction Public


I think it's time that we break free from this issue where we assume that <400kb is too much memory consumption.  The performance implications on both client applications and tools like Management Studio when we have to open the database before we can do anything with it, when we are migrating to bigger and bigger machines with gobs and gobs of disposable memory, does not seem worth it.

I can understand leaving this in for Compact Edition, but not for Express/Dev/Wgp/Std/Ent.

Even in a hosting solution where a service provider may have 10,000 databases on an instance, if they don't have adequate hardware to support the case where all the databases are being accessed, then they're shooting themselves in the foot, and we are just slowing down the bullet.
Sign in to post a comment.
Posted by Microsoft on 9/12/2007 at 10:55 AM
This feedback item has been closed because it is a duplicate of another item in our bug database. We are still tracking the issue of AutoClose for Express, just in a different bug.
Posted by Greg Low - Australia on 11/22/2006 at 9:28 PM
To add a contrary opinion, I'd hate to see it go. However, it should *never* be the default option for any database, regardless of the product edition. It may have made sense on Win98 with FAT filesystems but not since.

I have a number of customers with very large numbers of databases. The current downside of AutoClose is that it doesn't have a sliding timeout. I'd like to see a "Close the database" if it hasn't been used in xxxx seconds option. The beautiful thing about AutoClose is that you don't have to specifically "Open" the database, you just access it and it opens. This is good behaviour for what we need. Coding styles that recommend closing database connections when not in use are not conducive to the current AutoClose behaviour. There needs to be a timeout. We currently have to write code to work around it.

Setting the database OFFLINE doesn't give a good workaround as it doesn't automatically open up again when accessed. However, I *would* like to see there be a call that does close the database the same way that AutoClose does eg: ALTER DATABASE CLOSE.
Posted by Hugo Kornelis on 11/22/2006 at 12:17 AM
I agree with Aaron. For the rare cases where users really need to close a database, users can (and should) explicitly close the database using ALTER DATABASE <dbname> SET OFFLINE.

If this request is not honored, then at least change the default to disable autoclose on ALL editions, including express.