Monday, February 13, 2012

Analysis Services Processing Freezes or Hangs

Currently I have multiple Analysis Services databases on multiple servers. On occassion, when processing these databases it will freeze or hang. Sometime the problem is the database structure, sometimes it is the back end source tables being locked, etc. The only way I can terminate the processing is to kill the dev environment or management studio. This causes problems because the next time the database is opened, it will not process or save. The only solution I found is restarting Analysis Services. Is there some way to force stop processing without damaging the database and leaving connections open?

It might be possible to open a second instance of SSMS and use XMLA to discover the sessions or connections and then cancel the one that it stuck. But sometimes the server can take a while to respond to these commands if it is "stuck".

You can also use the xmlaDiscover class from the Analysis Services Stored Procedure project http://www.codeplex.com/ASStoredProcedures/Wiki/View.aspx?title=XmlaDiscover&referringTitle=Home which lets you manage this a bit simpler by running a command like:

CALL ASSP.DiscoverConnections()

which displays the current connections in a grid, and then:

CALL ASSP.CancelConnection(<ConnectionID>)

You should probably be aware that there is an issue with the Cancel command in SP2 that I read about in a KB article and sometimes it does not function correctly. Apparently there is a hotfix available if this issue affects you.

No comments:

Post a Comment