FIX: Error 4409 Generated When Using Multiple Database Views (151590)
The information in this article applies to:
- Microsoft SQL Server 6.0
- Microsoft SQL Server 6.5
This article was previously published under Q151590
BUG#: 14645 (6.00)
SYMPTOMS
Under certain conditions, you may receive 4409 errors.
CAUSE
The problem arises when the first view in the chain of views can be
executed but subsequent views are unavailable for use. For example:
If you have viewA and viewC in the master database and viewB in the pubs
database, where viewA selects * from viewB and viewB selects * from viewC
and viewC selects * from sysdatabases. And, SQL Server has been stopped
while a client continues to try to execute a select * from viewA. When SQL
Server is restarted, the master database is always recovered first and then
the subsequent databases. As soon as master is recovered, the client
attempts to execute the select and receives the 4409 error because pubs has
not yet been recovered.
The same behavior can occur when you take a database on and offline, or you
try to drop and create viewC in the above scenario while someone is trying
to access it.
WORKAROUND
Drop and add the views when you are sure no one is accessing them.
STATUS
Microsoft has confirmed this to be a problem in Microsoft SQL Server
versions 6.0 and 6.5. This problem has been corrected in U.S. Service Pack
1 for Microsoft SQL Server version 6.5. For more information, contact your
primary support provider.
Modification Type: | Major | Last Reviewed: | 10/16/2003 |
---|
Keywords: | kbBug kbfix KB151590 |
---|
|