Apt proxy problems downloading large files - Sonatype Nexus Repository - Sonatype Community

Apt proxy problems downloading large files

post by rol.N on Jul 4, 2025

Hi,

I have a containerized Nexus Repository with 3 HA Nodes running various apt proxy repos connected to archive.ubuntu.com.

As soon as I want to install packages with large files like linux-firmware, flightgear-data-base I get an error:

2025-07-04 06:41:24,807+0000 WARN  [qtp245867715-70] *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Failure servicing: GET /repository/apt-proxy-noble/pool/universe/f/flightgear-data/flightgear-data-base_2020.3.18%2bdfsg-1_all.deb
org.eclipse.jetty.io.EofException: null
        at org.eclipse.jetty.io.SocketChannelEndPoint.flush(SocketChannelEndPoint.java:118)
        at org.eclipse.jetty.io.ssl.SslConnection.networkFlush(SslConnection.java:499)
        at org.eclipse.jetty.io.ssl.SslConnection$SslEndPoint.flush(SslConnection.java:1134)
        at org.eclipse.jetty.io.WriteFlusher.flush(WriteFlusher.java:422)
        at org.eclipse.jetty.io.WriteFlusher.write(WriteFlusher.java:275)
        at org.eclipse.jetty.io.WriteFlusher.write(WriteFlusher.java:254)
        at org.eclipse.jetty.io.AbstractEndPoint.write(AbstractEndPoint.java:368)
        at org.eclipse.jetty.server.internal.HttpConnection$SendCallback.process(HttpConnection.java:859)
        at org.eclipse.jetty.util.IteratingCallback.processing(IteratingCallback.java:262)
        at org.eclipse.jetty.util.IteratingCallback.iterate(IteratingCallback.java:243)
        at org.eclipse.jetty.server.internal.HttpConnection$HttpStreamOverHTTP1.send(HttpConnection.java:1440)
        at org.eclipse.jetty.server.HttpStream$Wrapper.send(HttpStream.java:185)
        at org.eclipse.jetty.server.HttpStream$Wrapper.send(HttpStream.java:185)
        at org.eclipse.jetty.ee8.nested.SessionHandler$SessionStreamWrapper.send(SessionHandler.java:113)
        at org.eclipse.jetty.server.internal.HttpChannelState$ChannelResponse.write(HttpChannelState.java:1316)
        at org.eclipse.jetty.server.Response$Wrapper.write(Response.java:768)
        at org.eclipse.jetty.server.handler.ContextResponse.write(ContextResponse.java:56)
        at org.eclipse.jetty.ee8.nested.HttpChannel.send(HttpChannelState.java:833)
        at org.eclipse.jetty.ee8.nested.HttpChannel.sendResponse(HttpChannelState.java:821)
        at org.eclipse.jetty.ee8.nested.HttpChannel.write(HttpChannelState.java:887)
        at org.eclipse.jetty.ee8.nested.HttpOutput.channelWrite(HttpOutput.java:294)
        at org.eclipse.jetty.ee8.nested.HttpOutput.channelWrite(HttpOutput.java:281)
        at org.eclipse.jetty.ee8.nested.HttpOutput.write(HttpOutput.java:753)
        at com.sonatype.analytics.internal.filter.CountingServletOutputStream.write(CountingServletOutputStream.java:35)
        at com.google.common.io.ByteStreams.copy(ByteStreams.java:122)
        at org.sonatype.nexus.repository.view.Payload.copy(Payload.java:62)
        at org.sonatype.nexus.repository.view.Content.copy(Content.java:113)
        at org.sonatype.nexus.repository.httpbridge.internal.DefaultHttpResponseSender.send(DefaultHttpResponseSender.java:79)
        at org.sonatype.nexus.common.http.ProHttpResponseSender.send(ProHttpResponseSender.java:74)
        at org.sonatype.nexus.repository.httpbridge.internal.ViewServlet.dispatchAndSend(ViewServlet.java:222)
        at org.sonatype.nexus.repository.httpbridge.internal.ViewServlet.doService(ViewServlet.java:168)
        at org.sonatype.nexus.repository.httpbridge.internal.ViewServlet.service(ViewServlet.java:122)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)
        at com.google.inject.servlet.ServletDefinition.doServiceImpl(ServletDefinition.java:293)
        at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:283)
        at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:184)
        at com.google.inject.servlet.DynamicServletPipeline.service(DynamicServletPipeline.java:71)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:85)
        at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
        at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
        at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
        at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
        at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
        at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
        at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
        at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
        at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
        at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
        at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
        at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
        at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
        at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
        at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
        at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
        at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.doFilterInternal:137)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:154)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.doFilter:82)
        at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.executeChain:108)
        at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.doFilterInternal:137)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.doFilter:154)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.doFilter:82)
        at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.executeChain:108)
        at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.doFilter:154);
        at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.doFilter:61)

The download takes ages to start and sometimes runs pretty slow.

After doing some research we increased the timeouts on our reverse proxy without any success. So I presume that might be on the Nexus side.

Thanks in advance.


post by mpiggott on Jul 7, 2025

That error indicates that something external to Nexus closed the connection to the client (e.g. load balancer, reverse proxy, etc)

HA is only available to PRO subscriptions so I’d suggest opening a support ticket.