rundeck / rundeck

Enable Self-Service Operations: Give specific users access to your existing tools, services, and scripts

Home Page:http://rundeck.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

rd projects archives export is failing with error "java.io.EOFException: \n not found" #550

monsoft opened this issue · comments

Hi,

My Rundeck detail

Rundeck version: 5.1.1
install type: rpm
OS Name/version: redhat 9.3
DB Type/version: mysql

I have a two Rundeck servers and on both Rundeck servers I can't run "rd projects archives export". Each time I run it I'm ending up with error:

# rd projects archives export -p TEST --file /tmp/test.zip
# Export Archive for project: TEST
# Contents: null
# Begin asynchronous request...
java.io.EOFException: \n not found: limit=0 content=…
	at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.kt:332)
	at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.kt:105)
	at okhttp3.internal.http1.Http1ExchangeCodec$ChunkedSource.readChunkSize(Http1ExchangeCodec.kt:434)
	at okhttp3.internal.http1.Http1ExchangeCodec$ChunkedSource.read(Http1ExchangeCodec.kt:416)
	at okhttp3.internal.connection.Exchange$ResponseBodySource.read(Exchange.kt:281)
	at okio.RealBufferedSource.readAll(RealBufferedSource.kt:284)
	at retrofit2.Utils.buffer(Utils.java:323)
	at retrofit2.OkHttpCall.parseResponse(OkHttpCall.java:229)
	at retrofit2.OkHttpCall.execute(OkHttpCall.java:204)
	at org.rundeck.client.util.Client.checkError(Client.java:132)
	at org.rundeck.client.util.Client.apiCall(Client.java:574)
	at org.rundeck.client.tool.commands.projects.Archives.loopStatus(Archives.java:300)
	at org.rundeck.client.tool.commands.projects.Archives.export(Archives.java:278)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at picocli.CommandLine.executeUserObject(CommandLine.java:1972)
	at picocli.CommandLine.access$1300(CommandLine.java:145)
	at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2358)
	at picocli.CommandLine$RunLast.handle(CommandLine.java:2352)
	at picocli.CommandLine$RunLast.handle(CommandLine.java:2314)
	at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
	at picocli.CommandLine$RunLast.execute(CommandLine.java:2316)
	at picocli.CommandLine.execute(CommandLine.java:2078)
	at org.rundeck.client.tool.Main.main(Main.java:155)

Both servers run as testing now, and use low configuration 2vCPU with 4GB of RAM. Servers have very light usage for now as they will be put in production as replacement of older rundeck servers which we use.

After restarting Rundeck service on one of them, I was able to successfully run project backup.

Hi @monsoft,

Just tried to reproduce your issue unsuccessfully. Which RD CLI version are you using? The latest is 2.0.8.

Thanks!

This same issue is with newest Rundeck after running for more than month:
`
ps -p 382654 -o etime

ELAPSED
33-00:17:17
`

java.io.EOFException: \n not found: limit=0 content=… at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.kt:332) at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.kt:105) at okhttp3.internal.http1.Http1ExchangeCodec$ChunkedSource.readChunkSize(Http1ExchangeCodec.kt:434) at okhttp3.internal.http1.Http1ExchangeCodec$ChunkedSource.read(Http1ExchangeCodec.kt:416) at okhttp3.internal.connection.Exchange$ResponseBodySource.read(Exchange.kt:281) at okio.RealBufferedSource.readAll(RealBufferedSource.kt:284) at retrofit2.Utils.buffer(Utils.java:323) at retrofit2.OkHttpCall.parseResponse(OkHttpCall.java:229) at retrofit2.OkHttpCall.execute(OkHttpCall.java:204) at org.rundeck.client.util.Client.checkError(Client.java:132) at org.rundeck.client.util.Client.apiCall(Client.java:574) at org.rundeck.client.tool.commands.projects.Archives.loopStatus(Archives.java:300) at org.rundeck.client.tool.commands.projects.Archives.export(Archives.java:278) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at picocli.CommandLine.executeUserObject(CommandLine.java:1972) at picocli.CommandLine.access$1300(CommandLine.java:145) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2358) at picocli.CommandLine$RunLast.handle(CommandLine.java:2352) at picocli.CommandLine$RunLast.handle(CommandLine.java:2314) at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179) at picocli.CommandLine$RunLast.execute(CommandLine.java:2316) at picocli.CommandLine.execute(CommandLine.java:2078) at org.rundeck.client.tool.Main.main(Main.java:155)

For me it's a bug as this functionality works right after Rundeck start, and stop working after some time.