This documentation is for older WSO2 products. View documentation for the latest release.
Page Comparison - Troubleshooting in Production Environments (v.7 vs v.8) - Clustering Guide 4.2.0 - WSO2 Documentation

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Operating system information** OS (kernel) version
    • Installed modules lists and their information
    • List of running tasks in the system
  • Memory information of the Java process** Java heap memory dump
    • Histogram of the heap
    • Objects waiting for finalization
    • Java heap summary. GC algo used, etc.
    • Statistics on permgen space of Java heap
  • Information about the running Carbon instance** Product name and version
    • Carbon framework version (This includes the patched version)
    • <PRODUCT_HOME>, <JAVA_HOME>
    • configuration files
    • log files
    • H2 database files
  • Thread dump
  • Checksum values of all the files found in the $CARBON_HOME

Viewing process threads in Solaris

 

This information is useful to know in situations when the database processes are not fully utilizing the CPU's threading capabilities. It gives you a better understanding on how 11g and 10g takes advantage of threading and how you can validate those queries from the system.

 

The following information provides insight on whether a Solaris process is parallelized and is taking advantage of the threading within the CPU.

 

  1. Open a command line in Solaris.
  2. Run prstat and have a look to the last column, labeled PROCESS/NLWPNLWP is a reference to the number of lightweight processes and are the number of threads the process is currently using with Solaris as there is a one-to-one mapping between lightweight processes and user threads. A single thread process will show 1 there while a multi-threaded one will show a larger number. See the following code block for an example.

    Code Block
      PID USERNAME  SIZE   RSS STATE  PRI NICE      TIME  CPU PROCESS/NLWP       
    ...
    12905 root     4472K 3640K cpu0    59    0   0:00:01 0.4% prstat/1
    18403 monitor   474M  245M run     59   17   1:01:28 9.1% java/103
     4102 oracle     12G   12G run     59    0   0:00:12 4.5% oracle/1

    If you observe the PROCESS/NLWP value in the example above, you can identify that prstat and oracle are single thread processes, while java is a multi-threaded process.

  3. Alternatively, you can analyze individual thread activity of a multi-threaded process by using the -L and -p options, like prstat -L -p pidThis displays a line for each thread sorted by CPU activity. In that case, the last column is labeled PROCESS/LWPID, where LWPID is the thread ID. If more than one thread shows significant activity, your process is actively taking advantage of multi-threading.