How to use SQL Server Business Intelligence Development Studio or the dtutil utility to regenerate the package ID of an SSIS package that was duplicated (906564)



The information in this article applies to:

  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Workgroup

SUMMARY

In Microsoft SQL Server 2005 Integration Services (SSIS), a 16-byte GUID is generated and stored as the PackageID property of a SSIS package when the SSIS package is created. After you run the package, you can write the package ID to a log file by using the SSIS log provider. This package ID differentiates log entries for different packages.

However, the following behavior may occur:
  • When an SSIS package is copied in a file system, the new copy contains the same package ID as the original SSIS package.
  • You can successfully run the package that has the same package ID. However, you cannot differentiate the two packages by using the logging data because the package IDs are the same.
To regenerate a new package ID for each package, use one of the methods that are described in the "More Information" section.

MORE INFORMATION

For example, the following conditions are true, in the order in which they are presented:
  • You copy a package that is named DuplicateIDEmailer to a file system.
  • You name the new package DuplicateIDEmailer_copy.
  • You run both packages.

    You may notice that the logging data for each package is similar to the following:
    Event           Source                 SourceID                               ExecutionID
    ==================================================================================================================
    PackageStart DuplicateIDEmailer        3ca884a7-7805-4e12-aeee-afb99735ccd8   1d650373-5b56-4b76-bd0a-1d6a234ea91e
    PackageEnd   DuplicateIDEmailer        3ca884a7-7805-4e12-aeee-afb99735ccd8   1d650373-5b56-4b76-bd0a-1d6a234ea91e
    PackageStart DuplicateIDEmailer_copy   3ca884a7-7805-4e12-aeee-afb99735ccd8   d40c0438-e846-468d-843b-58cf5965e6a1
    PackageEnd   DuplicateIDEmailer_copy   3ca884a7-7805-4e12-aeee-afb99735ccd8   d40c0438-e846-468d-843b-58cf5965e6a1
    PackageStart DuplicateIDEmailer_copy   3ca884a7-7805-4e12-aeee-afb99735ccd8   54d91f24-4f71-4665-ba4c-4e1272302872
    PackageEnd   DuplicateIDEmailer_copy   3ca884a7-7805-4e12-aeee-afb99735ccd8   54d91f24-4f71-4665-ba4c-4e1272302872
    PackageStart DuplicateIDEmailer        3ca884a7-7805-4e12-aeee-afb99735ccd8   ed3b33e2-4933-4bf4-884d-897a9d6488a6
    PackageEnd   DuplicateIDEmailer        3ca884a7-7805-4e12-aeee-afb99735ccd8   ed3b33e2-4933-4bf4-884d-897a9d6488a6
    The PackageName property that recorded in the Source column in the table was manually updated before execution. Therefore, some differentiation exists in the logging data. However, we recommend that you also regenerate the PackageID property.
To regenerate the PackageID property, use one of the following methods.

Use SQL Server Business Intelligence Development Studio

  1. Open the package in SQL Server Business Intelligence Development Studio.
  2. Click the Control Flow tab.
  3. Click the ID property. In the drop-down list, click <Generate New ID>.

    A new value appears in the ID property.

Use the dtutil command-line utility

You can use the dtutil command-line utility (Dtutil.exe) together with the /I [D Regenerate] command-line switch to regenerate the package ID. To update multiple packages at the same time, use the dtutil utility in a batch file or in the script environment. For more information about how to use the dtutil utility, type the following command at a command prompt:

dtutil /?

To update the package IDs, put the packages in the same folder. Then, run the following command to regenerate the package ID for every package::

for %%f in (<FilePath>\*.dtsx) do dtutil.exe /i /File %%f

Note Use a single percent sign (%) when you type the command at a command prompt. Use two percent signs (%%) if you use the command in a batch file.

REFERENCES

For more information about the dtutil utility, see the "dtutil utility" topic in Microsoft SQL Server 2005 Books Online.

Modification Type:MajorLast Reviewed:3/11/2006
Keywords:kbhowto kbsql2005ssis kbinfo KB906564 kbAudDeveloper