Yum Metadata Rebuild Failed

I’m running the latest version of nexus, nexus-3.89.1-02, and since recently removing an rpm from our custom yum repository we’ve been getting errors when rebuilding metadata. The rebuild task states our repository is null with our repository depth set to 2 on the repository settings and when browsing the UI I can see that the proper depth is set:

Error from “rebuild metadata task” in our logs:
2026-02-23 11:04:05,297-0600 ERROR [quartz-12-thread-7] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Failed to rebuild metadata yum-isp-apps : /8/x86_64/ - null
2026-02-23 11:04:05,307-0600 ERROR [quartz-12-thread-7] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Failed to rebuild metadata yum-isp-apps : /9/x86_64/ - null

UI:

repo settings with Repodata depth of 2 to reflect the // directory structure:

Is there a fix to be able to get our packages under /8/x86_64/ recognized again?

Note a reversion back to our 3.87.0-03 build has fixed the issue with our metadata rebuild

to identity if this is known issue with nexus-3.89.1-02 version

I will need to confirm what’s the exception, the current logging level set doesn’t give us enough information. could you please set the logging level for this class to DEBUG?

Steps

Go to settings → Support → Logging → create logger button

inside the form fill the logger name as org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet and set the logging level to DEBUG.

Run the rebuild metadata task again it should show the exception stack trace

Here is the full trace. It looks like the rebuild is attempting to remove packages from the directories.

Blockquote
2026-02-27 10:39:43,716-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Trying to remove RPM /8/x86_64/bind-subscription-9.18.43-01WIN.el8.x86_64.rpm metadata if this file does not exist in repository
2026-02-27 10:39:43,717-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Asset /8/x86_64/bind-subscription-9.18.43-01WIN.el8.x86_64.rpm found in the repository. Skip it.
2026-02-27 10:39:43,717-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Rebuilding metadata yum-isp-apps:/8/x86_64/
2026-02-27 10:39:43,717-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Starting rebuilding metadata at yum-isp-apps : /8/x86_64/
2026-02-27 10:39:43,780-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Completed metadata rebuild in 63
2026-02-27 10:39:43,780-0600 ERROR [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Failed to rebuild metadata yum-isp-apps : /8/x86_64/
java.lang.NullPointerException: null
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:903)
at org.sonatype.nexus.repository.view.payloads.PathPayload.(PathPayload.java:40)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumMetadataRebuilder.getFileList(YumMetadataRebuilder.java:174)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet.writeMetadata(YumHostedMetadataFacet.java:491)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet.doRebuildMetadata(YumHostedMetadataFacet.java:475)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet.lambda$12(YumHostedMetadataFacet.java:430)
at org.sonatype.nexus.common.cooperation2.ScopedCooperation2Support$ScopedCooperation2Builder.perform(ScopedCooperation2Support.java:86)
at org.sonatype.nexus.common.cooperation2.datastore.internal.CooperatingFuture.performCall(CooperatingFuture.java:126)
at org.sonatype.nexus.common.cooperation2.datastore.internal.CooperatingFuture.call(CooperatingFuture.java:68)
at org.sonatype.nexus.common.cooperation2.ScopedCooperation2Support$ScopedCooperation2Builder.cooperate(ScopedCooperation2Support.java:103)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet.rebuildMetadata(YumHostedMetadataFacet.java:432)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet.invalidateMetadataWithoutWaiting(YumHostedMetadataFacet.java:305)
at org.sonatype.nexus.repository.yum.internal.createrepo.task.YumCreateRepoTask.execute(YumCreateRepoTask.java:35)
at org.sonatype.nexus.repository.RepositoryTaskSupport.execute(RepositoryTaskSupport.java:90)
at org.sonatype.nexus.scheduling.TaskSupport.call(TaskSupport.java:107)
at org.sonatype.nexus.quartz.internal.task.QuartzTaskJob.doExecute(QuartzTaskJob.java:147)
at org.sonatype.nexus.quartz.internal.task.QuartzTaskJob.execute(QuartzTaskJob.java:110)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.sonatype.nexus.quartz.internal.QuartzThreadPool.lambda$0(QuartzThreadPool.java:145)
at org.sonatype.nexus.thread.internal.MDCAwareRunnable.run(MDCAwareRunnable.java:40)
at org.apache.shiro.subject.support.SubjectRunnable.doRun(SubjectRunnable.java:120)
at org.apache.shiro.subject.support.SubjectRunnable.run(SubjectRunnable.java:108)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
2026-02-27 10:39:43,781-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Start cleaning metadata datastore entries for missed RPMs for repoLocation /9/x86_64/
2026-02-27 10:39:43,782-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Trying to remove RPM /9/x86_64/telegraf-1.35.2-1.x86_64.rpm metadata if this file does not exist in repository
2026-02-27 10:39:43,783-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Asset /9/x86_64/telegraf-1.35.2-1.x86_64.rpm found in the repository. Skip it.
2026-02-27 10:39:43,783-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Trying to remove RPM /9/x86_64/ncat-7.97-1.x86_64.rpm metadata if this file does not exist in repository
2026-02-27 10:39:43,783-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Asset /9/x86_64/ncat-7.97-1.x86_64.rpm found in the repository. Skip it.
2026-02-27 10:39:43,784-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Trying to remove RPM /9/x86_64/nmap-7.97-1.x86_64.rpm metadata if this file does not exist in repository
2026-02-27 10:39:43,784-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Asset /9/x86_64/nmap-7.97-1.x86_64.rpm found in the repository. Skip it.
2026-02-27 10:39:43,785-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Trying to remove RPM /9/x86_64/nping-7.97-1.x86_64.rpm metadata if this file does not exist in repository
2026-02-27 10:39:43,785-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Asset /9/x86_64/nping-7.97-1.x86_64.rpm found in the repository. Skip it.
2026-02-27 10:39:43,785-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Trying to remove RPM /9/x86_64/zenmap-7.97-1.noarch.rpm metadata if this file does not exist in repository
2026-02-27 10:39:43,786-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Asset /9/x86_64/zenmap-7.97-1.noarch.rpm found in the repository. Skip it.
2026-02-27 10:39:43,786-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Rebuilding metadata yum-isp-apps:/9/x86_64/
2026-02-27 10:39:43,786-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Starting rebuilding metadata at yum-isp-apps : /9/x86_64/
2026-02-27 10:39:43,788-0600 DEBUG [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Completed metadata rebuild in 2
2026-02-27 10:39:43,788-0600 ERROR [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet - Failed to rebuild metadata yum-isp-apps : /9/x86_64/
java.lang.NullPointerException: null
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:903)
at org.sonatype.nexus.repository.view.payloads.PathPayload.(PathPayload.java:40)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumMetadataRebuilder.getFileList(YumMetadataRebuilder.java:174)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet.writeMetadata(YumHostedMetadataFacet.java:491)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet.doRebuildMetadata(YumHostedMetadataFacet.java:475)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet.lambda$12(YumHostedMetadataFacet.java:430)
at org.sonatype.nexus.common.cooperation2.ScopedCooperation2Support$ScopedCooperation2Builder.perform(ScopedCooperation2Support.java:86)
at org.sonatype.nexus.common.cooperation2.datastore.internal.CooperatingFuture.performCall(CooperatingFuture.java:126)
at org.sonatype.nexus.common.cooperation2.datastore.internal.CooperatingFuture.call(CooperatingFuture.java:68)
at org.sonatype.nexus.common.cooperation2.ScopedCooperation2Support$ScopedCooperation2Builder.cooperate(ScopedCooperation2Support.java:103)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet.rebuildMetadata(YumHostedMetadataFacet.java:432)
at org.sonatype.nexus.repository.yum.datastore.internal.createrepo.YumHostedMetadataFacet.invalidateMetadataWithoutWaiting(YumHostedMetadataFacet.java:305)
at org.sonatype.nexus.repository.yum.internal.createrepo.task.YumCreateRepoTask.execute(YumCreateRepoTask.java:35)
at org.sonatype.nexus.repository.RepositoryTaskSupport.execute(RepositoryTaskSupport.java:90)
at org.sonatype.nexus.scheduling.TaskSupport.call(TaskSupport.java:107)
at org.sonatype.nexus.quartz.internal.task.QuartzTaskJob.doExecute(QuartzTaskJob.java:147)
at org.sonatype.nexus.quartz.internal.task.QuartzTaskJob.execute(QuartzTaskJob.java:110)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.sonatype.nexus.quartz.internal.QuartzThreadPool.lambda$0(QuartzThreadPool.java:145)
at org.sonatype.nexus.thread.internal.MDCAwareRunnable.run(MDCAwareRunnable.java:40)
at org.apache.shiro.subject.support.SubjectRunnable.doRun(SubjectRunnable.java:120)
at org.apache.shiro.subject.support.SubjectRunnable.run(SubjectRunnable.java:108)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
2026-02-27 10:39:43,789-0600 INFO [quartz-12-thread-11] *TASK org.sonatype.nexus.repository.yum.internal.createrepo.task.YumCreateRepoTask - Task complete

Thank you for sharing the stack trace. I have filled a ticket internally for it.

Just curious if there has been any discovery on the provided stack trace

Hi, Sam,

This bug was triaged and is being tested this sprint. I’ll make it a point to update you when I know more.

Sam,

This bug should be fixed in our next major release, 3.91, planned for April.

Thank you so much!