Troubleshooting

Answers to common questions when using Monitor.

The Server Doesn't Start

  1. Make sure you have a valid RLM license. Type:
    % rlmstat -a
  2. Check if the server for your project is already running on the same machine. Do not start an Accelerator project server more than once.
    % vovproject enable project% vsi
  3. Check if the server is trying to use a port number that is already used by another vovserver or even by another application. VOV computes the port number in the range [6200,6455] by hashing the project name. If necessary, select another project name, or change host, or use the variable VOV_PORT_NUMBER to specify an known unused port number. The best place to set this variable is in the setup.tcl file for the project.
  4. Check if the server is trying to use an inactive port number that cannot be bound. This can happen when an application, perhaps the server itself, terminates without closing all its sockets.
    The server will exit with a message similar to the following:
    ...more output from vovserver...
    vs52 Nov 02 17:34:55          0                3      /home/john/vov
    vs52 Nov 02 17:34:55 Adding licadm@venus to notification manager
    vs52 Nov 02 17:34:55 Socket address 6437 (net=6437)
    vs52 ERROR Nov 02 17:34:55 Binding TCP socket: retrying 3
    vs52 Nov 02 17:34:55 Forcing reuse...
    vs52 ERROR Nov 02 17:34:58 Binding TCP socket: retrying 2
    vs52 Nov 02 17:34:58 Forcing reuse...
    vs52 ERROR Nov 02 17:35:01 Binding TCP socket: retrying 1
    vs52 Nov 02 17:35:01 Forcing reuse...
    vs52 ERROR Nov 02 17:35:04 Binding TCP socket: retrying 0
    vs52 Nov 02 17:35:04 Forcing reuse...
    vs52 ERROR Nov 02 17:35:04 
    PROBLEM:  The TCP/IP port with address   6437   is already being used.
    
    POSSIBLE EXPLANATION:
            - A VOV server is already running   (please check)
            - The old server is dead but some
              of its old clients are still alive  (common)
            - Another application is using the
              address  (unlikely)
    
    ACTION: Do you want to force the reuse of the address?
    1. If this happens, list all VOV processes that may be running on the server host and that may still be using the port. For example, you can use:
      % /usr/ucb/ps auxww | grep vov
      john   3732  0.2  1.5 2340 1876 pts/13   S 17:36:18  0:00 vovproxy -p acprose -f - -b
      john   3727  0.1  2.2 4816 2752 pts/13   S 17:36:16  0:01 vovsh -t /rtda/VOV/5.4.7/sun5/tcl/vtcl/vovresourced.tcl -p acprose
      ...
    2. Wait for the process to die on its own, or you can kill it, for example with vovkill.
      % vovkill pid
    3. Restart the server.
  5. You run the server as the Accelerator administrator user. Please check the ownership of the file security.tcl in the server configuration directory vnc.swd.

UNIX Taskers Don't Start

Accelerator normally relies on remote shell execution to start the taskers, using either rsh or ssh.
  • If using rsh try the following:
    % rsh host vovarch

    where host is the name of a machine on which there are problems starting a tasker.

    This command should return a platform dependent string and nothing else. Otherwise, there are problems with either with the remote execution permission or the shell start-up script.

  • If the error message is similar to "Permission denied", check the file .rhosts in your home directory. The file should contain a list of host names from which remote execution is allowed. See the manual pages for rsh and rhosts for details. You may have to work with your system administrators to find out if your network configuration allows remote execution.
  • If using ssh, perform the test above but use ssh instead of rsh. For more details about ssh see SSH Setup in the VOV Subsystem Administrator Guide.
  • If you get extraneous output from the above command, the problem is probably in your shell start-up script. If you are a C-shell user, check your ~/.cshrc file. The following are guidelines for a remote-execution-friendly .cshrc file:
    • Echo messages only if the calling shell is interactive. You can test if a shell is interactive by checking the existence of the variable prompt, which is defined for interactive shells. Example:
      # Fragment of .cshrc file.
      if ( $?prompt ) then
      echo "I am interactive"
      endif
    • Many .cshrc scripts exit early if they detect a non interactive shell. It is possible that the scripts exit before sourcing ~/.vovrc, which causes Accelerator to not be available in non-interactive shells. Compare the following fragments of .cshrc files and make sure the code in your file works properly:
      The following example will not work properly for non-interactive shells:
      if ( $?prompt ) exit
      source ~/.vovrc
      This example is correct, source .vovrc and then check the prompt variable:
      source ~/.vovrc
      if ( $?prompt ) exit
      This example is also correct:
      if ( $?prompt ) then
      # Define shell aliases
      ...
      endif
      source ~/.vovrc
    • Do not apply exec to a sub shell. This will cause the rsh command to hang.
      # Do not do this in a .cshrc file
      exec tcsh

License Violation

Accelerator is licensed by restricting the number of taskers. This is the number of all unique hosts that run taskers in all instances of Accelerator servers that use the same license.

You can find out the capacity of your license with the following command:
% rlmstat -avail

The file $VOVDIR/../../vnc/vnc.swd/taskers.tcl defines the list of hosts that are managed by the server. Make sure the number of tasker hosts is within the license capability.

Crash Recovery

In the event of a crash or failover, you can find a checklist of what to do on the System Recovery page.

This address can found using the command:
nc cmd vovbrowser -url /cgi/sysrecovery.cgi