Hello,
When I try to use ./jobscheduler.sh status or ./jobscheduler.sh stop i have following error.
Error Z-JAVA-105 Java exception java.lang.RuntimeException: Plugin com.sos.scheduler.engine.plugins.newwebservice.NewWebServicePlugin cannot be prepared: java.lang.RuntimeException: Binding to TCP port /0.0.0.0:40444 failed. Port is possibly in use and not available. Switch on DEBUG-level logging forakka.io.TcpListenerto log the cause. CommandFailed(Bind(Actor[akka://Engine/user/EngineWebServer-http-0.0.0.0:40444#-547973921],/0.0.0.0:40444,100,List(),Some(ServerSettings(spray-can/1.3.4,false,1,Timeouts(1441 minutes,1 day,2..., method=CallVoidMethodA []
./jobscheduler.sh start works
JOC and Old web interfance works normally except to stop properly the scheduler. I can only use "abort immediatly"
I tried to modify log_level to debug1 (and after to debug9) and restarted but no more information in log about the error.
I am on linux-x64 1.11.1 version. I have an other old instance in separate server on 1.11-RC6 without this issue.
I added my scheduler.xml in attachment. Tell me if you need other information or configuration file.
thanks
Now without action on my side (but after 24h of executions) I can do a ./jobscheduler.sh status whitout error but i have still TCP error in log (i don't know if its linked)
.17 09:04:02.479 com.sos.scheduler.engine.common.scalautil.xmls.ScalaStax [INFO ] - Using XMLInputFactory class com.sun.xml.internal.stream.XMLInputFactoryImpl
.17 09:04:03.215 akka.io.TcpListener [ERROR] - Bind failed for TCP channel on endpoint [/0.0.0.0:40444]
java.net.BindException: Address already in use
No issue to launch job from this instance (or launch remote from other jobscheduler) and web console is OK but i don't know the impact.
Last edit: Clément CHOQUET 2017-05-17
You have another running JobScheduler Instance
I found only one instance on each of my 3 jobschedulers servers.
/opt/ve/jobscheduler/veso3wklx04/logs # ps -ef | grep jobscheduler
1014 5362 1 0 May15 ? 00:06:45 /usr/bin/java -Xms128m -Xmx512m -Xss4000k -Djetty.logging.dir=/opt/ve/jobscheduler/logs -Djetty.home=/opt/ve/jobscheduler/jetty -Djetty.base=/opt/ve/jobscheduler -Djava.io.tmpdir=/opt/ve/jobscheduler/temp -jar /opt/ve/jobscheduler/jetty/start.jar jetty.state=/opt/ve/jobscheduler/joc.state jetty-logging.xml jetty-started.xml start-log-file=/opt/ve/jobscheduler/logs/start.log
root 7454 1135 0 11:42 pts/4 00:00:00 grep jobscheduler
1104 14713 1 3 May16 ? 01:04:43 /opt/ve/jobscheduler/veso3wklx04/bin/scheduler -service -id=veso3wklx04 -sos.ini=/opt/ve/jobscheduler/veso3wklx04/config/sos.ini -ini=/opt/ve/jobscheduler/veso3wklx04/config/factory.ini -config=/opt/ve/jobscheduler/veso3wklx04/config/scheduler.xml -param=/opt/ve/jobscheduler/veso3wklx04 -cd=/opt/ve/jobscheduler/veso3wklx04 -include-path=/opt/ve/jobscheduler/veso3wklx04 -pid-file=/opt/ve/jobscheduler/veso3wklx04/logs/scheduler.pid -env=LD_LIBRARY_PATH=
/opt/ve/jobscheduler/veso3wklx05/logs # ps -ef | grep scheduler
1104 12367 1 0 09:01 ? 00:00:55 /opt/ve/jobscheduler/veso3wklx05/bin/scheduler -service -id=veso3wklx05 -sos.ini=/opt/ve/jobscheduler/veso3wklx05/config/sos.ini -ini=/opt/ve/jobscheduler/veso3wklx05/config/factory.ini -config=/opt/ve/jobscheduler/veso3wklx05/config/scheduler.xml -param=/opt/ve/jobscheduler/veso3wklx05 -cd=/opt/ve/jobscheduler/veso3wklx05 -include-path=/opt/ve/jobscheduler/veso3wklx05 -pid-file=/opt/ve/jobscheduler/veso3wklx05/logs/scheduler.pid -env=LD_LIBRARY_PATH=
/opt/ve/jobscheduler/veso3wklx06/logs # ps -ef | grep jobscheduler
1104 7637 17045 0 11:45 ? 00:00:00 /bin/sh -c "/vol/applog/jobscheduler/veso3wklx06/tmp/sos.YWO3sV"
1104 7644 7637 0 11:45 ? 00:00:00 /bin/sh /vol/applog/jobscheduler/veso3wklx06/tmp/sos.YWO3sV
root 8433 17861 0 11:45 pts/2 00:00:00 grep jobscheduler
1104 17045 1 1 May16 ? 00:26:46 /opt/ve/jobscheduler/veso3wklx06/bin/scheduler -service -id=veso3wklx06 -sos.ini=/opt/ve/jobscheduler/veso3wklx06/config/sos.ini -ini=/opt/ve/jobscheduler/veso3wklx06/config/factory.ini -config=/opt/ve/jobscheduler/veso3wklx06/config/scheduler.xml -param=/opt/ve/jobscheduler/veso3wklx06 -cd=/opt/ve/jobscheduler/veso3wklx06 -include-path=/opt/ve/jobscheduler/veso3wklx06 -pid-file=/opt/ve/jobscheduler/veso3wklx06/logs/scheduler.pid -env=LD_LIBRARY_PATH=
For information,
When i remove "http port=40444" in scheduler.xml I can use ./jobscheduler.sh status but the instance is unreacheable from JOC Cockpit installed on other server.
If I add http_port=40444 , instance reacheable from JOC cockpit of other server but when i use jobscheduler.sh status i have the error
"Plugin com.sos.scheduler.engine.plugins.newwebservice.NewWebServicePlugin cannot be prepared: java.lang.RuntimeException: Binding to TCP port /0.0.0.0:40444 failed. Port is possibly in use and not available. Switch on DEBUG-level logging for
akka.io.TcpListenerto log the cause. CommandFailed(Bind(Actor[akka://Engine/user/EngineWebServer-http-0.0.0.0:40444#-375159246],/0.0.0.0:40444,100,List(),Some(ServerSettings(spray-can/1.3.4,false,1,Timeouts(1441 minutes,1 day,2..., method=CallVoidMethodA []"in fact i used service jobscheduler status not jobscheduler.sh status
And my init.d/jobscheduler was not in the good version.
Hi Clément,
If you have a JobScheduler version 1.11.x then the http_port is required for the startscript when calling commands such as "status" or "terminate". Otherwise you get error message
I'm confused that you wrote that you can use ./jobscheduler.sh status when you removed http_port.
Please post the scheduler.xml
Best regards,
Oliver
Hello,
In fact i didn't use jobscheduler.sh directly but service jobscheduler (start / status ) and jobscheduler script in my /etc/init.d/ was in previous jobscheduler version.
Issue solved after upgrade my /init.d/jobscheduler
Thanks a lot.
Nice to hear. The scheduler.xml looks good too. I thougth that there is an old plugin for Jetty which use the same port but it isn't.