"MSGS0058E: Unable to start the JMS Server as WebSphere Embedded Messaging has not been installed" error message received after installing V5.0 with embedded messaging
 Technote (troubleshooting)
 
Problem(Abstract)
After Installing IBM® WebSphere® Application Server V5.0 on Solaris™ 8 with embedded messaging, the following error issued when starting the Application Server:

MSGS0058E: Unable to start the JMS Server as WebSphere Embedded Messaging has not been installed
 
Cause
The Solaris™ operating system kernel parameters are not configured correctly.
 
Resolving the problem
The following operating system kernel parameters were reviewed and corrected, after which V5.0 with embedded messaging was successfully installed. These installation tips are found in the installation guide for MQ Series.
No errors were logged to the log.txt file concerning this problem.  The best log to review when debugging embedded MQ installation problems is the /tmp/mq_prereq.log.

The shmmax parameter should be equal to half of the physical memory no matter what your physical memory is.  

Solaris file descriptors (ulimit)
Description: Specifies the number of open files permitted. If the value of this parameter is too low, a Too many files open error displays in the WebSphere Application Server stderr.log.
How to view or set: Check the UNIX reference pages on ulimit for the syntax of different shells. For KornShell (ksh) use the ulimit -n 1024 command. Use the ulimit -a command to display the current values for all limitations on system resources.
Default value: None
Recommended value: 2000


Solaris TCP_TIME_WAIT_INTERVAL
Description: Notifies the TCP/IP how long to keep closed connection control blocks. After the applications complete the TCP/IP connection, the control blocks are kept for the specified time. When high connection rates occur, a large backlog of the TCP/IP connections accumulate and can slow server performance. The server can stall during certain peak periods. If the server stalls, the netstat command shows that many of the sockets opened to the HTTP server are in the CLOSE_WAIT or FIN_WAIT_2 state. Visible delays can occur for up to four minutes, during which time the server does not send any responses, but CPU utilization stays high, with all of the activity in system processes.
How to view or set: Use the get command to determine the current interval and the set command to specify an interval of 60 seconds. For example:
ndd -get /dev/tcp tcp_time_wait_interval    
ndd -set /dev/tcp tcp_time_wait_interval 60000
Default value: The Solaris default time wait interval is 2400000 milliseconds.
Recommended value: 60000 milliseconds.


Solaris TCP_FIN_WAIT_2_FLUSH_INTERVAL
Description: Specifies the timer interval prohibiting a connection in FIN_WAIT_2 to remain in that state. When high connection rates occur, a large backlog of TCP/IP connections accumulate and can slow server performance. The server can stall during peak periods. If the server stalls, using the netstat command shows that many of the sockets opened to the HTTP server are in CLOSE_WAIT or FIN_WAIT_2 state. Visible delays can occur for up to four minutes, during which time the server does not send any responses, but CPU utilization stays high, with all of the activity in system processes.
How to view and set: You can set the current interval to 67.5 seconds by using the following commands:
ndd -get /dev/tcp tcp_fin_wait_2_flush_interval
ndd -set /dev/tcp tcp_fin_wait_2_flush_interval 67500
Default value: The Solaris default is 675000.
Recommended value: 67500


Solaris TCP_KEEPALIVE_INTERVAL
Description: Specifies the timer interval prohibiting an active connection from staying in ESTABLISHED state if one of the peers never responds.
How to view or set: Use the following commands to determine the current value or to set the value to 300 seconds:
ndd -get /dev/tcp tcp_keepalive_interval ndd -set /dev/tcp tcp_keepalive_interval 300000
Default value: 7200000
Recommended value: 300000
Solaris kernel semsys:seminfo_semume
Description: Limits the Max Semaphore undo entries per process. Because this setting specifies a maximum value, the parameter does not cause use of additional memory unless it is needed.
How to view or set: This value is displayed as SEMUME if the /usr/sbin/sysdef command is run. There can be an entry in the /etc/system file for this tuning parameter. Set this parameter through the /etc/system entry as follows:
set semsys:seminfo_semume = 1024
Default value: 10
Recommended value: None


Solaris kernel semsys:seminfo_semopm
Description: Displays as SEMOPM if the /usr/sbin/sysdef command is run. An entry in the /etc/system file can exist for this tuning parameter.
How to view or set: Set this parameter through the /etc/system entry as follows:
semsys:seminfo_semopm = 200
Default value: None
Recommended value: 16384


Java Virtual machine virtual page size
Description: Provides the current operating system characteristics of the process executable when you set the virtual page size.
How to view or set: Set the virtual page size with the command chatr +pi64M +pd64M /opt/WebSphere/AppServer/java/bin/PA_RISC2.0/native_threads/java. Where 64M stands for 64MB.
Default value: None
Recommended value: 64MB


The MQ Quick Beginnings link below will address all platforms, including Solaris
 
Related information
WSAS MQ Library
 
 
Cross Reference information
Segment Product Component Platform Version Edition
Application Servers Runtimes for Java Technology Java SDK
 
 


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > Install
Operating system(s): Solaris
Software version: 5.0
Software edition:
Reference #: 1166343
IBM Group: Software Group
Modified date: Sep 10, 2004