Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jgit-dev] JGit Socket closed

Oh yeah that could be a good place to start. We're using an implementation of the DfsRepository by the way. When I get back to my computer I'll dig into this code, put some logging in, and post back the results. Thanks!

On Friday, March 11, 2016, Randall S. Becker <rsbecker@xxxxxxxxxxxxx> wrote:
> On March 11, 2016 12:07 PM Jared Newman wrote:
> We're using JGit as a client as a server, and have a number of automated tests that run. We're experiencing some flaking issues in about 0.1% of cases, which is causing 1/10 of our builds to fail with the
> following exception:
> On the server, I see:
> WARN  [2016-03-11 16:47:46,526] /stemma: Internal error during receive-pack to fb468f70-7621-4ccb-b21e-bcef6ec00ce7
> ! org.eclipse.jetty.io.EofException: Closed
> ! at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:325) ~[jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) ~[na:1.8.0_72]
> ! at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) ~[na:1.8.0_72]
> ! at java.io.FilterOutputStream.close(FilterOutputStream.java:158) ~[na:1.8.0_72]
> ! at org.eclipse.jgit.util.io.SafeBufferedOutputStream.close(SafeBufferedOutputStream.java:85) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.util.TemporaryBuffer.close(TemporaryBuffer.java:370) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.SmartOutputStream.close(SmartOutputStream.java:99) ~[org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.ReceivePackServlet.doPost(ReceivePackServlet.java:194) ~[org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) [javax.servlet-api-3.1.0.jar:3.1.0]
> ! at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [javax.servlet-api-3.1.0.jar:3.1.0]
> ! at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipeline.java:237) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.ReceivePackServlet$Factory.doFilter(ReceivePackServlet.java:150) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipeline.java:235) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.RepositoryFilter.doFilter(RepositoryFilter.java:151) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipeline.java:235) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.NoCacheFilter.doFilter(NoCacheFilter.java:80) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipeline.java:235) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.glue.UrlPipeline.service(UrlPipeline.java:215) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.glue.SuffixPipeline.service(SuffixPipeline.java:101) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.glue.MetaFilter.doFilter(MetaFilter.java:175) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.http.server.glue.MetaServlet.service(MetaServlet.java:133) [org.eclipse.jgit.http.server-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [javax.servlet-api-3.1.0.jar:3.1.0]
> ! at io.dropwizard.jetty.NonblockingServletHolder.handle(NonblockingServletHolder.java:49) [dropwizard-jetty-0.9.1.jar:0.9.1]
> ! at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:83) [jetty-servlets-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:300) [jetty-servlets-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at io.dropwizard.jetty.BiDiGzipFilter.doFilter(BiDiGzipFilter.java:128) [dropwizard-jetty-0.9.1.jar:0.9.1]
> ! at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at io.dropwizard.servlets.ThreadNameFilter.doFilter(ThreadNameFilter.java:29) [dropwizard-servlets-0.9.1.jar:0.9.1]
> ! at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at io.dropwizard.jersey.filter.AllowedMethodsFilter.handle(AllowedMethodsFilter.java:43) [dropwizard-jersey-0.9.1.jar:0.9.1]
> ! at io.dropwizard.jersey.filter.AllowedMethodsFilter.doFilter(AllowedMethodsFilter.java:38) [dropwizard-jersey-0.9.1.jar:0.9.1]
> ! at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at com.palantir.stemma.servlet.ChallengeForHttpAuthFilter.doFilter(ChallengeForHttpAuthFilter.java:67) [stemma-server-0.3.1-dev-115-gf1c1fdf.jar:na]
> ! at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at com.palantir.websecurity.filters.JerseyAwareWebSecurityFilter.doFilter(JerseyAwareWebSecurityFilter.java:63) [dropwizard-web-security-0.12.0.jar:na]
> ! at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at com.codahale.metrics.jetty9.InstrumentedHandler.handle(InstrumentedHandler.java:240) [metrics-jetty9-3.1.2.jar:3.1.2]
> ! at io.dropwizard.jetty.RoutingHandler.handle(RoutingHandler.java:51) [dropwizard-jetty-0.9.1.jar:0.9.1]
> ! at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:95) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.handler.StatisticsHandler.handle(StatisticsHandler.java:159) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.Server.handle(Server.java:499) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) [jetty-server-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) [jetty-io-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) [jetty-util-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) [jetty-util-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at java.lang.Thread.run(Thread.java:745) [na:1.8.0_72]

On the client, I see:

> ERROR [2016-03-11 16:47:46,507] com.palantir.remoting.http.server.JsonExceptionMapper: org.eclipse.jgit.api.errors.TransportException: https://stemma.stemma.dev:7333/stemma/git/ri.stemma.main.repository.fb468f70-7621-4ccb-b21e-bcef6ec00ce7: Socket closed
> ! java.net.SocketException: Socket closed
> ! at java.net.SocketInputStream.socketRead0(Native Method) ~[na:1.8.0_72]
> ! at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) ~[na:1.8.0_72]
> ! at java.net.SocketInputStream.read(SocketInputStream.java:170) ~[na:1.8.0_72]
> ! at java.net.SocketInputStream.read(SocketInputStream.java:141) ~[na:1.8.0_72]
> ! at sun.security.ssl.InputRecord.readFully(InputRecord.java:465) ~[na:1.8.0_72]
> ! at sun.security.ssl.InputRecord.read(InputRecord.java:503) ~[na:1.8.0_72]
> ! at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) ~[na:1.8.0_72]
> ! at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:930) ~[na:1.8.0_72]
> ! at sun.security.ssl.AppInputStream.read(AppInputStream.java:105) ~[na:1.8.0_72]
> ! at java.io.BufferedInputStream.fill(BufferedInputStream.java:246) ~[na:1.8.0_72]
> ! at java.io.BufferedInputStream.read1(BufferedInputStream.java:286) ~[na:1.8.0_72]
> ! at java.io.BufferedInputStream.read(BufferedInputStream.java:345) ~[na:1.8.0_72]
> ! at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:704) ~[na:1.8.0_72]
> ! at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:647) ~[na:1.8.0_72]
> ! at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1536) ~[na:1.8.0_72]
> ! at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441) ~[na:1.8.0_72]
> ! at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480) ~[na:1.8.0_72]
> ! at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338) ~[na:1.8.0_72]
> ! at org.eclipse.jgit.transport.http.JDKHttpConnection.getResponseCode(JDKHttpConnection.java:98) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.util.HttpSupport.response(HttpSupport.java:174) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.TransportHttp$Service.openResponse(TransportHttp.java:873) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.TransportHttp$MultiRequestService.execute(TransportHttp.java:977) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.TransportHttp$Service$HttpExecuteStream.read(TransportHttp.java:903) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.util.io.UnionInputStream.read(UnionInputStream.java:145) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.util.IO.readFully(IO.java:247) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.PacketLineIn.readLength(PacketLineIn.java:186) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.SideBandInputStream.needDataPacket(SideBandInputStream.java:154) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.SideBandInputStream.read(SideBandInputStream.java:136) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.util.IO.readFully(IO.java:247) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.PacketLineIn.readLength(PacketLineIn.java:186) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.PacketLineIn.readString(PacketLineIn.java:138) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.BasePackPushConnection.readStringLongTimeout(BasePackPushConnection.java:375) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.BasePackPushConnection.readStatusReport(BasePackPushConnection.java:327) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.BasePackPushConnection.doPush(BasePackPushConnection.java:202) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! ... 76 common frames omitted
> ! Causing: org.eclipse.jgit.errors.TransportException: https://stemma.stemma.dev:7333/stemma/git/ri.stemma.main.repository.fb468f70-7621-4ccb-b21e-bcef6ec00ce7: Socket closed
> ! at org.eclipse.jgit.transport.BasePackPushConnection.doPush(BasePackPushConnection.java:219) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.TransportHttp$SmartHttpPushConnection.doPush(TransportHttp.java:807) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.BasePackPushConnection.push(BasePackPushConnection.java:154) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.PushProcess.execute(PushProcess.java:167) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.transport.Transport.push(Transport.java:1250) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at org.eclipse.jgit.api.PushCommand.call(PushCommand.java:157) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! ... 71 common frames omitted
> ! Causing: org.eclipse.jgit.api.errors.TransportException: https://stemma.stemma.dev:7333/stemma/git/ri.stemma.main.repository.fb468f70-7621-4ccb-b21e-bcef6ec00ce7: Socket closed
> ! at org.eclipse.jgit.api.PushCommand.call(PushCommand.java:164) ~[org.eclipse.jgit-4.2.0.201601211800-r.jar:4.2.0.201601211800-r]
> ! at com.palantir.stemma.workstate.ForkBasedWorkStateOperations.pushHeadToFork(ForkBasedWorkStateOperations.java:1396) ~[stemma-work-state-server-0.3.1-dev-115-gf1c1fdf.jar:na]
> ! at com.palantir.stemma.workstate.ForkBasedWorkStateOperations.lambda$gitCommit$19(ForkBasedWorkStateOperations.java:905) ~[stemma-work-state-server-0.3.1-dev-115-gf1c1fdf.jar:na]
> ! at com.palantir.stemma.workstate.ForkBasedWorkStateOperations.lockWorkingDirectoryAndCheckoutDirtyBranch(ForkBasedWorkStateOperations.java:1368) ~[stemma-work-state-server-0.3.1-dev-115-gf1c1fdf.jar:na]
> ! at com.palantir.stemma.workstate.ForkBasedWorkStateOperations.gitCommit(ForkBasedWorkStateOperations.java:909) ~[stemma-work-state-server-0.3.1-dev-115-gf1c1fdf.jar:na]
> ! ... 67 common frames omitted
> ! Causing: java.lang.RuntimeException: org.eclipse.jgit.api.errors.TransportException: https://stemma.stemma.dev:7333/stemma/git/ri.stemma.main.repository.fb468f70-7621-4ccb-b21e-bcef6ec00ce7: Socket closed
> ! at com.google.common.base.Throwables.propagate(Throwables.java:160) ~[guava-19.0.jar:na]
> ! at com.palantir.stemma.workstate.ForkBasedWorkStateOperations.gitCommit(ForkBasedWorkStateOperations.java:911) ~[stemma-work-state-server-0.3.1-dev-115-gf1c1fdf.jar:na]
> ! at com.palantir.stemma.workstate.ForkBasedWorkStateResource.gitCommit(ForkBasedWorkStateResource.java:261) ~[stemma-work-state-server-0.3.1-dev-115-gf1c1fdf.jar:na]
> ! at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) ~[na:na]
> ! at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_72]
> ! at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_72]
> ! at com.palantir.tritium.proxy.InvocationEventProxy.execute(InvocationEventProxy.java:111) ~[tritium-lib-0.1.2.jar:0.1.2]
> ! at com.palantir.tritium.proxy.InvocationEventProxy.instrumentInvocation(InvocationEventProxy.java:88) ~[tritium-lib-0.1.2.jar:0.1.2]
> ! at com.palantir.tritium.proxy.InvocationEventProxy.handleInvocation(InvocationEventProxy.java:69) ~[tritium-lib-0.1.2.jar:0.1.2]
> ! at com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:87) ~[guava-19.0.jar:na]
> ! at com.sun.proxy.$Proxy53.gitCommit(Unknown Source) ~[na:na]
> ! at sun.reflect.GeneratedMethodAccessor64.invoke(Unknown Source) ~[na:na]
> ! at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_72]
> ! at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_72]
> ! at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81) ~[jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144) ~[jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161) ~[jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:205) ~[jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99) ~[jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389) ~[jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347) ~[jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102) ~[jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326) ~[jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) [jersey-common-2.22.1.jar:na]
> ! at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) [jersey-common-2.22.1.jar:na]
> ! at org.glassfish.jersey.internal.Errors.process(Errors.java:315) [jersey-common-2.22.1.jar:na]
> ! at org.glassfish.jersey.internal.Errors.process(Errors.java:297) [jersey-common-2.22.1.jar:na]
> ! at org.glassfish.jersey.internal.Errors.process(Errors.java:267) [jersey-common-2.22.1.jar:na]
> ! at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) [jersey-common-2.22.1.jar:na]
> ! at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305) [jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154) [jersey-server-2.22.1.jar:na]
> ! at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:471) [jersey-container-servlet-core-2.22.1.jar:na]
> ! at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:425) [jersey-container-servlet-core-2.22.1.jar:na]
> ! at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:383) [jersey-container-servlet-core-2.22.1.jar:na]
> ! at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:336) [jersey-container-servlet-core-2.22.1.jar:na]
> ! at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:223) [jersey-container-servlet-core-2.22.1.jar:na]
> ! at io.dropwizard.jetty.NonblockingServletHolder.handle(NonblockingServletHolder.java:49) [dropwizard-jetty-0.9.1.jar:0.9.1]
> ! at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:83) [jetty-servlets-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:300) [jetty-servlets-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at io.dropwizard.jetty.BiDiGzipFilter.doFilter(BiDiGzipFilter.java:132) [dropwizard-jetty-0.9.1.jar:0.9.1]
> ! at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]
> ! at io.dropwizard.servlets.ThreadNameFilter.doFilter(ThreadNameFilter.java:29) [dropwizard-servlets-0.9.1.jar:0.9.1]
> ! at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) [jetty-servlet-9.2.13.v20150730.jar:9.2.13.v20150730]].

>Because this is a flake and only occurs in 0.1% of cases, it's been super hard to get a debugger attached when it's occurring. Note, that I've also tried replicating these flakes with the git from the command >line as a client and haven't been able to do so.
>Any ideas what could be going on here?

Hi Jared,

I think more information may be needed, but I have seen this before client code using the JGit API. The Repository object has a reference count. When that count goes to zero, resources are released. Not being aware of getting the Repository object and releasing it may cause all kinds of issues depending on the platform. I’m not saying this is the issue here, and without knowing your code, it is a guess. It may be instructive to dump that value or track it. This may also be an issue if you have threads involved and are accessing the object in a non-thread-safe manner. Again, this is just a first place to look and not necessarily what is going on, but this is a sensitive spot… based on my own API user experience.

Cheers,
Randall

-- Brief whoami: NonStop&UNIX developer since approximately UNIX(421664400)/NonStop(211288444200000000)
-- In my real life, I talk too much.




Back to the top