BUG: You may receive an access violation error message when you try to run an SSIS package in SQL Server 2005 (924016)



The information in this article applies to:

  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • SQL Server 2005 Standard Edition for Itanium-based Systems
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Developer Edition

Bug #: 898 (SQL Hotfix)

SYMPTOMS

Consider the following scenario. In Microsoft SQL Server 2005, you try to run a SQL Server Integration Services (SSIS) package. The SSIS package transfers data between two instances of SQL Server 2005 on the same x64 computer. In this scenario, you may receive an access violation error message. When this problem occurs, the Microsoft Windows Application log contains an event that documents the system error message. The system error message resembles the following:
DTExec.EXE - Application Error The exception unknown software exception (0x40000015) occurred in the application at location 0x7ee8bd9e.
Note This problem occurs when SSIS Lookup tasks are executed in parallel. This problem does not occur when SSIS Lookup tasks are executed sequentially.

CAUSE

This problem occurs when data flow components from multiple SSIS Lookup tasks share the same cache area. Data flow components may share the same cache area when the text in the SQLCommand property of one data flow component in an SSIS Lookup task is the same as the text in the SQLCommand property of a data flow component in another SSIS Lookup task.

WORKAROUND

To work around this problem, use one of the following workarounds:
  • Set the MaxConcurrentExecutables property of the SSIS package to 1.This setting prevents parallel execution of SSIS tasks.
  • Configure the SSIS Lookup transformation to use no caching.
  • Change the text in the SQLCommand property of one data flow component so that it differs from the text in the SQLCommand property of another data flow component. The following examples of small modifications show how to perform this workaround:

    Example 1
    1. Set the SQLCommand property in the first lookup task to the following.
      select * from [dbo].[table1] --comment to differentiate the Lookup SQLCommands
    2. Set the SQLCommand property in the second lookup task to the following.
      select * from [dbo].[table1] --different comment
    Example 2
    1. Create two views named View1 and View2. Define both views by using an SQL query that resembles the following.
      select * from [dbo].[Table1]
    2. Set the SQLCommand property in the first lookup task to the following.
      select * from [dbo].[View1]
    3. Set the SQLCommand property in the second lookup task to the following.
      select * from [dbo].[View2]

STATUS

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

MORE INFORMATION

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


For more information about the MaxConcurrentExecutables property, visit the following Microsoft Developer Network (MSDN) Web site: For more information about the Lookup transformation in SSIS, visit the following MSDN Web site:

Modification Type:MajorLast Reviewed:8/30/2006
Keywords:kbBug kbtshoot kbQFE kbpubtypekc KB924016 kbAudITPRO kbAudDeveloper