PRB: dbopen() Execution Time Degrades

Last reviewed: April 25, 1997
Article ID: Q70953

The information in this article applies to:
  • Microsoft SQL Server version 4.2 for OS/2

SYMPTOMS

When you run an OS/2 multithreaded DB-Library (DB-Lib) application that opens multiple dbprocesses (dbprocs), the time taken for a dbopen() call to succeed seems to increase as the number of open dbprocs increases.

CAUSE

The overhead incurred by db-lib and LAN Manager increases as you open more dbprocs per process. Db-lib allocates memory from the heap for each open dbproc; as the heap fills up, it takes longer to find an empty slot. LAN Manager also manages named pipes by maintaining data structures that increase overhead and processing time. In addition, all existing heap memory is eventually used and db-lib might call the operating system to allocate more space for the heap. This could take from 600 milliseconds to several seconds, depending on how much system memory is being used.


Additional query words: Programming tools dblib Platforms LAN Manager
Keywords : kbprg SSrvDB_Lib SSrvProg
Version : 4.2
Platform : OS/2


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: April 25, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.