Reputation: 167
We have a jenkins job configured to fetch changes from gerrit to do CI, sometimes this job fails randomly to perform Git operation's like clone or fetch on the gerrit server. The gerrit server is backed by a postgres database with PGBouncer. The server's SSHD log has the following log message.
[2018-05-19 17:15:27,405 +0000] 7f660610 username a/1000024 git-upload-pack./sampleproject 1ms 300002ms killed
And the application log has following stack trace which is coming from jgit or lucene.
[2018-05-19 17:15:27,636] [SSH git-upload-pack '/sampleproject' (username)] WARN com.google.gerrit.server.git.SearchingChangeCacheImpl : Cannot fetch changes for sampleproject
2018-05-1913:15:28.700
java.util.concurrent.ExecutionException: com.google.gwtorm.server.OrmException: interrupted
2018-05-1913:15:28.702
at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:476)
2018-05-1913:15:28.703
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:435)
2018-05-1913:15:28.721
at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
2018-05-1913:15:28.723
at com.google.common.util.concurrent.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:143)
2018-05-1913:15:28.725
at com.google.common.cache.LocalCache$Segment.getAndRecordStats(LocalCache.java:2352)
2018-05-1913:15:28.727
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2324)
2018-05-1913:15:28.728
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2286)
2018-05-1913:15:28.729
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2201)
2018-05-1913:15:28.731
at com.google.common.cache.LocalCache.get(LocalCache.java:3953)
2018-05-1913:15:28.733
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3957)
2018-05-1913:15:28.734
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4875)
2018-05-1913:15:28.736
at com.google.gerrit.server.git.SearchingChangeCacheImpl.getChangeData(SearchingChangeCacheImpl.java:118)
2018-05-1913:15:28.737
at com.google.gerrit.server.git.VisibleRefFilter.visibleChangesBySearch(VisibleRefFilter.java:236)
2018-05-1913:15:28.739
at com.google.gerrit.server.git.VisibleRefFilter.visible(VisibleRefFilter.java:216)
2018-05-1913:15:28.760
at com.google.gerrit.server.git.VisibleRefFilter.filter(VisibleRefFilter.java:126)
2018-05-1913:15:28.762
at com.google.gerrit.server.git.VisibleRefFilter.filter(VisibleRefFilter.java:208)
2018-05-1913:15:28.763
at com.google.gerrit.server.git.VisibleRefFilter.getAdvertisedRefs(VisibleRefFilter.java:197)
2018-05-1913:15:28.764
at org.eclipse.jgit.transport.AbstractAdvertiseRefsHook.advertiseRefs(AbstractAdvertiseRefsHook.java:62)
2018-05-1913:15:28.766
at org.eclipse.jgit.transport.UploadPack.sendAdvertisedRefs(UploadPack.java:870)
2018-05-1913:15:28.768
at org.eclipse.jgit.transport.UploadPack.service(UploadPack.java:718)
2018-05-1913:15:28.769
at org.eclipse.jgit.transport.UploadPack.upload(UploadPack.java:667)
2018-05-1913:15:28.771
at com.google.gerrit.sshd.commands.Upload.runImpl(Upload.java:92)
2018-05-1913:15:28.772
at com.google.gerrit.sshd.AbstractGitCommand.service(AbstractGitCommand.java:101)
2018-05-1913:15:28.777
at com.google.gerrit.sshd.AbstractGitCommand.access$000(AbstractGitCommand.java:32)
2018-05-1913:15:28.779
at com.google.gerrit.sshd.AbstractGitCommand$1.run(AbstractGitCommand.java:70)
2018-05-1913:15:28.780
at com.google.gerrit.sshd.BaseCommand$TaskThunk.run(BaseCommand.java:442)
2018-05-1913:15:28.782
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
2018-05-1913:15:28.783
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
2018-05-1913:15:28.784
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
2018-05-1913:15:28.786
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
2018-05-1913:15:28.788
at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:417)
2018-05-1913:15:28.790
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
2018-05-1913:15:28.791
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
2018-05-1913:15:28.793
at java.lang.Thread.run(Thread.java:748)
2018-05-1913:15:28.795
Caused by: com.google.gwtorm.server.OrmException: interrupted
2018-05-1913:15:28.796
at com.google.gerrit.lucene.LuceneChangeIndex$QuerySource.read(LuceneChangeIndex.java:317)
2018-05-1913:15:28.797
at com.google.gerrit.server.index.change.IndexedChangeQuery.read(IndexedChangeQuery.java:90)
2018-05-1913:15:28.799
at com.google.gerrit.server.query.QueryProcessor.query(QueryProcessor.java:191)
2018-05-1913:15:28.801
at com.google.gerrit.server.query.QueryProcessor.query(QueryProcessor.java:139)
2018-05-1913:15:28.802
at com.google.gerrit.server.query.QueryProcessor.query(QueryProcessor.java:122)
2018-05-1913:15:28.803
at com.google.gerrit.server.query.InternalQuery.query(InternalQuery.java:71)
2018-05-1913:15:28.805
at com.google.gerrit.server.query.change.InternalChangeQuery.byProject(InternalChangeQuery.java:144)
2018-05-1913:15:28.806
at com.google.gerrit.server.git.SearchingChangeCacheImpl$Loader.load(SearchingChangeCacheImpl.java:153)
2018-05-1913:15:28.808
at com.google.gerrit.server.git.SearchingChangeCacheImpl$Loader.load(SearchingChangeCacheImpl.java:139)
2018-05-1913:15:28.810
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3542)
2018-05-1913:15:28.811
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2323)
2018-05-1913:15:28.813
... 28 more
Has anyone faced this problem before? Or what can we do to identify the problem?
Upvotes: 0
Views: 270
Reputation: 84
We had some issues with ssh connections to Gerrit also. It was some time ago, so I don't remember exact errors. But we used a pretty old version of Gerrit (2.10 or something).
Our solution was to use https protocol instead of ssh for remote git operations.
Upvotes: 1