if (getConfig().getBoolean("thread-block-detection")) {
blockDetectionTimer = new Timer(getName() + "-Thread-Blocking-Detection");
BlockingIODetectorTask blockingIODetectorTask = new BlockingIODetectorTask(this, Thread.currentThread());
blockDetectionTimer.scheduleAtFixedRate(blockingIODetectorTask, DETECTION_THRESHOLD, DETECTION_THRESHOLD);
}
<BUG>if (sigar != null) {
sigar = new Sigar();</BUG>
}
if (getConfig().getBoolean("monitor-database")) {
try {

if (getConfig().getBoolean("thread-block-detection")) {
blockDetectionTimer = new Timer(getName() + "-Thread-Blocking-Detection");
BlockingIODetectorTask blockingIODetectorTask = new BlockingIODetectorTask(this, Thread.currentThread());
blockDetectionTimer.scheduleAtFixedRate(blockingIODetectorTask, DETECTION_THRESHOLD, DETECTION_THRESHOLD);
}
if (getConfig().getBoolean("native-library")) {
sigar = new Sigar();
}
if (getConfig().getBoolean("monitor-database")) {
try {
