Jeff,

This issue was reported here <https://github.com/gocd/gocd/issues/2464> and
has been fixed <https://github.com/gocd/gocd/pull/2558> for 16.10, due
sometime this week.

For now, it's perfectly safe to ignore this exception in the agent logs —
the agent is attempting to parse an empty JSON object for its certificates
and failing on it, instead of gracefully handling an empty JSON response.

On Mon, Sep 19, 2016 at 10:59 AM Jeff <predato...@gmail.com> wrote:

> Using an exiting Ubuntu 16.04 VM running go-agent v16.9.0 I created an ESX
> VM template of the VM and am deploying more Go Agents from it.
>
> The go-agent won't start on some of the deployed VM's.  There doesn't seem
> to be any specific reason or error in the logs as it appears there are no
> errors in the logs, but the go-server doesn't see it.
>
> So I resort to doing 'apt-get purge go-agent' and then forcefully delete
> the /var/lib/go-agent folder before doing 'apt-get install go-agent'.
>
> Once I reinstall, restore the /etc/default/go-agent configuration and
> restart the agent it shows up on the go-server, but I then can't do
> anything with it such as assign an environment.  The following error is in
> the logs:
>
> 2016-09-16 16:19:36,186 [loopThread] ERROR
> go.agent.service.SslInfrastructureService:104 - [Agent Registration] There
> was a problem registering with the go server.
> *java.lang.StringIndexOutOfBoundsException: String index out of range: -4*
> *        at java.lang.String.charAt(String.java:658)*
>         at org.bouncycastle.util.encoders.Base64Encoder.decode(Unknown
> Source)
>         at org.bouncycastle.util.encoders.Base64.decode(Unknown Source)
>         at org.bouncycastle.util.io.pem.PemReader.loadObject(Unknown
> Source)
>         at org.bouncycastle.util.io.pem.PemReader.readPemObject(Unknown
> Source)
>         at
> com.thoughtworks.go.security.Registration.fromJson(Registration.java:43)
>         at
> com.thoughtworks.go.agent.service.SslInfrastructureService$RemoteRegistrationRequester.readResponse(SslInfrastructureService.java:186)
>         at
> com.thoughtworks.go.agent.service.SslInfrastructureService$RemoteRegistrationRequester.requestRegistration(SslInfrastructureService.java:178)
>         at
> com.thoughtworks.go.agent.service.SslInfrastructureService.register(SslInfrastructureService.java:102)
>         at
> com.thoughtworks.go.agent.service.SslInfrastructureService.registerIfNecessary(SslInfrastructureService.java:86)
>         at
> com.thoughtworks.go.agent.AgentController.rpcLoop(AgentController.java:181)
>         at
> com.thoughtworks.go.agent.AgentController.loop(AgentController.java:173)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:498)
>         at
> org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)
>         at
> org.springframework.scheduling.support.MethodInvokingRunnable.run(MethodInvokingRunnable.java:65)
>         at
> org.springframework.scheduling.timer.DelegatingTimerTask.run(DelegatingTimerTask.java:70)
>         at java.util.TimerThread.mainLoop(Timer.java:555)
>         at java.util.TimerThread.run(Timer.java:505)
> *2016-09-16 16:19:36,186 [loopThread] ERROR
> thoughtworks.go.agent.AgentController:192 - [Agent Loop] Error occurred
> during loop:*
> *java.lang.StringIndexOutOfBoundsException: String index out of range: -4*
>         at java.lang.String.charAt(String.java:658)
>         at org.bouncycastle.util.encoders.Base64Encoder.decode(Unknown
> Source)
>         at org.bouncycastle.util.encoders.Base64.decode(Unknown Source)
>         at org.bouncycastle.util.io.pem.PemReader.loadObject(Unknown
> Source)
>         at org.bouncycastle.util.io.pem.PemReader.readPemObject(Unknown
> Source)
>         at
> com.thoughtworks.go.security.Registration.fromJson(Registration.java:43)
>         at
> com.thoughtworks.go.agent.service.SslInfrastructureService$RemoteRegistrationRequester.readResponse(SslInfrastructureService.java:186)
>         at
> com.thoughtworks.go.agent.service.SslInfrastructureService$RemoteRegistrationRequester.requestRegistration(SslInfrastructureService.java:178)
>         at
> com.thoughtworks.go.agent.service.SslInfrastructureService.register(SslInfrastructureService.java:102)
>         at
> com.thoughtworks.go.agent.service.SslInfrastructureService.registerIfNecessary(SslInfrastructureService.java:86)
>         at
> com.thoughtworks.go.agent.AgentController.rpcLoop(AgentController.java:181)
>         at
> com.thoughtworks.go.agent.AgentController.loop(AgentController.java:173)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:498)
>         at
> org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)
>         at
> org.springframework.scheduling.support.MethodInvokingRunnable.run(MethodInvokingRunnable.java:65)
>         at
> org.springframework.scheduling.timer.DelegatingTimerTask.run(DelegatingTimerTask.java:70)
>         at java.util.TimerThread.mainLoop(Timer.java:555)
>         at java.util.TimerThread.run(Timer.java:505)
>
>
> If I go to the server, disable the agent, I can then assign the
> environment and re-enable the agent and it seems to work, but it is
> annoying that I have to do this.
>
> Is this normal behavior?  If not, anyone know why it does this?  Is there
> something maybe left over that relates to the old agent state that the
> 'apt-get purge' doesn't remove that I hadn't deleted yet?
>
> Thanks!
>
> --
> Jeff Vincent
> See my LinkedIn profile at:
> http://www.linkedin.com/in/rjeffreyvincent
>
> --
> You received this message because you are subscribed to the Google Groups
> "go-cd" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to go-cd+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"go-cd" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to go-cd+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to