org.sonatype.nexus.proxy.repository.InvalidGroupingException: The group 'g1' has a cyclic reference! Path to the cyclic reference: 'g1/g3/g2'.

Sonatype JIRA | Tamás Cservenák | 7 years ago
  1. 0

    I created groups: g1: public g2: g1 g3: g2 Then I edited g1, and added g3 to it. Nexus logs showed an exception that I made a cycle, and configuration was _not_ saved (it is okay), but the UI did not tell me a bit about this. Only by reopening the Repositories edit page, it turned out that my change was not saved. {noformat} jvm 1 | 2010-05-20 19:10:36 WARN [tp-1036653960-2] - o.s.n.r.g.Repositor~ - Invalid grouping detected!, GroupId=g1 jvm 1 | org.sonatype.nexus.proxy.repository.InvalidGroupingException: The group 'g1' has a cyclic reference! Path to the cyclic reference: 'g1/g3/g2'. jvm 1 | at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.checkForCyclicReference(AbstractGroupRepository.java:298) jvm 1 | at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.checkForCyclicReference(AbstractGroupRepository.java:306) jvm 1 | at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.checkForCyclicReference(AbstractGroupRepository.java:306) jvm 1 | at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.addMemberRepositoryId(AbstractGroupRepository.java:290) jvm 1 | at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.setMemberRepositoryIds(AbstractGroupRepository.java:272) jvm 1 | at org.sonatype.nexus.rest.groups.AbstractRepositoryGroupPlexusResource.updateRepositoryGroup(AbstractRepositoryGroupPlexusResource.java:149) jvm 1 | at org.sonatype.nexus.rest.groups.AbstractRepositoryGroupPlexusResource.createOrUpdateRepositoryGroup(AbstractRepositoryGroupPlexusResource.java:125) jvm 1 | at org.sonatype.nexus.rest.groups.RepositoryGroupPlexusResource.put(RepositoryGroupPlexusResource.java:159) jvm 1 | at org.sonatype.plexus.rest.resource.RestletResource.storeRepresentation(RestletResource.java:351) jvm 1 | at org.sonatype.nexus.rest.NexusRestletResource.storeRepresentation(NexusRestletResource.java:84) jvm 1 | at org.restlet.resource.Resource.put(Resource.java:706) jvm 1 | at org.restlet.resource.Resource.handlePut(Resource.java:603) jvm 1 | at org.restlet.Finder.handle(Finder.java:359) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at org.restlet.Router.handle(Router.java:504) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at org.restlet.Router.handle(Router.java:504) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at org.sonatype.plexus.rest.RetargetableRestlet.doHandle(RetargetableRestlet.java:39) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:130) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at com.noelios.restlet.ChainHelper.handle(ChainHelper.java:124) jvm 1 | at com.noelios.restlet.application.ApplicationHelper.handle(ApplicationHelper.java:112) jvm 1 | at org.restlet.Application.handle(Application.java:341) jvm 1 | at org.restlet.ext.wadl.WadlApplication.handle(WadlApplication.java:705) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at org.restlet.Router.handle(Router.java:504) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at org.restlet.Router.handle(Router.java:504) jvm 1 | at org.restlet.Filter.doHandle(Filter.java:150) jvm 1 | at org.restlet.Filter.handle(Filter.java:195) jvm 1 | at com.noelios.restlet.ChainHelper.handle(ChainHelper.java:124) jvm 1 | at org.restlet.Component.handle(Component.java:673) jvm 1 | at org.restlet.Server.handle(Server.java:331) jvm 1 | at com.noelios.restlet.ServerHelper.handle(ServerHelper.java:68) jvm 1 | at com.noelios.restlet.http.HttpServerHelper.handle(HttpServerHelper.java:147) jvm 1 | at com.noelios.restlet.ext.servlet.ServerServlet.service(ServerServlet.java:881) jvm 1 | at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) jvm 1 | at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502) jvm 1 | at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) jvm 1 | at org.jsecurity.web.servlet.FilterChainWrapper.doFilter(FilterChainWrapper.java:52) jvm 1 | at org.jsecurity.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:105) jvm 1 | at org.jsecurity.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:135) jvm 1 | at org.jsecurity.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:180) jvm 1 | at org.jsecurity.web.servlet.FilterChainWrapper.doFilter(FilterChainWrapper.java:57) jvm 1 | at org.jsecurity.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:105) jvm 1 | at org.jsecurity.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:135) jvm 1 | at org.jsecurity.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:180) jvm 1 | at org.jsecurity.web.servlet.FilterChainWrapper.doFilter(FilterChainWrapper.java:57) jvm 1 | at org.jsecurity.web.servlet.JSecurityFilter.doFilterInternal(JSecurityFilter.java:382) jvm 1 | at org.jsecurity.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:180) jvm 1 | at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1148) jvm 1 | at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:387) jvm 1 | at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) jvm 1 | at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) jvm 1 | at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) jvm 1 | at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417) jvm 1 | at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) jvm 1 | at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) jvm 1 | at org.mortbay.jetty.Server.handle(Server.java:326) jvm 1 | at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:534) jvm 1 | at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:879) jvm 1 | at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:747) jvm 1 | at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) jvm 1 | at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) jvm 1 | at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) jvm 1 | at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520) jvm 1 | 2010-05-20 19:11:01 INFO [tp-1036653960-4] - o.s.n.c.a.DefaultNe~ - Applying Nexus Configuration... jvm 1 | 2010-05-20 19:11:02 INFO [tp-1036653960-4] - o.s.n.c.v.DefaultAp~ - Nexus configuration validated succesfully. jvm 1 | 2010-05-20 19:11:07 INFO [tp-1036653960-4] - o.s.n.c.a.DefaultNe~ - Applying Nexus Configuration... jvm 1 | 2010-05-20 19:11:07 INFO [tp-1036653960-4] - o.s.n.c.v.DefaultAp~ - Nexus configuration validated succesful {noformat}

    Sonatype JIRA | 7 years ago | Tamás Cservenák
    org.sonatype.nexus.proxy.repository.InvalidGroupingException: The group 'g1' has a cyclic reference! Path to the cyclic reference: 'g1/g3/g2'.
  2. 0

    number of tests suddenly went down, might also be dependent on the slave where the execution runs: https://builds.sonatype.org/view/nexus/job/nexus-oss-its/jdk=java-6x,label=linux/76/testReport/ 1,038 tests (-634) ITs are skipped, from console (e.g. build 80 https://builds.sonatype.org/job/nexus-oss-its/jdk=java-6x,label=win/80/consoleText ): {code} Result: org.sonatype.nexus.integrationtests.nexus385.Nexus385RoutesCrudXmlIT.createRouteTest() ===> skipped Result: org.sonatype.nexus.integrationtests.nexus385.Nexus385RoutesCrudXmlIT.deleteTest() ===> skipped Result: org.sonatype.nexus.integrationtests.nexus385.Nexus385RoutesCrudXmlIT.readTest() ===> skipped Result: org.sonatype.nexus.integrationtests.nexus385.Nexus385RoutesCrudXmlIT.updateTest() ===> skipped {code} Tamas found some NPEs in the log: {code} Result: org.sonatype.nexus.integrationtests.nexus977.Nexus977GroupOfGroupsCrudIT.deleteTest() ===> SUCCESS Result: org.sonatype.nexus.integrationtests.nexus977.Nexus977GroupOfGroupsCrudIT.listTest() ===> SUCCESS [INFO] Unable to read properties file, will force index regeneration [WARNING] Repository Group not found, id=nonexisted-group-from-mars Result: org.sonatype.nexus.integrationtests.nexus977.Nexus977GroupOfGroupsCrudIT.notFoundTest() ===> SUCCESS Result: org.sonatype.nexus.integrationtests.nexus977.Nexus977GroupOfGroupsCrudIT.readTest() ===> SUCCESS [INFO] Unable to read properties file, will force index regeneration Result: org.sonatype.nexus.integrationtests.nexus977.Nexus977GroupOfGroupsCrudIT.updateTest() ===> SUCCESS [INFO] Unable to read properties file, will force index regeneration [INFO] Unexpected exception in listener, continuing listener notification. java.lang.NullPointerException at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.onEvent(AbstractGroupRepository.java:98) at org.sonatype.plexus.appevents.AbstractSimpleEventMulticaster.notifyEventListeners(AbstractSimpleEventMulticaster.java:55) at org.sonatype.nexus.proxy.repository.AbstractRepository.retrieveItem(AbstractRepository.java:821) at org.sonatype.nexus.proxy.maven.ArtifactStoreHelper.storeItemWithChecksums(ArtifactStoreHelper.java:191) at org.sonatype.nexus.proxy.maven.AbstractMavenRepository.storeItemWithChecksums(AbstractMavenRepository.java:363) at org.sonatype.nexus.index.DefaultIndexerManager.storeIndexItem(DefaultIndexerManager.java:1388) at org.sonatype.nexus.index.DefaultIndexerManager.publishRepositoryIndex(DefaultIndexerManager.java:1300) at org.sonatype.nexus.index.DefaultIndexerManager.reindexRepository(DefaultIndexerManager.java:859) at org.sonatype.nexus.index.DefaultIndexerManager.reindexRepository(DefaultIndexerManager.java:850) at org.sonatype.nexus.index.DefaultIndexerManager.reindexRepository(DefaultIndexerManager.java:829) at org.sonatype.nexus.tasks.ReindexTaskHandlerLegacy.reindexRepository(ReindexTaskHandlerLegacy.java:60) at org.sonatype.nexus.tasks.AbstractIndexerTask.doRun(AbstractIndexerTask.java:72) at org.sonatype.nexus.scheduling.AbstractNexusTask.call(AbstractNexusTask.java:159) at org.sonatype.scheduling.DefaultScheduledTask.call(DefaultScheduledTask.java:437) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:206) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) [INFO] Unexpected exception in listener, continuing listener notification. java.lang.NullPointerException at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.onEvent(AbstractGroupRepository.java:98) at org.sonatype.plexus.appevents.AbstractSimpleEventMulticaster.notifyEventListeners(AbstractSimpleEventMulticaster.java:55) at org.sonatype.nexus.proxy.repository.AbstractRepository.storeItem(AbstractRepository.java:1055) at org.sonatype.nexus.proxy.maven.AbstractMavenRepository.storeItem(AbstractMavenRepository.java:408) at org.sonatype.nexus.proxy.maven.ArtifactStoreHelper.storeItemWithChecksums(ArtifactStoreHelper.java:204) at org.sonatype.nexus.proxy.maven.AbstractMavenRepository.storeItemWithChecksums(AbstractMavenRepository.java:363) at org.sonatype.nexus.index.DefaultIndexerManager.storeIndexItem(DefaultIndexerManager.java:1388) at org.sonatype.nexus.index.DefaultIndexerManager.publishRepositoryIndex(DefaultIndexerManager.java:1300) at org.sonatype.nexus.index.DefaultIndexerManager.reindexRepository(DefaultIndexerManager.java:859) at org.sonatype.nexus.index.DefaultIndexerManager.reindexRepository(DefaultIndexerManager.java:850) at org.sonatype.nexus.index.DefaultIndexerManager.reindexRepository(DefaultIndexerManager.java:829) at org.sonatype.nexus.tasks.ReindexTaskHandlerLegacy.reindexRepository(ReindexTaskHandlerLegacy.java:60) at org.sonatype.nexus.tasks.AbstractIndexerTask.doRun(AbstractIndexerTask.java:72) at org.sonatype.nexus.scheduling.AbstractNexusTask.call(AbstractNexusTask.java:159) at org.sonatype.scheduling.DefaultScheduledTask.call(DefaultScheduledTask.java:437) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:206) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) [INFO] Unable to read properties file, will force index regeneration [WARNING] Invalid grouping detected!, GroupId=groupA org.sonatype.nexus.proxy.repository.InvalidGroupingException: The group 'groupA' has a cyclic reference! Path to the cyclic reference: 'groupA/groupB'. at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.checkForCyclicReference(AbstractGroupRepository.java:425) at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.checkForCyclicReference(AbstractGroupRepository.java:433) at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.addMemberRepositoryId(AbstractGroupRepository.java:408) at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.setMemberRepositoryIds(AbstractGroupRepository.java:394) at org.sonatype.nexus.rest.groups.AbstractRepositoryGroupPlexusResource.updateRepositoryGroup(AbstractRepositoryGroupPlexusResource.java:163) at org.sonatype.nexus.rest.groups.AbstractRepositoryGroupPlexusResource.createOrUpdateRepositoryGroup(AbstractRepositoryGroupPlexusResource.java:139) at org.sonatype.nexus.rest.groups.RepositoryGroupPlexusResource.put(RepositoryGroupPlexusResource.java:164) at org.sonatype.plexus.rest.resource.RestletResource.storeRepresentation(RestletResource.java:327) at org.sonatype.nexus.rest.NexusRestletResource.storeRepresentation(NexusRestletResource.java:95) at org.restlet.resource.Resource.put(Resource.java:706) at org.restlet.resource.Resource.handlePut(Resource.java:603) at org.restlet.Finder.handle(Finder.java:359) at org.restlet.Filter.doHandle(Filter.java:150) at org.restlet.Filter.handle(Filter.java:195) at org.restlet.Router.handle(Router.java:504) at org.restlet.Filter.doHandle(Filter.java:150) at org.restlet.Filter.handle(Filter.java:195) at org.restlet.Router.handle(Router.java:504) at org.restlet.Filter.doHandle(Filter.java:150) at org.restlet.Filter.handle(Filter.java:195) at org.restlet.Filter.doHandle(Filter.java:150) at org.sonatype.plexus.rest.RetargetableRestlet.doHandle(RetargetableRestlet.java:39) at org.restlet.Filter.handle(Filter.java:195) at org.restlet.Filter.doHandle(Filter.java:150) at org.restlet.Filter.handle(Filter.java:195) at org.restlet.Filter.doHandle(Filter.java:150) at org.restlet.Filter.handle(Filter.java:195) at org.restlet.Filter.doHandle(Filter.java:150) at com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:130) at org.restlet.Filter.handle(Filter.java:195) at org.restlet.Filter.doHandle(Filter.java:150) at org.restlet.Filter.handle(Filter.java:195) at com.noelios.restlet.ChainHelper.handle(ChainHelper.java:124) at com.noelios.restlet.application.ApplicationHelper.handle(ApplicationHelper.java:112) at org.restlet.Application.handle(Application.java:341) at org.restlet.Filter.doHandle(Filter.java:150) at org.restlet.Filter.handle(Filter.java:195) at org.restlet.Router.handle(Router.java:504) at org.restlet.Filter.doHandle(Filter.java:150) at org.restlet.Filter.handle(Filter.java:195) at org.restlet.Router.handle(Router.java:504) at org.restlet.Filter.doHandle(Filter.java:150) at org.restlet.Filter.handle(Filter.java:195) at com.noelios.restlet.ChainHelper.handle(ChainHelper.java:124) at org.restlet.Component.handle(Component.java:673) at org.restlet.Server.handle(Server.java:331) at com.noelios.restlet.ServerHelper.handle(ServerHelper.java:68) at com.noelios.restlet.http.HttpServerHelper.handle(HttpServerHelper.java:147) at com.noelios.restlet.ext.servlet.ServerServlet.service(ServerServlet.java:881) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:547) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1359) at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61) at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108) at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137) at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:81) at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66) at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108) at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137) at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:81) at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66) at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:359) at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:275) at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:344) at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:272) at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:81) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1330) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:478) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:941) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:875) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110) at org.eclipse.jetty.server.Server.handle(Server.java:345) at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441) at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:936) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:801) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:224) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:51) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:586) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:44) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533) at java.lang.Thread.run(Thread.java:662) Result: org.sonatype.nexus.integrationtests.nexus977.Nexus977GroupOfGroupsCrudIT.cyclic() ===> SUCCESS {code}

    Sonatype JIRA | 5 years ago | Benjamin Hanzelmann
    org.sonatype.nexus.proxy.repository.InvalidGroupingException: The group 'groupA' has a cyclic reference! Path to the cyclic reference: 'groupA/groupB'.

    Root Cause Analysis

    1. org.sonatype.nexus.proxy.repository.InvalidGroupingException

      The group 'g1' has a cyclic reference! Path to the cyclic reference: 'g1/g3/g2'.

      at org.sonatype.nexus.proxy.repository.AbstractGroupRepository.checkForCyclicReference()
    2. ${project.groupId}:${project.artifactId}
      AbstractGroupRepository.setMemberRepositoryIds
      1. org.sonatype.nexus.proxy.repository.AbstractGroupRepository.checkForCyclicReference(AbstractGroupRepository.java:298)
      2. org.sonatype.nexus.proxy.repository.AbstractGroupRepository.checkForCyclicReference(AbstractGroupRepository.java:306)
      3. org.sonatype.nexus.proxy.repository.AbstractGroupRepository.checkForCyclicReference(AbstractGroupRepository.java:306)
      4. org.sonatype.nexus.proxy.repository.AbstractGroupRepository.addMemberRepositoryId(AbstractGroupRepository.java:290)
      5. org.sonatype.nexus.proxy.repository.AbstractGroupRepository.setMemberRepositoryIds(AbstractGroupRepository.java:272)
      5 frames
    3. Nexus Core
      RepositoryGroupPlexusResource.put
      1. org.sonatype.nexus.rest.groups.AbstractRepositoryGroupPlexusResource.updateRepositoryGroup(AbstractRepositoryGroupPlexusResource.java:149)
      2. org.sonatype.nexus.rest.groups.AbstractRepositoryGroupPlexusResource.createOrUpdateRepositoryGroup(AbstractRepositoryGroupPlexusResource.java:125)
      3. org.sonatype.nexus.rest.groups.RepositoryGroupPlexusResource.put(RepositoryGroupPlexusResource.java:159)
      3 frames
    4. ${project.groupId}:${project.artifactId}
      RestletResource.storeRepresentation
      1. org.sonatype.plexus.rest.resource.RestletResource.storeRepresentation(RestletResource.java:351)
      1 frame
    5. Nexus Core
      NexusRestletResource.storeRepresentation
      1. org.sonatype.nexus.rest.NexusRestletResource.storeRepresentation(NexusRestletResource.java:84)
      1 frame
    6. org.restlet.resource
      Resource.handlePut
      1. org.restlet.resource.Resource.put(Resource.java:706)
      2. org.restlet.resource.Resource.handlePut(Resource.java:603)
      2 frames
    7. org.restlet
      Filter.doHandle
      1. org.restlet.Finder.handle(Finder.java:359)
      2. org.restlet.Filter.doHandle(Filter.java:150)
      3. org.restlet.Filter.handle(Filter.java:195)
      4. org.restlet.Router.handle(Router.java:504)
      5. org.restlet.Filter.doHandle(Filter.java:150)
      6. org.restlet.Filter.handle(Filter.java:195)
      7. org.restlet.Router.handle(Router.java:504)
      8. org.restlet.Filter.doHandle(Filter.java:150)
      9. org.restlet.Filter.handle(Filter.java:195)
      10. org.restlet.Filter.doHandle(Filter.java:150)
      10 frames
    8. ${project.groupId}:${project.artifactId}
      RetargetableRestlet.doHandle
      1. org.sonatype.plexus.rest.RetargetableRestlet.doHandle(RetargetableRestlet.java:39)
      1 frame
    9. org.restlet
      Filter.doHandle
      1. org.restlet.Filter.handle(Filter.java:195)
      2. org.restlet.Filter.doHandle(Filter.java:150)
      3. org.restlet.Filter.handle(Filter.java:195)
      4. org.restlet.Filter.doHandle(Filter.java:150)
      5. org.restlet.Filter.handle(Filter.java:195)
      6. org.restlet.Filter.doHandle(Filter.java:150)
      6 frames
    10. com.noelios.restlet
      StatusFilter.doHandle
      1. com.noelios.restlet.StatusFilter.doHandle(StatusFilter.java:130)
      1 frame
    11. org.restlet
      Filter.handle
      1. org.restlet.Filter.handle(Filter.java:195)
      2. org.restlet.Filter.doHandle(Filter.java:150)
      3. org.restlet.Filter.handle(Filter.java:195)
      3 frames
    12. com.noelios.restlet
      ApplicationHelper.handle
      1. com.noelios.restlet.ChainHelper.handle(ChainHelper.java:124)
      2. com.noelios.restlet.application.ApplicationHelper.handle(ApplicationHelper.java:112)
      2 frames
    13. org.restlet
      Application.handle
      1. org.restlet.Application.handle(Application.java:341)
      1 frame
    14. org.restlet.ext
      WadlApplication.handle
      1. org.restlet.ext.wadl.WadlApplication.handle(WadlApplication.java:705)
      1 frame
    15. org.restlet
      Filter.handle
      1. org.restlet.Filter.doHandle(Filter.java:150)
      2. org.restlet.Filter.handle(Filter.java:195)
      3. org.restlet.Router.handle(Router.java:504)
      4. org.restlet.Filter.doHandle(Filter.java:150)
      5. org.restlet.Filter.handle(Filter.java:195)
      6. org.restlet.Router.handle(Router.java:504)
      7. org.restlet.Filter.doHandle(Filter.java:150)
      8. org.restlet.Filter.handle(Filter.java:195)
      8 frames
    16. com.noelios.restlet
      ChainHelper.handle
      1. com.noelios.restlet.ChainHelper.handle(ChainHelper.java:124)
      1 frame
    17. org.restlet
      Server.handle
      1. org.restlet.Component.handle(Component.java:673)
      2. org.restlet.Server.handle(Server.java:331)
      2 frames
    18. com.noelios.restlet
      ServerServlet.service
      1. com.noelios.restlet.ServerHelper.handle(ServerHelper.java:68)
      2. com.noelios.restlet.http.HttpServerHelper.handle(HttpServerHelper.java:147)
      3. com.noelios.restlet.ext.servlet.ServerServlet.service(ServerServlet.java:881)
      3 frames
    19. JavaServlet
      HttpServlet.service
      1. javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      1 frame
    20. Jetty Server
      ServletHandler$CachedChain.doFilter
      1. org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502)
      2. org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
      2 frames
    21. org.jsecurity.web
      OncePerRequestFilter.doFilter
      1. org.jsecurity.web.servlet.FilterChainWrapper.doFilter(FilterChainWrapper.java:52)
      2. org.jsecurity.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:105)
      3. org.jsecurity.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:135)
      4. org.jsecurity.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:180)
      5. org.jsecurity.web.servlet.FilterChainWrapper.doFilter(FilterChainWrapper.java:57)
      6. org.jsecurity.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:105)
      7. org.jsecurity.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:135)
      8. org.jsecurity.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:180)
      9. org.jsecurity.web.servlet.FilterChainWrapper.doFilter(FilterChainWrapper.java:57)
      10. org.jsecurity.web.servlet.JSecurityFilter.doFilterInternal(JSecurityFilter.java:382)
      11. org.jsecurity.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:180)
      11 frames
    22. Jetty Server
      SelectChannelEndPoint.run
      1. org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1148)
      2. org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:387)
      3. org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      4. org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      5. org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
      6. org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
      7. org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
      8. org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      9. org.mortbay.jetty.Server.handle(Server.java:326)
      10. org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:534)
      11. org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:879)
      12. org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:747)
      13. org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
      14. org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
      15. org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
      15 frames
    23. Jetty Util
      QueuedThreadPool$PoolThread.run
      1. org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)
      1 frame