-
Bug
-
Resolution: Cannot Reproduce
-
Minor
Starting an agent (both via ssh and from the command line) on a FreeBSD-12/arm64 agent sends the slave in an infinite loop for over five minutes. If started over ssh, jenkins will try launching a second (and third and so on) copy of the agent to the same result.
For some reason it did connect once, but I can't reproduce the correct behaviour. I've tried deleting and recreating the host, no changes.
Attaching stdout, stderr, remoting log and two thread dumps taken a few minutes after startup.
It would seem that the slave is looping forever in hudson.remoting.ClassFilter$RegExpClassFilter.add - maybe the fact that it's running on an interpreter-mode JVM makes it super inefficient at parsing regexes? Either way, it's been running at 100% CPU for over 15 minutes now and Jenkins still doesn't see the connection as up
I'm not too surprised that class loading, filtering, and pattern matching would be slow on an interpreted-only JVM. Those can be some intensive operations. Commonly the agent and the operations it needs to perform can be resource intensive. If you're running into that much resource issues just getting it up and going, it may be difficult for it perform the builds, particularly if other plugins are configured for the job.
I think your best approach is to figure out how to speed up your processes. If you can get away from an interpreted-only JVM, that would be a good step. Otherwise you may try throwing hardware or other resources at to get it to run faster.