High CPU usage with DSC

cpuprocesstop

Since last week that I run an apt-get upgrade on my machine,bI observe a very high and periodically CPU usage for perl process

21392 112 39 19 10332 7552 3592 R 53.0  1.5 0:01.63 perl

  426 root      20   0    5088   2476   2256 S  0.0  0.5   0:00.33  `- cron
24709 root      20   0    6484   2560   2200 S  0.0  0.5   0:00.03      `- cron
24713 112       20   0    1900   1100   1024 S  0.0  0.2   0:00.01          `- sh
24714 112       20   0    4604   2640   2476 S  0.0  0.5   0:00.02              `- copy-local-and-
24719 112       20   0    1900   1204   1128 S  0.0  0.2   0:00.01                  `- refile-and-grok
24725 112       20   0    3536   1516   1436 S  0.0  0.3   0:00.00                      `- xargs
24726 112       20   0    1900   1076   1004 S  0.0  0.2   0:00.01                          `- refile-and-grok
24728 112       39  19   18592  15008   4996 R 91.2  3.0   0:06.70                              `- perl

The process ID changes every time the perl process comes up.

UPDATE

root@raspberrypi:/var/ftp# ps -ef | grep perl
112      25971 25969 91 13:42 ?        00:00:20 perl /usr/share/dsc-statistics-presenter/dsc-xml-extractor
root     25981 22322  0 13:42 pts/0    00:00:00 grep perl

That process always run since I have my server up and running. It seems that got that high CPU usage since I updgrade perl, per-base and perl modules from 5.20.2-3+deb8u5 to 5.20.2-3+deb8u6. I'm trying to rollback but I m not able to do it

root@raspberrypi:/var/ftp# apt-get install perl=5.20.2-3+deb8u5
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Version '5.20.2-3+deb8u5' for 'perl' was not found
root@raspberrypi:/var/ftp#

Anyone can help me to identify the reason of such high cpu usage or roll-back the upgrade done?

Best Answer

DSC: A DNS Statistics Collector

The program is written in perl, but this isn't a Perl problem. You're using DSC. In order to solve this we would have to know what version of DSC you're using. My suggestion is to upgrade to a newer version of DSC.


You may be experiencing the bug fixed on 2015-10-09

A user reported that when a TCP segment containing only the DNS message length is received after the message it references (i.e., out-of-order), then DSC goes into a 100% CPU loop. Confirmed that the code doesn't work correctly when dnslen comes out-of-order, but I wasn't able to easily reproduce the 100% CPU bug.

Related Question