Search code examples
sql-serverssas

Analysis Services cube processing hangs but is reactivated by querying the cube


We're having a very strange issue when processing a multidimensional cube in SQL Server 2014 Analysis Services. The cube process should run in about 45 minutes, but often it seems to get "stuck" or hang partway through processing, and CPU and disk activity for the msmdsrv.exe process drops from very high to almost zero. From what we've seen if you just leave it, the cube will remain in this state indefinitely, but strangely it will spontaneously resume processing if you execute any arbitrary select query on the cube.

From what I can see, it seems to be the same issue as this and this, though those posts are from SQL 2005.

We tried increasing the "ThreadPool\Process\MaxThreads" setting as suggested in those posts, but the issue is still ongoing. I've since realised there is another new threadpool setting "ThreadPool\IOProcess\MaxThreads" in later versions of SQL, so we've now tried increasing this as well, and will see how it goes.

Has anyone else seen this issue before, and can confirm the best way to resolve it? Or is this a bug with Analysis Services that is fixed in a later version?


Solution

  • We seem to have resolved this issue by setting both ThreadPool\Process\MaxThreads and ThreadPool\IOProcess\MaxThreads to 256 (up from the default of 64 that is calculated based on the number of CPUs).

    This seems to have slowed down cube processing slightly (from around 45 minutes to around 55 minutes), but we haven't had any more issues with processing hanging since making this change.