Hi all,
We upgraded from 3.3.10 to Gerrit 3.4.4 a couple of weeks back.
On Sunday PM we have the git gc running (initiated by gerrit via [gc] in gerrit.config)
Since the upgrade, for a few of the projects, we have errors such as the one below.
I listed all the pack files of that project before the GC started, pack pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.idx was present (and created yesterday) before GC started.
Re-running Gc on that project a few minutes later does not pop new errors in the error_log.
Running git fsck on that project (after gc) shows 60 dangling commits and 2 dangling tag, no errors.
No problem afaik on the projects except for those errors.
Those errors were not present on Gerrit 3.3.x
Are those errors "normal" ?
Thanks,
Cedric.
ls /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/ | grep cbf5a1ab49b39fdb91e8cc146be310d8c3852b59
-r--r--r-- 1 gerrit2 gerrit2 364161 May 21 13:47 pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.pack
-r--r--r-- 1 gerrit2 gerrit2 2220 May 21 13:47 pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.idx
cat /gerrit/logs/error_log | grep 'Exception caught while accessing pack file' | grep path/pathagain/andthen/project.git | wc -l
60
gc.log:
[2022-05-22 17:01:21,914] INFO : [path/pathagain/andthen/project] gc config: gc.aggressive=false;
[2022-05-22 17:01:21,914] INFO : [path/pathagain/andthen/project] pack config: maxDeltaDepth=50, deltaSearchWindowSize=10, deltaSearchMemoryLimit=0, deltaCacheSize=52428800, deltaCacheLimit=100, compressionLevel=-1, indexVersion=2, bigFileThreshold=52428800, threads=0, reuseDeltas=true, reuseObjects=true, deltaCompress=true, buildBitmaps=true, bitmapContiguousCommitCount=100, bitmapRecentCommitCount=20000, bitmapRecentCommitSpan=100, bitmapDistantCommitSpan=5000, bitmapExcessiveBranchCount=100, bitmapInactiveBranchAge=90, singlePack=false
[2022-05-22 17:01:25,274] INFO : [path/pathagain/andthen/project] before: numberOfPackedRefs=28494, numberOfPackFiles=64, sizeOfLooseObjects=5370906, numberOfLooseObjects=2512, numberOfPackedObjects=386478, numberOfLooseRefs=83, sizeOfPackedObjects=303702313
[2022-05-22 17:02:26,467] INFO : [path/pathagain/andthen/project] after: numberOfPackedRefs=28576, numberOfPackFiles=2, sizeOfLooseObjects=817531, numberOfLooseObjects=263, numberOfPackedObjects=386929, numberOfLooseRefs=1, sizeOfPackedObjects=291971282
error.log
[2022-05-22T17:02:00.358+01:00] [WorkQueue-1[java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask@d3c931b[Not completed, task = java.util.concurrent.Executors$RunnableAdapter@3064eddd[Wrapped task = com.google.gerrit.server.logging.LoggingContextAwareRunnable@3cb8492e]]]] ERROR org.eclipse.jgit.internal.storage.file.PackDirectory : Exception caught while accessing pack file /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.pack, the pack file might be corrupt. Caught 1 consecutive errors while trying to read this pack.
java.io.IOException: Unreadable pack index: /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.idx
at org.eclipse.jgit.internal.storage.file.PackIndex.open(PackIndex.java:70)
at org.eclipse.jgit.internal.storage.file.Pack.idx(Pack.java:161)
at org.eclipse.jgit.internal.storage.file.Pack.get(Pack.java:273)
at org.eclipse.jgit.internal.storage.file.PackDirectory.open(PackDirectory.java:211)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openPackedObject(ObjectDirectory.java:390)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openPackedFromSelfOrAlternate(ObjectDirectory.java:354)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openObjectWithoutRestoring(ObjectDirectory.java:345)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openObject(ObjectDirectory.java:330)
at org.eclipse.jgit.internal.storage.file.WindowCursor.open(WindowCursor.java:132)
at org.eclipse.jgit.lib.ObjectReader.open(ObjectReader.java:212)
at org.eclipse.jgit.internal.storage.file.GC.loosen(GC.java:294)
at org.eclipse.jgit.internal.storage.file.GC.deleteOldPacks(GC.java:348)
at org.eclipse.jgit.internal.storage.file.GC.repack(GC.java:862)
at org.eclipse.jgit.internal.storage.file.GC.doGc(GC.java:270)
at org.eclipse.jgit.internal.storage.file.GC.gc(GC.java:221)
at org.eclipse.jgit.api.GarbageCollectCommand.call(GarbageCollectCommand.java:179)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:99)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:71)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:67)
at com.google.gerrit.server.git.GarbageCollectionRunner.run(GarbageCollectionRunner.java:64)
at com.google.gerrit.server.logging.LoggingContextAwareRunnable.run(LoggingContextAwareRunnable.java:113)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:612)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.io.FileNotFoundException: /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.idx (No such file or directory)
at java.base/java.io.FileInputStream.open0(Native Method)
at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
at org.eclipse.jgit.util.io.SilentFileInputStream.<init>(SilentFileInputStream.java:31)
at org.eclipse.jgit.internal.storage.file.PackIndex.open(PackIndex.java:65)
... 27 more
[2022-05-22T17:02:00.360+01:00] [WorkQueue-1[java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask@d3c931b[Not completed, task = java.util.concurrent.Executors$RunnableAdapter@3064eddd[Wrapped task = com.google.gerrit.server.logging.LoggingContextAwareRunnable@3cb8492e]]]] ERROR org.eclipse.jgit.internal.storage.file.PackDirectory : Exception caught while accessing pack file /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-df5110ae359eef73fd544c067ffad087da5b939c.pack, the pack file might be corrupt. Caught 1 consecutive errors while trying to read this pack.
java.io.IOException: Unreadable pack index: /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-df5110ae359eef73fd544c067ffad087da5b939c.idx
at org.eclipse.jgit.internal.storage.file.PackIndex.open(PackIndex.java:70)
at org.eclipse.jgit.internal.storage.file.Pack.idx(Pack.java:161)
at org.eclipse.jgit.internal.storage.file.Pack.get(Pack.java:273)
at org.eclipse.jgit.internal.storage.file.PackDirectory.open(PackDirectory.java:211)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openPackedObject(ObjectDirectory.java:390)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openPackedFromSelfOrAlternate(ObjectDirectory.java:354)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openObjectWithoutRestoring(ObjectDirectory.java:345)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openObject(ObjectDirectory.java:330)
at org.eclipse.jgit.internal.storage.file.WindowCursor.open(WindowCursor.java:132)
at org.eclipse.jgit.lib.ObjectReader.open(ObjectReader.java:212)
at org.eclipse.jgit.internal.storage.file.GC.loosen(GC.java:294)
at org.eclipse.jgit.internal.storage.file.GC.deleteOldPacks(GC.java:348)
at org.eclipse.jgit.internal.storage.file.GC.repack(GC.java:862)
at org.eclipse.jgit.internal.storage.file.GC.doGc(GC.java:270)
at org.eclipse.jgit.internal.storage.file.GC.gc(GC.java:221)
at org.eclipse.jgit.api.GarbageCollectCommand.call(GarbageCollectCommand.java:179)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:99)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:71)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:67)
at com.google.gerrit.server.git.GarbageCollectionRunner.run(GarbageCollectionRunner.java:64)
at com.google.gerrit.server.logging.LoggingContextAwareRunnable.run(LoggingContextAwareRunnable.java:113)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:612)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.io.FileNotFoundException: /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-df5110ae359eef73fd544c067ffad087da5b939c.idx (No such file or directory)
at java.base/java.io.FileInputStream.open0(Native Method)
at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
at org.eclipse.jgit.util.io.SilentFileInputStream.<init>(SilentFileInputStream.java:31)
at org.eclipse.jgit.internal.storage.file.PackIndex.open(PackIndex.java:65)
... 27 more
[2022-05-22T17:02:00.541+01:00] [WorkQueue-1[java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask@d3c931b[Not completed, task = java.util.concurrent.Executors$RunnableAdapter@3064eddd[Wrapped task = com.google.gerrit.server.logging.LoggingContextAwareRunnable@3cb8492e]]]] WARN org.eclipse.jgit.internal.storage.file.PackDirectory : Pack file /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.pack is corrupt, removing it from pack list
org.eclipse.jgit.errors.PackInvalidException: Pack file invalid: /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.pack
at org.eclipse.jgit.internal.storage.file.Pack.idx(Pack.java:155)
at org.eclipse.jgit.internal.storage.file.Pack.get(Pack.java:273)
at org.eclipse.jgit.internal.storage.file.PackDirectory.open(PackDirectory.java:211)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openPackedObject(ObjectDirectory.java:390)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openPackedFromSelfOrAlternate(ObjectDirectory.java:354)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openObjectWithoutRestoring(ObjectDirectory.java:345)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openObject(ObjectDirectory.java:330)
at org.eclipse.jgit.internal.storage.file.WindowCursor.open(WindowCursor.java:132)
at org.eclipse.jgit.lib.ObjectReader.open(ObjectReader.java:212)
at org.eclipse.jgit.internal.storage.file.GC.loosen(GC.java:294)
at org.eclipse.jgit.internal.storage.file.GC.deleteOldPacks(GC.java:348)
at org.eclipse.jgit.internal.storage.file.GC.repack(GC.java:862)
at org.eclipse.jgit.internal.storage.file.GC.doGc(GC.java:270)
at org.eclipse.jgit.internal.storage.file.GC.gc(GC.java:221)
at org.eclipse.jgit.api.GarbageCollectCommand.call(GarbageCollectCommand.java:179)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:99)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:71)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:67)
at com.google.gerrit.server.git.GarbageCollectionRunner.run(GarbageCollectionRunner.java:64)
at com.google.gerrit.server.logging.LoggingContextAwareRunnable.run(LoggingContextAwareRunnable.java:113)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:612)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.io.IOException: Unreadable pack index: /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.idx
at org.eclipse.jgit.internal.storage.file.PackIndex.open(PackIndex.java:70)
at org.eclipse.jgit.internal.storage.file.Pack.idx(Pack.java:161)
... 26 more
Caused by: java.io.FileNotFoundException: /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.idx (No such file or directory)
at java.base/java.io.FileInputStream.open0(Native Method)
at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
at org.eclipse.jgit.util.io.SilentFileInputStream.<init>(SilentFileInputStream.java:31)
at org.eclipse.jgit.internal.storage.file.PackIndex.open(PackIndex.java:65)
... 27 more
[2022-05-22T17:02:00.544+01:00] [WorkQueue-1[java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask@d3c931b[Not completed, task = java.util.concurrent.Executors$RunnableAdapter@3064eddd[Wrapped task = com.google.gerrit.server.logging.LoggingContextAwareRunnable@3cb8492e]]]] WARN org.eclipse.jgit.internal.storage.file.PackDirectory : Pack file /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.pack is corrupt, removing it from pack list
org.eclipse.jgit.errors.PackInvalidException: Pack file invalid: /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.pack
at org.eclipse.jgit.internal.storage.file.Pack.idx(Pack.java:155)
at org.eclipse.jgit.internal.storage.file.Pack.get(Pack.java:273)
at org.eclipse.jgit.internal.storage.file.PackDirectory.open(PackDirectory.java:211)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openPackedObject(ObjectDirectory.java:390)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openPackedFromSelfOrAlternate(ObjectDirectory.java:354)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openObjectWithoutRestoring(ObjectDirectory.java:345)
at org.eclipse.jgit.internal.storage.file.ObjectDirectory.openObject(ObjectDirectory.java:330)
at org.eclipse.jgit.internal.storage.file.WindowCursor.open(WindowCursor.java:132)
at org.eclipse.jgit.lib.ObjectReader.open(ObjectReader.java:212)
at org.eclipse.jgit.internal.storage.file.GC.loosen(GC.java:294)
at org.eclipse.jgit.internal.storage.file.GC.deleteOldPacks(GC.java:348)
at org.eclipse.jgit.internal.storage.file.GC.repack(GC.java:862)
at org.eclipse.jgit.internal.storage.file.GC.doGc(GC.java:270)
at org.eclipse.jgit.internal.storage.file.GC.gc(GC.java:221)
at org.eclipse.jgit.api.GarbageCollectCommand.call(GarbageCollectCommand.java:179)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:99)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:71)
at com.google.gerrit.server.git.GarbageCollection.run(GarbageCollection.java:67)
at com.google.gerrit.server.git.GarbageCollectionRunner.run(GarbageCollectionRunner.java:64)
at com.google.gerrit.server.logging.LoggingContextAwareRunnable.run(LoggingContextAwareRunnable.java:113)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:612)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.io.IOException: Unreadable pack index: /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.idx
at org.eclipse.jgit.internal.storage.file.PackIndex.open(PackIndex.java:70)
at org.eclipse.jgit.internal.storage.file.Pack.idx(Pack.java:161)
... 26 more
Caused by: java.io.FileNotFoundException: /gerrit/shared/git/path/pathagain/andthen/project.git/objects/pack/pack-cbf5a1ab49b39fdb91e8cc146be310d8c3852b59.idx (No such file or directory)
at java.base/java.io.FileInputStream.open0(Native Method)
at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
at org.eclipse.jgit.util.io.SilentFileInputStream.<init>(SilentFileInputStream.java:31)
at org.eclipse.jgit.internal.storage.file.PackIndex.open(PackIndex.java:65)
... 27 more