Uploaded image for project: 'Dev - Nexus Repo'
  1. Dev - Nexus Repo
  2. NEXUS-6523

routing prefix file maintenance processes collection deletion deeper than supported scan depth

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Out of scope
    • Affects Version/s: 2.7.2
    • Fix Version/s: None
    • Component/s: Proxy Repository, Routing
    • Labels:

      Description

      Noticed this in a customer thread dump. It seems automatic routing could be improved by not processing collections deeper than 2 levels. Should avoid opening, reading files for no reason in synchronous collection deletion. Unless there is a reason??

      at java.io.FileInputStream.open(Native Method) 
      at java.io.FileInputStream. (FileInputStream.java:138) 
      at org.sonatype.nexus.proxy.item.FileContentLocator.getInputStream(FileContentLocator.java:80) 
      at org.sonatype.nexus.proxy.item.FileContentLocator.getContent(FileContentLocator.java:107) 
      at org.sonatype.nexus.proxy.item.DefaultLinkPersister.getLinkPrefixBytes(DefaultLinkPersister.java:108) 
      at org.sonatype.nexus.proxy.item.DefaultLinkPersister.isLinkContent(DefaultLinkPersister.java:58) 
      at org.sonatype.nexus.proxy.storage.local.fs.DefaultFSLocalRepositoryStorage.retrieveItemFromFile(DefaultFSLocalRepositoryStorage.java:214) 
      at org.sonatype.nexus.proxy.storage.local.fs.DefaultFSLocalRepositoryStorage.retrieveItem(DefaultFSLocalRepositoryStorage.java:285) 
      at org.sonatype.nexus.proxy.repository.AbstractRepository.doRetrieveLocalItem(AbstractRepository.java:1248) 
      at org.sonatype.nexus.proxy.repository.AbstractRepository.doRetrieveItem(AbstractRepository.java:1240) 
      at org.sonatype.nexus.proxy.repository.AbstractProxyRepository.doRetrieveItem(AbstractProxyRepository.java:889) 
      at org.sonatype.nexus.proxy.maven.AbstractMavenRepository.doRetrieveItem(AbstractMavenRepository.java:396) 
      at org.sonatype.nexus.proxy.maven.maven2.M2Repository.doRetrieveItem(M2Repository.java:396) 
      at org.sonatype.nexus.proxy.repository.AbstractRepository.retrieveItem(AbstractRepository.java:765) 
      at org.sonatype.nexus.proxy.maven.routing.internal.FilePrefixSource.getFileItem(FilePrefixSource.java:241) 
      at org.sonatype.nexus.proxy.maven.routing.internal.FilePrefixSource$4.call(FilePrefixSource.java:182) 
      at org.sonatype.nexus.proxy.maven.routing.internal.FilePrefixSource$4.call(FilePrefixSource.java:177) 
      at org.sonatype.nexus.proxy.maven.routing.internal.FilePrefixSource.doReadProtected(FilePrefixSource.java:217) 
      at org.sonatype.nexus.proxy.maven.routing.internal.FilePrefixSource.readEntries(FilePrefixSource.java:176) 
      at org.sonatype.nexus.proxy.maven.routing.internal.WritablePrefixSourceModifier. (WritablePrefixSourceModifier.java:69) 
      at org.sonatype.nexus.proxy.maven.routing.internal.ManagerImpl.revokeEntry(ManagerImpl.java:903) 
      at org.sonatype.nexus.proxy.maven.routing.internal.EventDispatcher.revokePath(EventDispatcher.java:126) 
      at org.sonatype.nexus.proxy.maven.routing.internal.EventDispatcher.onRepositoryItemEventDelete(EventDispatcher.java:219) 
      at sun.reflect.GeneratedMethodAccessor161.invoke(Unknown Source) 
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
      at java.lang.reflect.Method.invoke(Method.java:606) 
      at org.sonatype.sisu.goodies.eventbus.internal.guava.EventHandler.handleEvent(EventHandler.java:80) 
      at org.sonatype.sisu.goodies.eventbus.internal.guava.EventBus.dispatch(EventBus.java:329) 
      at org.sonatype.sisu.goodies.eventbus.internal.DefaultGuavaEventBus.dispatch(DefaultGuavaEventBus.java:34) 
      at org.sonatype.sisu.goodies.eventbus.internal.ReentrantGuavaEventBus.dispatchQueuedEvents(ReentrantGuavaEventBus.java:57) 
      at org.sonatype.sisu.goodies.eventbus.internal.guava.EventBus.post(EventBus.java:281) 
      at org.sonatype.sisu.goodies.eventbus.internal.DefaultEventBus.post(DefaultEventBus.java:78) 
      at org.sonatype.nexus.proxy.repository.AbstractRepository.deleteItem(AbstractRepository.java:922) 
      at org.sonatype.nexus.maven.tasks.DefaultSnapshotRemover$SnapshotRemoverWalkerProcessor.doOnCollectionExit(DefaultSnapshotRemover.java:532) 
      at org.sonatype.nexus.maven.tasks.DefaultSnapshotRemover$SnapshotRemoverWalkerProcessor.onCollectionExit(DefaultSnapshotRemover.java:363) 
      at org.sonatype.nexus.proxy.walker.DefaultWalker.onCollectionExit(DefaultWalker.java:331) 
      at org.sonatype.nexus.proxy.walker.DefaultWalker.walkRecursive(DefaultWalker.java:241) 
      at org.sonatype.nexus.proxy.walker.DefaultWalker.walkRecursive(DefaultWalker.java:226) 
      at org.sonatype.nexus.proxy.walker.DefaultWalker.walkRecursive(DefaultWalker.java:226) 
      at org.sonatype.nexus.proxy.walker.DefaultWalker.walkRecursive(DefaultWalker.java:226) 
      at org.sonatype.nexus.proxy.walker.DefaultWalker.walkRecursive(DefaultWalker.java:226) 
      at org.sonatype.nexus.proxy.walker.DefaultWalker.walkRecursive(DefaultWalker.java:226) 
      at org.sonatype.nexus.proxy.walker.DefaultWalker.walkRecursive(DefaultWalker.java:226) 
      at org.sonatype.nexus.proxy.walker.DefaultWalker.walkRecursive(DefaultWalker.java:226) 
      at org.sonatype.nexus.proxy.walker.DefaultWalker.walk(DefaultWalker.java:90) 
      at org.sonatype.nexus.maven.tasks.DefaultSnapshotRemover.removeSnapshotsFromMavenRepository(DefaultSnapshotRemover.java:208) 
      at org.sonatype.nexus.maven.tasks.DefaultSnapshotRemover.process(DefaultSnapshotRemover.java:153) 
      at org.sonatype.nexus.maven.tasks.DefaultSnapshotRemover.removeSnapshots(DefaultSnapshotRemover.java:112) 
      at org.sonatype.nexus.maven.tasks.SnapshotRemoverTask.doRun(SnapshotRemoverTask.java:116) 
      at org.sonatype.nexus.maven.tasks.SnapshotRemoverTask.doRun(SnapshotRemoverTask.java:29) 
      at org.sonatype.nexus.scheduling.AbstractNexusTask.call(AbstractNexusTask.java:157) 
      at org.sonatype.scheduling.DefaultScheduledTask.call(DefaultScheduledTask.java:419) 
      at org.sonatype.nexus.threads.MDCAwareCallable.call(MDCAwareCallable.java:45) 
      at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) 
      at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) 
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 
      at java.util.concurrent.FutureTask.run(FutureTask.java:166) 
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178) 
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292) 
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
      at java.lang.Thread.run(Thread.java:724)
      

        Attachments

          Activity

            People

            Assignee:
            Unassigned Unassigned
            Reporter:
            plynch Peter Lynch
            Last Updated By:
            Joe Tom Joe Tom
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:
              Date of First Response:

                tigCommentSecurity.panel-title