Share via


Restart Logic for the Report Preparation Task

The processing states of dimensions are tracked in the DimProcInfo table by the columns: LastSuccessfulDate, LastProcessedDate, LastProcessedStatus, and LastProcessedDescr. These columns are updated each time the Report preparation task processes the dimension. If the processing was successful, LastProcessedStatus is set to zero and LastProcessedDescr is set to a localized string indicating success. These values are set by the stored procedure csdw_SetDimProcessingStatus.

The processing states of partitions are tracked in the CubePartitionInfo table by the columns: ProcessingState, LastSuccessfulDate, LastProcessedDate, LastProcessedStatus, LastProcessedDescr, and LastKeyProcessed. Before the Report preparation task initiates a partition process, it queries the ProcessingState and LastKeyProcessed columns.

If the task is being run in incremental mode and the cube is enabled for incremental processing (as indicated by the IncEnabled column), the task examines the ProcessingState column. If this column is set to zero, the task will incrementally process the cube, loading only the facts that have a LastKeyProcessed value that is greater than the value retrieved from the CubePartitionInfo table. If the value of ProcessingState is set to 1, it indicates that the task cannot determine whether the last cube process was successful. In this situation, the Report preparation task must perform a full data refresh of the partition to ensure that duplicate facts are loaded into the cube.

Before a partition is processed in any mode, the stored procedure csdw_InitPartitionProcessing is run for the cube. This sets the ProcessingState column to one. After a cube is processed, the success or failure of that processing attempt is written to the database by the stored procedure csdw_SetPartitionProcessingStatus. This procedure sets the ProcessingState to zero, the LastKeyProcessed to the current max ProcessingKey value, and the LastSuccessfulDate, LastProcessedDate, LastProcessedStatus, and LastProcessedDescr columns to the appropriate values.

The Report preparation DTS task will reattempt processing if it encounters certain error conditions that are identified as "retryable" errors. If it encounters one of these errors, the Report preparation task will wait for the configured retry interval and reattempt the processing operation until the configured number of retries is exhausted.

The list of errors that, if encountered, cause the Report preparation task to retry processing, is stored as the REG_MULTI_SZ value "Retryable Errors" under the registry key HKLM\SOFTWARE\MICROSOFT\Commerce Server\PostImportDTS. You can add entries to or remove entries from this list to modify the retry behavior of the Report preparation task.

If the registry value exists, the Report preparation task will use the values specified as "Retryable Errors." If the registry value does not exist, the Report preparation task will create it, populating it with a default set of error codes.

The following table lists the HRESULTS initialized in the registry key for which the Report preparation task will reattempt processing:

HRESULT Description
2147217495 Asynchronous executable object reporting error on Data Source Object (DSO) commit.
2147221457 The DSO cannot locate the Windows NT server.
2147221455 The DSO cannot connect to Analysis Services.
231 The DSO cannot connect to the Analysis data source (for example, the Data Warehouse SQL Server database).
2147221468 The Analysis object is locked.
2147467259 The service dbnetlib cannot connect to the SQL Server computer.
2147221386 An ODBC error has occurred. (This error occurs if SQL Server stops responding during cube or dimension processing.)
2147221453 The task cannot connect to the repository. (This error occurs if you are using a SQL Server repository and SQL Server stops responding while the task is being processed.)
2147221387 A network error has occurred.
2147221424 The DSO cannot connect to Analysis Services.

See Also

ETL Process for the Report Preparation DTS Task

Copyright © 2005 Microsoft Corporation.
All rights reserved.