Saturday, August 25, 2007

Blocked Worker Threads

What causes Blocked Worker Thread error messages is the one of the most asked question among community. Below are some nice notes collected from Web to clear of some of this question? In order to communicate with Microsoft Exchange, the BlackBerry Enterprise Server utilizes Microsoft's Messaging. Application Programming Interface (MAPI). Under certain conditions, it is possible that MAPI can achieve a deadlock state where all of the MAPI worker threads become hung and cannot recover. In the regular operations of the BlackBerry Enterprise Server, a disconnect (i.e. Exchange Server taken offline) between the Microsoft Exchange

Server and the BlackBerry Enterprise Server can result in Microsoft's MAPI threads to enter a deadlock state. Once the MAPI threads enter a hung state condition, there is a possibility that the threads will not be released and all MAPI threads used by the BlackBerry Enterprise Server will eventually reach deadlock. It is this deadlock state that results in the stoppage of the redirection of messages to and from the BlackBerry handheld

There are multiple reasons for blocked MAPI worker threads.

  • The BlackBerry Enterprise Server attempted to contact a BlackBerry device user's mailbox but could not initiate a connection with the Microsoft Exchange Information Store.
  • The BlackBerry Enterprise Server attempted to contact the Microsoft Exchange server and is still waiting for a response.
  • The Microsoft Exchange server might be offline or another unreachable state.
  • The BlackBerry Enterprise Server attempted to contact the Microsoft Exchange server but did not receive a timely response. This could be due to issues such as packet loss on the network or complex calls to the Microsoft Exchange server (e.g. a bulk load on a BlackBerry device user with more than 5000 calendar entries).
  • The Microsoft Exchange server may be taxed too heavily and cannot handle the load.

After the cause has been determined, it will probably be necessary to restart the BlackBerry Enterprise Server. After a pool of threads has crashed restarting the BlackBerry Enterprise Server services will not release them, as they are part of the Messaging Application Programming Interface (MAPI) subsystem.

If only individual threads are hung, restarting the BlackBerry Enterprise Server services will release those threads and reinitialize them without restarting the BlackBerry Enterprise Server. However, since it is difficult to determine whether individual threads have crashed, or an entire pool of threads, it is better to restart the BlackBerry Enterprise Server rather than restarting only the services.

RIM KB00778


Oz Ozugurlu


1 comment:

Anonymous said...

Thanks for this information, although I'm using 2008 I'm sure this will hekp fine tune my web site which is having issues with the worker threads limits (quite surprising as the server isn't even very loaded)! In all cases thanks again :)