Last modified: 2013-04-03 07:06:12 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T41737, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 39737 - git clone fail with an RPC error
git clone fail with an RPC error
Status: RESOLVED FIXED
Product: Wikimedia
Classification: Unclassified
Git/Gerrit (Other open bugs)
unspecified
All All
: Low normal (vote)
: ---
Assigned To: Nobody - You can work on this!
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-08-28 16:02 UTC by Antoine "hashar" Musso (WMF)
Modified: 2013-04-03 07:06 UTC (History)
3 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description Antoine "hashar" Musso (WMF) 2012-08-28 16:02:04 UTC
On gallium, I use a local repository as a reference when doing a git clone:

Example:

 git clone --reference /var/lib/jenkins/git/mediawiki/core \
   -- https://gerrit.wikimedia.org/r/p/mediawiki/core.git \
   /tmp/DeleteThis

Under Jenkins, that eventually fails with a RPC error:

  15:54:17       [exec] error: RPC failed; result=22, HTTP code = 502

Under shell it seems to works:


$ git clone --reference /var/lib/jenkins/git/mediawiki/core -- https://gerrit.wikimedia.org/r/p/mediawiki/core.git /tmp/DeleteThis
Initialized empty Git repository in /tmp/DeleteThis/.git/
remote: Counting objects: 380902, done
remote: Finding sources: 100% (380902/380902)
remote: Getting sizes: 100% (12861/12861)
remote: Compressing objects: 100% (12841/12841)
remote: Total 380902 (delta 322620), reused 373266 (delta 321052)
Receiving objects: 100% (380902/380902), 96.91 MiB | 3.02 MiB/s, done.
Resolving deltas: 100% (325746/325746), done.

So might be related to Jenkins
Comment 1 Antoine "hashar" Musso (WMF) 2012-08-28 16:04:30 UTC
Example: https://integration.mediawiki.org/ci/job/Ext-AFTv5/4/console
Comment 2 Antoine "hashar" Musso (WMF) 2012-08-28 16:07:01 UTC
Possible strack trace reported by Chad :

[2012-08-28 15:48:11,637] WARN  /r : Internal error during upload-pack
org.eclipse.jetty.io.EofException
	at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:154)
	at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:98)
	at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
	at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
	at org.eclipse.jgit.util.TemporaryBuffer.doFlush(TemporaryBuffer.java:151)
	at org.eclipse.jgit.http.server.UploadPackServlet$1.flush(UploadPackServlet.java:167)
	at org.eclipse.jgit.transport.SideBandOutputStream.flush(SideBandOutputStream.java:125)
	at org.eclipse.jgit.storage.pack.PackOutputStream.flush(PackOutputStream.java:135)
	at org.eclipse.jgit.storage.pack.PackWriter.writePack(PackWriter.java:895)
	at org.eclipse.jgit.transport.UploadPack.sendPack(UploadPack.java:1197)
	at org.eclipse.jgit.transport.UploadPack.sendPack(UploadPack.java:1055)
	at org.eclipse.jgit.transport.UploadPack.service(UploadPack.java:611)
	at org.eclipse.jgit.transport.UploadPack.upload(UploadPack.java:521)
	at org.eclipse.jgit.http.server.UploadPackServlet.doPost(UploadPackServlet.java:176)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipeline.java:237)
	at com.google.gerrit.httpd.GitOverHttpServlet$UploadFilter.doFilter(GitOverHttpServlet.java:222)
	at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipeline.java:235)
	at org.eclipse.jgit.http.server.UploadPackServlet$Factory.doFilter(UploadPackServlet.java:141)
	at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipeline.java:235)
	at org.eclipse.jgit.http.server.RepositoryFilter.doFilter(RepositoryFilter.java:147)
	at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipeline.java:235)
	at org.eclipse.jgit.http.server.NoCacheFilter.doFilter(NoCacheFilter.java:80)
	at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipeline.java:235)
	at org.eclipse.jgit.http.server.glue.UrlPipeline.service(UrlPipeline.java:215)
	at org.eclipse.jgit.http.server.glue.SuffixPipeline.service(SuffixPipeline.java:101)
	at org.eclipse.jgit.http.server.glue.MetaFilter.doFilter(MetaFilter.java:163)
	at org.eclipse.jgit.http.server.glue.MetaServlet.service(MetaServlet.java:133)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
	at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
	at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
	at com.google.gerrit.pgm.http.jetty.ProjectQoSFilter.doFilter(ProjectQoSFilter.java:132)
	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
	at com.google.gwtexpui.server.CacheControlFilter.doFilter(CacheControlFilter.java:76)
	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
	at com.google.gerrit.httpd.RequireSslFilter.doFilter(RequireSslFilter.java:68)
	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
	at com.google.gerrit.httpd.RequestCleanupFilter.doFilter(RequestCleanupFilter.java:54)
	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
	at com.google.gerrit.httpd.ProjectDigestFilter.doFilter(ProjectDigestFilter.java:111)
	at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
	at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
	at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
	at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1322)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:473)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:921)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:856)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
	at org.eclipse.jetty.server.Server.handleAsync(Server.java:397)
	at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:601)
	at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:410)
	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
	at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
	at java.lang.Thread.run(Thread.java:679)
Comment 3 Jeff Green 2012-08-28 19:56:46 UTC
I hit the same error multiple times trying:

git clone --quiet --recursive https://gerrit.wikimedia.org/r/p/mediawiki/core.git -b fundraising/1.20 /srv/www-staging/org/wikimedia/payments
Comment 4 Chad H. 2012-10-17 14:21:22 UTC
We made this a little better by upping Apache's proxy timeout. Dropping the --recursive also helps, as we've discussed :)

I'd like to mark this FIXED unless we're still hitting it regularly.
Comment 5 Antoine "hashar" Musso (WMF) 2013-01-14 08:26:58 UTC
Being bold, this no more happen in my experience though someone using a slow connection might eventually have the issue.
Comment 6 Chad H. 2013-04-03 06:12:47 UTC
This should be doubly fixed now: https://wikitech.wikimedia.org/w/index.php?title=Server_Admin_Log&diff=65291&oldid=65286
Comment 7 Antoine "hashar" Musso (WMF) 2013-04-03 07:06:12 UTC
For history purpose, copy pasting from wikitech:

^demon: gerrit: finished doing jgit gc on mediawiki/core. Repo size 3G -> 323M. Fresh clone time to <5m to localhost, <1.5m to other hosts inside wmf. I rock. Backup's in /home/demon/core.git in case something goes wrong. Bed time.

Congratulations Chad :-]

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links