Reset Search
 

 

Article

SMI agent not starting.

« Go Back

Information

 
TitleSMI agent not starting.
Symptoms
  • BNA14.0.1 is installed to provide functional SMI layer for a critical production product.
Environment
  • Network Advisor 14.0.1
Cause
Java Virtual Machine (JVM) termination was found in dcmsvc log.
This can affect CIMOM operation as it requires the main BNA service for operation.
Two possible causes are being fixed with code changes:
 
1.) The problem points to collectorCache,get(id) which is a ConcurrentHashMap.
  • Since the reads do not acquire a lock, there is a possibility that the element is deleted before it could be retrieved from the map.
  • In most cases it would end up returning NULL, however, java.util.concurrent package widely uses the sun.misc.
  • This is unsafe which allows for a direct memory access and hence an invalid memory mapping (due to a put operation)

2.) The ID that is passed from rtCollectorHeartBeatMap (which is also a ConcurrentHashMap) might but be NULL.
  • Though in most cases this would result in a NPE, there are some cases wherein an access violation occurs instead.
  • This occurs when the JIT compiler assumes (after executing the segment of code many times) that the variable (id in this case) can never be NULL and simply omits the null check.
  • Once the access violation occurs, the JIT puts back the NULL check (which could be the reason why this defect does not occur again).
Resolution
Upgrade to BNA 14.0.2.
 
Additional notes
This defect can affect the operation of CIMOM, as it is forced to restart when the Main BNA Server restarts due to the crash.

Perform the following POA:
1. Take the backup of dcmsvc.conf in <BNA 14.0.1 installation>\conf

2. Stop BNA services

3. Open the dcmsvc.conf file in <BNA 14.0.1 installation>\conf, you will see below lines
 
# AWT check disable. To add exception of Display, incase X display is killed or not started.
wrapper.java.additional.39=-Djava.awt.headless=true
wrapper.java.additional.40=-XX:+UseStringDeduplication

4. Add the below line 41 after the existing lines and save the change. It should look like below.
# AWT check disable. To add exception of Display, incase X display is killed or not started.
wrapper.java.additional.39=-Djava.awt.headless=true
wrapper.java.additional.40=-XX:+UseStringDeduplication
wrapper.java.additional.41=-XX:CompileCommand=exclude,com.brocade.dcm.perfmon.ip.server.ejb3.PerformanceMonitorService$CollectionScheduler::run

5. Start BNA services.

If the issue persists, please perform the following actions:

1. Open the Server Management Console and select Configure SMI Agent.

2. Select the CIMOM tab, and change the Log Level from INFO to ALL.

3. Attempt to start/restart SMI services and collect a new BNA supportsave with a partial database.

4. Return the CIMOM Log Level to INFO.

The new BNA supportsave will then need to be provided for review.
In addition to the data, the following info will be needed if the issue persists.

Feedback

 

Was this article helpful?


   

Feedback

Please tell us how we can make this article more useful.

Characters Remaining: 255