-
Type:
Bug
-
Status: Closed
-
Priority:
Blocker
-
Resolution: Fixed
-
Affects Version/s: 3.7.0
-
Fix Version/s: 3.7.1
-
Component/s: Browse Storage
-
Labels:
-
Story Points:2
If a Nexus 2 or 3 instance is upgraded to 3.7.0, and that original instance contained any repository marked offline or out of service, then the background task which builds the Tree View / HTML view may fail to index existing cached items in ANY other repository. The result is there is no way to Browse those repositories that were not indexed by the background task. The exact repositories affected is indeterminate.
Offline means:
- Nexus 3.x: The Online checkbox is not selected.
- Nexus 2.x: The repository has been "Put out of service"
This bug does not fail builds which download components or prevent UI search from working, but will hide repository items from the tree view and HTML view for some repositories.
2017-12-21 09:08:16,900-0600 ERROR [quartz-3-thread-5] *SYSTEM org.sonatype.nexus.repository.browse.internal.RebuildBrowseNodesTask - Could not re-create browse nodes for repository: RepositoryImpl$$EnhancerByGuice$$c53e9f01{type=hosted, format=nuget, name='nuget-hosted'} org.sonatype.nexus.scheduling.TaskInterruptedException: Repository nuget-hosted is offline, rebuilding browse nodes was cancelled at org.sonatype.nexus.repository.browse.internal.RebuildBrowseNodesTask.checkContinuation(RebuildBrowseNodesTask.java:144) at org.sonatype.nexus.repository.browse.internal.RebuildBrowseNodesTask.execute(RebuildBrowseNodesTask.java:101) at org.sonatype.nexus.repository.RepositoryTaskSupport.execute(RepositoryTaskSupport.java:69) at org.sonatype.nexus.scheduling.TaskSupport.call(TaskSupport.java:93) at org.sonatype.nexus.quartz.internal.task.QuartzTaskJob.doExecute(QuartzTaskJob.java:145) at org.sonatype.nexus.quartz.internal.task.QuartzTaskJob.execute(QuartzTaskJob.java:108) at org.quartz.core.JobRunShell.run(JobRunShell.java:202) 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.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
Workaround
- if you have repositories marked offline or out of service, do not upgrade to 3.7.0
- if you require access to another bug fix in 3.7.0 before this issue is fixed in a newer release, then contact support@sonatype.com
to learn about your options
Expected
All cached repository content should be viewable in tree view, regardless whether a repository is offline or online. Also, a single offline repo should not fail fast the RebuildBrowseNodesTask at all.