PRB: Changing Database Context Can Lead to Unexpected Results (166108)
The information in this article applies to:
- Microsoft Transaction Server 1.0
This article was previously published under Q166108 SYMPTOMS
With connection pooling enabled, you must make sure that if your component
changes the database context of a connection, it does so through the ODBC
SQL_CURRENT_QUALIFIER connection attribute, and not via the Transact-SQL "use some_other_database" command. Otherwise, the next component that gets the connection will be connected to the wrong database.
STATUS
This behavior is by design.
MORE INFORMATION
The connection pooling mechanism can detect all changes done through the
ODBC API, but it cannot detect changes done in Transact-SQL. Therefore,
a statement like "use some_other_database" can set the current database
to some unexpected database. When the connection is recycled, the
connection is pointing to some_other_database rather than to the
original, but the connection pooling mechanism does not know that.
Microsoft Transaction Server always enables connection pooling.
REFERENCES
For information on obtaining version 2.0, please see the following article in the Microsoft Knowledge Base:
185174 INFO: Latest Version of Microsoft Transaction Server
Modification Type: | Minor | Last Reviewed: | 3/3/2005 |
---|
Keywords: | kbprb KB166108 |
---|
|