Microsoft KB Archive/919474

From BetaArchive Wiki

Article ID: 919474

Article Last Modified on 12/4/2007



APPLIES TO

  • Microsoft Host Integration Server 2004 Standard Edition
  • Microsoft Host Integration Server 2004 Enterprise Edition
  • Microsoft OLE DB Provider for DB2



SYMPTOMS

Consider the following scenario. You perform a query against an IBM DB2 database. The query uses a four-part name syntax. In this scenario, the query execution time may be slower than expected.

For example, the query execution time may be slower than expected when you perform a query that resembles the following:

SELECT * FROM LINKED_SERVER.CATALOG1.SCHEMA1.DB2_TABLE  WHERE COLUMN1 = '12345'

If the query uses the OPENQUERY syntax, the query execution time is faster than if the query uses a four-part name syntax. For example, the query execution time is faster when you perform a query that resembles the following:

SELECT * FROM OPENQUERY(LINKED_SERVER, ‘SELECT * FROM SCHEMA1.DB2_TABLE  WHERE COLUMN1 = '12345'’)

You experience this problem if a Microsoft SQL Server linked server uses Microsoft Host Integration Server 2004 Microsoft OLE DB Provider for DB2 to access the IBM DB2 database.

CAUSE

The following list describes the common reasons that this problem may occur:

  • The distributed query processor in SQL Server may execute the query statement multiple times. Each execution of the query statement adds to the overall query execution time.
  • The format of the query statement may cause some of the execution or all the execution to be performed locally by SQL Server instead of remotely on the IBM DB2 system. This may include query statements that include WHERE clauses or LIKE clauses. Therefore, more query data may be returned to SQL Server than is required for the particular query.


RESOLUTION

Microsoft Host Integration Server 2004

Hotfix information

A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

File information

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

File name File version File size Date Time Platform SP requirement
Db2oledb.dll 6.0.2043.0 488,448 17-Aug-2006 22:38 x86 SP1
Db2oledb.h Not Applicable 24,516 17-Aug-2006 22:43 Not Applicable SP1
Ddmstr.dll 6.0.2043.0 44,032 17-Aug-2006 22:38 x86 SP1
Drdaresync.exe 6.0.2043.0 337,408 17-Aug-2006 22:38 x86 SP1
Microsoft.hostintegration.dataaccesslibrary.dll 6.0.2043.0 86,016 17-Aug-2006 22:38 x86 SP1
Microsoft.hostintegration.dataaccesstool.exe 6.0.2043.0 2,703,360 17-Aug-2006 22:38 x86 SP1
Microsoft.hostintegration.msdb2client.dll 6.0.2043.0 114,688 17-Aug-2006 22:38 x86 SP1
Mseidb2c.dll 6.0.2043.0 71,680 17-Aug-2006 22:38 x86 SP1
Mseidb2d.dll 6.0.2043.0 435,200 17-Aug-2006 22:38 x86 SP1
Mseidrda.dll 6.0.2043.0 695,808 17-Aug-2006 22:38 x86 SP1

Note Because of file dependencies, the most recent hotfix that contains these files may also contain additional files.

Microsoft OLE DB Provider for DB2 version 1.0

Hotfix information

A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

File information

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

32-bit x86-based version

File name File version File size Date Time Platform
Db2oledb.dll 7.0.2523.0 515,344 23-Aug-2006 21:38 x86
Microsoft.hostintegration.dataaccesslibrary.dll 7.0.2523.0 2,554,712 23-Aug-2006 21:39 x86
Microsoft.hostintegration.dataaccesstool.exe 7.0.2523.0 617,296 23-Aug-2006 21:38 x86
Mseidrda.dll 7.0.2523.0 781,072 23-Aug-2006 21:39 x86
Snanls.dll 7.0.2523.0 105,224 23-Aug-2006 21:38 x86

64-bit x64-based version

File name File version File size Date Time Platform Service branch
Db2oledb.dll 7.0.2523.0 757,520 23-Aug-2006 21:37 x64 Not Applicable
Microsoft.hostintegration.dataaccesslibrary.dll 7.0.2523.0 2,550,616 23-Aug-2006 21:37 x64 Not Applicable
Microsoft.hostintegration.dataaccesstool.exe 7.0.2523.0 613,200 23-Aug-2006 21:37 x64 Not Applicable
Mseidrda.dll 7.0.2523.0 1,355,536 23-Aug-2006 21:37 x64 Not Applicable
Snanls.dll 7.0.2523.0 128,776 23-Aug-2006 21:37 x64 Not Applicable
Db2oledb.dll 7.0.2523.0 515,344 23-Aug-2006 21:37 x86 SYSWOW
Mseidrda.dll 7.0.2523.0 781,072 23-Aug-2006 21:37 x86 SYSWOW
Snanls.dll 7.0.2523.0 105,224 23-Aug-2006 21:36 x86 SYSWOW

Note Because of file dependencies, the most recent hotfix that contains these files may also contain additional files.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

MORE INFORMATION

This hotfix is designed to address the second reason that is described in the "Cause" section.

Microsoft OLE DB Provider for DB2 has been updated to support a writeable DBPROP_MAXROWS property. Therefore, SQL Server may retrieve less query data when SQL Server runs a four-part name query. Before you apply this hotfix, Microsoft OLE DB Provider for DB2 exposes the DBPROP_MAXROWS property as a read-only property. This read-only property has a default value of 0. Because the DBPROP_MAXROWS property is set to 0, SQL Server retrieves the whole table every time that a data query call is made.

The updated DBPROP_MAXROWS property that is included in this hotfix lets the distributed query processor in SQL Server set this property to 1. If this property is set to 1, SQL Server retrieves a limited number of rows of data from the IBM DB2 database instead of retrieving the whole table. Therefore, the four-part name query finishes running sooner.

Note The performance improvement that you experience depends on the format of the four-part name query together with the specific environment in which Microsoft OLE DB Provider for DB2 is used.

For more information about the DBPROP_MAXROWS property, visit the following Microsoft Developer Network (MSDN) Web site:

For more information, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates


The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, regarding the performance or reliability of these products.


Additional query words: DQP 4-part OLEDB

Keywords: kbbug kbfix kbqfe kbpubtypekc kbhotfixserver KB919474