BlackBerry Controller does not restart IBM Lotus Domino after it was stopped when hung thread wait count threshold was reached

Article ID: KB20529

Type: Support Content

Last Modified: 07-18-2012

 

Product(s) Affected:

  • BlackBerry Enterprise Server for IBM Lotus Domino
  • BlackBerry Enterprise Server Express for IBM Lotus Domino
CollapseEnvironment
  • BlackBerry® Enterprise Server 5.0 to 5.0 SP3 for IBM® Lotus® Domino®
  • BlackBerry® Enterprise Server Express 5.0 SP3 for IBM® Lotus® Domino®
  • DT 764171
CollapseOverview

The BlackBerry® Controller Service has a feature where if the BlackBerry® Mailbox Agent is stopped using IBM® Lotus® Domino® (for example, with tell bes quit or by quitting IBM Lotus Domino), the BlackBerry Controller Service is designed to stop the BlackBerry Dispatcher Service.

Regarding this issue, the BlackBerry Controller Service stops the IBM Lotus Domino service when the hung thread threshold is reached. Since it is actually Lotus Domino that stops the BlackBerry Messaging Agent and not the BlackBerry Controller Service, the BlackBerry® Enterprise Server performs as though the BlackBerry Messaging Agent was manually stopped. As such, the BlackBerry Controller Service stops the BlackBerry Dispatcher Service and since the BlackBerry Dispatcher Service is stopped, the BlackBerry Controller Service does not start Lotus Domino again.

The BlackBerry Controller Service (CTRL) logs should show similar to the following log lines:

[30000] (DD/MM ##:##:##.###):{0x###} [CFG] Controller will wait for WaitCount = 6 to restart Domino & agent on hung threads
...
[30000] (DD/MM ##:##:##.###):{0x###} Hung agent threads detected. WaitCount = 6
[30000] (DD/MM ##:##:##.###):{0x###} Requesting Domino restart
[30000] (DD/MM ##:##:##.###):{0x###} Controller is stopping Domino
[30000] (DD/MM ##:##:##.###):{0x###} Domino service name Lotus Domino Server LotusDominodata) ...
[30000] (DD/MM ##:##:##.###):{0x###} Lotus Domino Server (LotusDominodata) detected and will be stopped...
[40000] (DD/MM ##:##:##.###):{0x###} Log: EVENT_SHUTDOWN
[30000] (DD/MM ##:##:##.###):{0x###} Lotus Domino Server (LotusDominodata) stopped!

CollapseCause

The BlackBerry Controller Service assumes the Administrator stopped the agent so the BlackBerry Dispatcher Service is stopped. Since the BlackBerry Dispatcher Service is stopped, the BlackBerry Controller Service does not re-start IBM Lotus Domino.

CollapseResolution

This issue is resolved inBlackBerry® Enterprise Server for IBM® Lotus® Domino® 5.0 SP3 MR4 and BlackBerry® Enterprise Server Express for IBM® Lotus® Domino® 5.0 SP3 MR1.

CollapseWorkaround

Workaround 1

Prevent the BlackBerry Controller from restarting the BlackBerry Messaging Agent when a unresponsive thread occurs.

Note: Back up the registry prior to making any changes

  1. On the computer that hosts the BlackBerry Enterprise Server, open the Registry Editor clicking Start > Run.
  2. Type regedit .
  3. Perform one of the following actions:

    If you are running a 32-bit version of Windows®, navigate to
    HKEY_LOCAL_MACHINE\SOFTWARE\Research In Motion\BlackBerry Enterprise Server\Controller

    If you are running a 64-bit version of Windows, navigate to
    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Research In Motion\BlackBerry Enterprise Server\Controller

  4. Create or modify the DWORD value WaitToRestartAgentOnHung.
  5. Double-click the new DWORD value.
  6. In the Value data field, type 0.


Workaround 2

Configure Lotus Domino to run as an application.

The following article from IBM describes how to configure IBM Lotus Domino to be in application mode:

http://www-01.ibm.com/support/docview.wss?rs=463&uid=swg21178948

CollapseAdditional Information

To adjust the BlackBerry Controller settings to force a restart in case of a severely unresponsive thread (complete with blackout settings), complete the following steps:

Note: Back up the registry prior to making any changes.

  1. On the computer that hosts the BlackBerry Enterprise Server, open the Registry Editor clicking Start > Run.
  2. Type regedit.
  3. Perform one of the following actions:

    If you are running a 32-bit version of Windows, navigate to
    HKEY_LOCAL_MACHINE\SOFTWARE\Research In Motion\BlackBerry Enterprise Server\Controller

    If you are running a 64-bit version of Windows, navigate to
    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Research In Motion\BlackBerry Enterprise Server\Controller

  4. Add or change the WaitToRestartAgentOnHung value as a DWORD and change the value from 0 to 20 (decimal). This setting forces the BlackBerry Enterprise Server to restart after a thread reaches a WaitCount of 18. In this case, the thread will have been unresponsive for 3 hours and 20 minutes. This has a default of 6 in BlackBerry Enterprise Server 5.0.
  5. Add the RestartAgentOnHungBlackoutFrom value as a DWORD and assign the value of 9 (decimal). This will prevent the BlackBerry Controller Service from restarting the BlackBerry Mailbox Agent after 9:00 AM (until the RestartAgentOnHungTo time is reached - if your business day starts at 8:00 AM, change this number to 8).
  6. Add the value RestartAgentOnHungBlackoutTo as a DWORD and assign the value of 17 (decimal). This will prevent the BlackBerry Controller Service from restarting the BlackBerry Mailbox Agent before 5:00 PM - if your business day ends at 6:00 PM, change this number to 18.
  7. Restart the BlackBerry Enterprise Server to apply the changes.

Note: The default value is 6.

Note: This issue may still be encountered IBM Lotus Domino is not running as an application and the updated unresponsive threshold has been reached.

Disclaimer

By downloading, accessing or otherwise using the Knowledge Base documents you agree:

   (a) that the terms of use for the documents found at www.blackberry.com/legal/knowledgebase apply to your use or reference to these documents; and

   (b) not to copy, distribute, disclose or reproduce, in full or in part any of the documents without the express written consent of RIM.


Visit the BlackBerry Technical Solution Center at www.blackberry.com/btsc.