MDS entity-based staging may fail when a duplicate Batch Tag value is used in SQL Server 2012

Article translations Article translations
Article ID: 2712547 - View products that this article applies to.
Expand all | Collapse all

Symptoms

Consider the following scenario:
  • You use the Microsoft SQL Server 2012 Master Data Services (MDS) entity-based staging process to import data into MDS.
  • You populate various MDS staging tables (stg.name) with the staging data by using the BatchTag column to identify the batch.
  • You use the same BatchTag value to populate a separate staging table that belongs to a different entity in a different MDS model.
  • You run the necessary stored procedures to start the batch processing. Or, you start the staging batch from the Integration Management functional area on the MDS website.

    When you start the staging process, you use one of three stored procedures:
    • stg.udp_name_Leaf
    • stg.udp_name_Consolidated
    • stg.udp_name_Relationship

    Note The name placeholder is the name of the staging table that was specified when the entity was created.

    The following examples show how to start the staging process by using the staging stored procedure:
    exec mds.stg.udp_entityname1 'versionAdescription',0,'batchtag'

    exec mds.stg.udp_entityname2 'versionBdescription',0,'batchtag'
In this scenario, you receive the following error message when you start the staging process:
MDSERR310029
The status of the specified batch is not valid.

Additionally, when you check the batch status, you notice that the batch that has the BatchTag value remains indefinitely stuck in status Running.

Note You can check the batch status from the MDS website by clicking Integration Management and then selecting the model to view the status or by querying the [mdm].[tblStgBatch] table.

Cause

This problem occurs because the MDS entity-based staging process checks the BatchTag status regardless of the MDS model.

Resolution

If your batch is stuck in Running status, stop the batch process, and then try to process the batch again. To stop the batch process, run the following SQL statement:
Exec [mdm].[udpStagingBatchQueueActivate]
To resolve this problem, update the BatchTag value in the staging table for the records to a new name. Additionally, make sure that the importstatus_ID field is set to 0 for the records.

More information

For more information about starting the staging process, go to the following Microsoft Developer Network (MSDN) website:
Staging Stored Procedure (Master Data Services)
Watch a video that shows how to use the new MDS entity-based staging in SQL Server 2012:
SQL 2012 Master Data Services - Entity Based Staging
For more information about how to populate the Master Data Services database, visit the following Microsoft TechNet website:
Importing Data (Master Data Services)
For more information about the statuses when you import data during the staging process, visit the following Microsoft TechNet website:
Import Statuses (Master Data Services)

Properties

Article ID: 2712547 - Last Review: November 19, 2012 - Revision: 4.0
Applies to
  • Microsoft SQL Server 2012 Business Intelligence
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
Keywords: 
kbtshoot kbexpertiseinter kbprb kbsurveynew KB2712547

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com