SSAS fails to process cube with no specific error message

Mike Bailey picture Mike Bailey · Dec 8, 2014 · Viewed 19.4k times · Source

I have an SSAS cube which I've been deploying automatically via Octopus Deploy + some PS scripts.

The script that deploys the SSAS cube is given below:

function Deploy-Cube($databasePath)
{
    $executable = "C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\Microsoft.AnalysisServices.Deployment.exe"
    Write-Output "Deploying Cube"
    & $executable $databasePath "/s:Deploy.log"

    $process = Get-Process "Microsoft.AnalysisServices.Deployment"
    $process.WaitForExit()

    $log = Resolve-Path ".\Deploy.log"
    $output = [System.IO.File]::ReadAllText($log)

    if ($output.Contains("Error"))
    {
        Throw $output
    }
    else
    {
        $output | Write-Output
    }
}


$databasePath = $(Resolve-Path -Path ".\Cube.asdatabase").Path

Copy-Item ".\Cube.no-process.deploymentoptions" "Cube.deploymentoptions" -Force
Deploy-Cube -DatabasePath $databasePath

Copy-Item ".\Cube.full.deploymentoptions" "KK.Corporate.DataWarehouse.Cube.deploymentoptions" -Force
Deploy-Cube -DatabasePath $databasePath

The output from the Deploy.log is:

Connecting to the localhost server
Database, Cube, found on server, localhost. Applying configuration settings and options...
    Analyzing configuration settings...
    Done
    Analyzing optimization settings...
    Done
    Analyzing storage information...
    Done
    Analyzing security information...
    Done
Generating processing sequence...
Deploying the 'Cube' database to 'localhost'.
Internal error: The operation terminated unsuccessfully.
Server: The current operation was cancelled because another operation in the transaction failed.
Errors in the OLAP storage engine: An error occurred while the 'Dimension Item Id' attribute of the 'Sales' dimension from the 'Cube' database was being processed.
Errors in the OLAP storage engine: An error occurred while the 'Item Description' attribute of the 'Items' dimension from the 'Cube' database was being processed.
OLE DB error: OLE DB or ODBC error: Operation canceled; HY008.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of 'Dimension Dates', Name of 'Dates' was being processed.
Errors in the OLAP storage engine: An error occurred while the 'Week' attribute of the 'Dates' dimension from the 'Cube' database was being processed.
OLE DB error: OLE DB or ODBC error: Operation canceled; HY008.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of 'Dimension Items', Name of 'Items' was being processed.
Errors in the OLAP storage engine: An error occurred while the 'Category' attribute of the 'Items' dimension from the 'Cube' database was being processed.
OLE DB error: OLE DB or ODBC error: Operation canceled; HY008.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of 'SalesTransactions', Name of 'SalesTransactions' was being processed.
Errors in the OLAP storage engine: An error occurred while the 'Transaction Key' attribute of the 'SalesTransactions' dimension from the 'Cube' database was being processed.
Errors in the OLAP storage engine: An error occurred while the 'Dimension Time Id' attribute of the 'Sales' dimension from the 'Cube' database was being processed.
Errors in the OLAP storage engine: An error occurred while the 'Dimension Time Id' attribute of the 'Times' dimension from the 'Cube' database was being processed.

The output from the SSAS log is:

(12/8/2014 12:24:42 PM) Message: OLE DB error: OLE DB or ODBC error: Operation canceled; HY008. (Source: \\?\C:\Program Files\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 3, Category: 289, Event ID: 0xC1210003)
(12/8/2014 12:24:42 PM) Message: OLE DB error: OLE DB or ODBC error: Operation canceled; HY008. (Source: \\?\C:\Program Files\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 3, Category: 289, Event ID: 0xC1210003)
(12/8/2014 12:24:42 PM) Message: OLE DB error: OLE DB or ODBC error: Operation canceled; HY008. (Source: \\?\C:\Program Files\Microsoft SQL Server\MSAS11.MSSQLSERVER\OLAP\Log\msmdsrv.log, Type: 3, Category: 289, Event ID: 0xC1210003)

If I try manually running a process full in SSAS, I get an equally cryptic error message as the Deploy.log.

I have the same exact deployment process running locally and on a CI server. The permissions are identical across three environments and it works on 2 of 3.

What's causing this? Is there anything I can do to fix it?

Answer

Mike Bailey picture Mike Bailey · Dec 8, 2014

As suggested by Tab Alleman, I tried manually performing a full process of the cube. I unfortunately don't have the error message on hand, but it said something to the effect of "An internal error has occurred."

On a hunch, I restarted the SSAS instance and tried the full process a second time. The second time around SSAS correctly reported what error was causing it to fail.

In short: If you're getting no useful errors or vague error messages back from SSAS, try restarting the instance and processing it manually.