Skip to content

Core Engine (Galactica) threads monitoring ​

In some cases, you may need more information about the behavior of the Indexima Core Engine (Galactica).

In order to do this you can retrieve a "thread dump" of the Galactica instance.

You can retrieve a thread dump like this:

  • Log in on a master with the same user you used to run Indexima
  • Use the jps tool to determine the pid of the Galactica instance (NodeServer)
bash
/usr/jdk64/jdk1.8.0_112/bin/jps

It will return the following list:

bash
9536 NodeServer
17457 GaYarnLauncher
6984 Jps
18392 NodeServer
10381 Visualdoop
8911 GaYarnLauncher

If you have many NodeServer instances, you can search for the one you want to investigate by doing a pstree and looking for the applicationId.

  • When you have the pid of the correct NodeServer :
bash
/usr/jdk64/jdk1.8.0_112/bin/jstack (PID of NodeServer)
  • You can now redirect the output into a file.

How to get a "thread dump" at regular intervals ​

On Hortonworks :

  • Create a directory.
  • Launch the thread dump every 300 seconds, 10 times.
bash
for I in `seq 0 10` ; do /usr/jdk64/jdk1.8.0_112/bin/jstack (PID of NodeServer) > threaddump.$(date +"%Y-%m-%d_%H:%M:%S").txt ; sleep 300 ; done

WARNING

This command uses a lot of processing power so be careful not to execute this command too quickly.