jBPM 7.23 consumes over 200% CPU in idle state

23 views
Skip to first unread message

Yuriy Petrov

unread,
Jul 11, 2019, 11:03:23 AM7/11/19
to jBPM Usage
I have jBPM 7.23 - busienss central and kie server running on the same wildfly.

There is only one project in BC, nothing is built, nothing is deployed on kie server, nobody is loged in to BC. So basically jBPM is in idle state. But "top" shows that jBPM's JVM consumes over 200% of CPU.

Is there any way to learn what jBPM is doing?

Thank you,
Yuriy

Alex Porcelli

unread,
Jul 11, 2019, 11:04:26 AM7/11/19
to Yuriy Petrov, jBPM Usage
Is this BC or kie-server? What OS?

Regards,
___________________
Alex Porcelli
F: +1 (978) 844-8695
http://porcelli.me
> --
> You received this message because you are subscribed to the Google Groups "jBPM Usage" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to jbpm-usage+...@googlegroups.com.
> To post to this group, send email to jbpm-...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-usage/1a3330ac-aefc-4d54-b9fb-5755dd0e22a6%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

Yuriy Petrov

unread,
Jul 11, 2019, 11:06:21 AM7/11/19
to jBPM Usage
Both - it's "jbpm-server-7.23.0.Final-dist.zip".

OS - OpenSUSE Leap 15.0 x86_64.


On Thursday, July 11, 2019 at 9:04:26 AM UTC-6, Alex Porcelli wrote:
Is this BC or kie-server? What OS?

Regards,
___________________
Alex Porcelli
F: +1 (978) 844-8695
http://porcelli.me

On Thu, Jul 11, 2019 at 11:03 AM Yuriy Petrov <mcpe...@gmail.com> wrote:
>
> I have jBPM 7.23 - busienss central and kie server running on the same wildfly.
>
> There is only one project in BC, nothing is built, nothing is deployed on kie server, nobody is loged in to BC. So basically jBPM is in idle state. But "top" shows that jBPM's JVM consumes over 200% of CPU.
>
> Is there any way to learn what jBPM is doing?
>
> Thank you,
> Yuriy
>
> --
> You received this message because you are subscribed to the Google Groups "jBPM Usage" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to jbpm-...@googlegroups.com.

Alex Porcelli

unread,
Jul 11, 2019, 11:08:23 AM7/11/19
to Yuriy Petrov, jBPM Usage
We'd need to know the CPU/RAM per deploy unit.

What Java version?

Regards,
___________________
Alex Porcelli
F: +1 (978) 844-8695
http://porcelli.me

> To unsubscribe from this group and stop receiving emails from it, send an email to jbpm-usage+...@googlegroups.com.
> To post to this group, send email to jbpm-...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-usage/db11929b-b7e9-4a2b-add9-6108981226e5%40googlegroups.com.

Yuriy Petrov

unread,
Jul 11, 2019, 11:13:57 AM7/11/19
to jBPM Usage
jBPM is running on physical box (not VM).
Box has 8 cores.
RAM - I've tweaked bin/standalone.conf to pass following to JVM:
JAVA_OPTS="-Xms64m -Xmx4096m -XX:MetaspaceSize=512M -XX:MaxMetaspaceSize=1024m -Djava.net.preferIPv4Stack=true"

I tried to increase logging details level by editing stanadlone.xml, but looks like wildfly doesn't catch config changes on fly. (I'm quite new to wildfly, may be there are ways to change logging level on alive server but I don't know how to do this. Yet ;) )

Yuriy Petrov

unread,
Jul 11, 2019, 11:14:40 AM7/11/19
to jBPM Usage
Oh!
Java:
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

Yuriy Petrov

unread,
Jul 11, 2019, 12:25:25 PM7/11/19
to jBPM Usage
Well, here is the update.

Prehistory:
jBPM has bees started yesterday around noon. Big drools project (9K+ guided rules) has been imported, I think that indexing took about an hour or less. Around 18:00 yesterday jBPM has been restarted, surprisingly indexing began again. The top CPU usage reached 700%. Since that time I didn't touch jBPM - no restart, no Business Central logins.
Today I've noticed that jBPM still actively does something - over 200% CPU utilization.

Now the update.
With jboss cli I've changed log level of root logger to DEBUG and server.log shows a tons of activities related to indexing:
...
2019-07-11 10:10:33,079 DEBUG [org.uberfire.ext.metadata.io.IndexerDispatcher] (Thread-171) Processing event [NewFileEvent [file=/src/main/resources/com/blah/qerules/C0427.rdslr]] for indexer [id=org.drools.workbench.screens.guided.rule.backend.server.indexing.GuidedRuleDslrFileIndexer].
2019-07-11 10:10:33,090 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/src/main/resources/com/blah/qerules/C0427.rdslr
2019-07-11 10:10:33,111 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/src/main/resources/com/blah/qerules/C0427.rdslr
2019-07-11 10:10:33,133 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/pom.xml
2019-07-11 10:10:33,136 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/src/main/resources/com/blah/qerules/C0427.rdslr
2019-07-11 10:10:33,136 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/pom.xml
2019-07-11 10:10:33,136 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/src/main/resources/com/blah/qerules/C0427.rdslr
2019-07-11 10:10:33,157 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/src/main/resources/com/blah/qerules/C0427.rdslr
2019-07-11 10:10:33,157 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/src/main/resources/META-INF/kmodule.xml
2019-07-11 10:10:33,157 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/
2019-07-11 10:10:33,157 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/src/main/resources/com/blah/qerules/C0427.rdslr
2019-07-11 10:10:33,168 DEBUG [org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider] (Thread-171) Accessing uri default://feature/newquirks@MySpace/qerules/src/main/resources/com/equian/hands2/qerules
...

The package com/blah/qerules contains over 9K guided rules, C0427.rdslr is just one of them, server.log is full of the chunks like the one above, just rule file names are different. 

Is it normal? (I guess it's not)

Are there any ways to fix this?

Thank you,
Yuriy

Arif Mohammed

unread,
Jul 11, 2019, 12:29:54 PM7/11/19
to jBPM Usage
Me too having the same issue but its with previous version (7.22.0) In my case it silently kills the Wildfly instance. I have to keep restarting the server.

I am also having the same setup with one Business Central and one Kie Server deployed on to the same One wildfly instance and there is only one project with 3 business processes and one simple business rule. I will send my environment details in couple of mins. It would be great if we have some documentation which talks about fine tuning.

Alex Porcelli

unread,
Jul 11, 2019, 3:18:09 PM7/11/19
to Yuriy Petrov, jBPM Usage
Likely to have something stale... I got your problem, but I'm not sure
if BC is the right place to have 9k+ rules, any IDE would freeze with
a similar situation. I'd try to increase dramatically the RAM (maybe
10-12gb?).
> --
> You received this message because you are subscribed to the Google Groups "jBPM Usage" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to jbpm-usage+...@googlegroups.com.
> To post to this group, send email to jbpm-...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-usage/77c09041-b74a-4229-abed-a6c94310d896%40googlegroups.com.

Yuriy Petrov

unread,
Jul 11, 2019, 4:44:47 PM7/11/19
to jBPM Usage
The project itself is developed in eclipse. The development, testing, packaging goes well without annoying me with big response time of IDE on mouse click or similar. The only visible delay happens in testing: when I run 58K+ test facts through Drools with my these 9K+ rules - it takes about 20 minutes to initialize Drools when 1st fact is inserted into working memory and all rules are fired. The following facts fly like bullet.

As per now the only thing that I need from BC is to give some trained end users an ability to author DSL-based rules with BC's [relatively] user friendly guided rule editor. That's all I need from BC. I don't need BC to build the project, I don't need BC to run rules. Just the editor for DSL-based rules.

By the way, I've increased JVM max heap size to 10G and watch the server.log and I see there
14:18:41,357 INFO  [org.drools.compiler.kie.builder.impl.KieRepositoryImpl] (Thread-172) KieModule was added: MemoryKieModule[releaseId=com.blah:blah:1.0.0-SNAPSHOT]

Does it mean that the project is built automatically?
> To unsubscribe from this group and stop receiving emails from it, send an email to jbpm-...@googlegroups.com.

Alex Porcelli

unread,
Jul 11, 2019, 4:52:46 PM7/11/19
to Yuriy Petrov, jBPM Usage
Yes, projects are always automatically built on every change.

You can disable set the environment variable
org.kie.build.disable-project-explorer=true

Regards,
___________________
Alex Porcelli
F: +1 (978) 844-8695
http://porcelli.me
> To unsubscribe from this group and stop receiving emails from it, send an email to jbpm-usage+...@googlegroups.com.
> To post to this group, send email to jbpm-...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/jbpm-usage/400867c6-c6a1-467b-b095-74ba676d0d3b%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages