Error after upgrade to 3.83 NoSuchBeanDefinitionException GroupFacet Qualifier("groupWriteFacet")

Hi,

After upgrading to Nexus 3.83.0-08, it fails to start with the following error:

ERROR [jetty-main-1]  *SYSTEM org.sonatype.nexus.self.hosted.repository.manager.RepositoryManagerImpl - Failed transition: NEW -> STARTED
org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.sonatype.nexus.repository.group.GroupFacet' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Qualifier("groupWriteFacet")}
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1889)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1406)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory$DependencyObjectProvider.getValue(DefaultListableBeanFactory.java:2190)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory$Jsr330Factory$Jsr330Provider.get(DefaultListableBeanFactory.java:2233)
	at org.sonatype.nexus.repository.docker.internal.datastore.recipe.DockerGroupRecipe.apply(DockerGroupRecipe.java:127)
	at org.sonatype.nexus.repository.Recipe.apply(Recipe.java:33)
	at org.sonatype.nexus.repository.manager.internal.BaseRepositoryManager.newRepository(BaseRepositoryManager.java:178)
	at org.sonatype.nexus.repository.manager.internal.BaseRepositoryManager.restoreRepositories(BaseRepositoryManager.java:264)
	at org.sonatype.nexus.repository.manager.internal.BaseRepositoryManager.doStart(BaseRepositoryManager.java:246)
	at org.sonatype.nexus.common.stateguard.StateGuardLifecycleSupport.start_aroundBody0(StateGuardLifecycleSupport.java:69)
	at org.sonatype.nexus.common.stateguard.StateGuardLifecycleSupport$AjcClosure1.run(StateGuardLifecycleSupport.java:1)
	at org.aspectj.runtime.reflect.JoinPointImpl.proceed(JoinPointImpl.java:164)
	at org.sonatype.nexus.common.stateguard.TransitionsAspect.lambda$0(TransitionsAspect.java:57)
	at org.sonatype.nexus.common.stateguard.StateGuard$TransitionImpl.run(StateGuard.java:217)
	at org.sonatype.nexus.common.stateguard.TransitionsAspect.aroundTransitionsMethod(TransitionsAspect.java:55)
	at org.sonatype.nexus.common.stateguard.StateGuardLifecycleSupport.start(StateGuardLifecycleSupport.java:68)
	at org.sonatype.nexus.extender.NexusLifecycleManager.startComponent(NexusLifecycleManager.java:154)
	at org.sonatype.nexus.extender.NexusLifecycleManager.to(NexusLifecycleManager.java:110)
	at org.sonatype.nexus.extender.internal.NexusServletContextListener.moveToPhase(NexusServletContextListener.java:113)
	at org.sonatype.nexus.extender.internal.NexusServletContextListener.contextInitialized(NexusServletContextListener.java:69)
	at org.eclipse.jetty.ee8.nested.ContextHandler.callContextInitialized(ContextHandler.java:786)
	at org.eclipse.jetty.ee8.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:516)
	at org.eclipse.jetty.ee8.nested.ContextHandler.contextInitialized(ContextHandler.java:735)
	at org.eclipse.jetty.ee8.servlet.ServletHandler.initialize(ServletHandler.java:629)
	at org.eclipse.jetty.ee8.servlet.ServletContextHandler.startContext(ServletContextHandler.java:311)
	at org.eclipse.jetty.ee8.webapp.WebAppContext.startWebapp(WebAppContext.java:1195)
	at org.eclipse.jetty.ee8.webapp.WebAppContext.startContext(WebAppContext.java:1165)
	at org.eclipse.jetty.ee8.nested.ContextHandler.doStartInContext(ContextHandler.java:626)
	at org.eclipse.jetty.server.handler.ContextHandler$ScopedContext.call(ContextHandler.java:1450)
	at org.eclipse.jetty.ee8.nested.ContextHandler.doStart(ContextHandler.java:615)
	at org.eclipse.jetty.ee8.servlet.ServletContextHandler.doStart(ServletContextHandler.java:243)
	at org.eclipse.jetty.ee8.webapp.WebAppContext.doStart(WebAppContext.java:502)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
	at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
	at org.eclipse.jetty.server.handler.ContextHandler.lambda$doStart$0(ContextHandler.java:757)
	at org.eclipse.jetty.server.handler.ContextHandler$ScopedContext.call(ContextHandler.java:1456)
	at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:757)
	at org.eclipse.jetty.ee8.nested.ContextHandler$CoreContextHandler.doStart(ContextHandler.java:2290)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
	at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
	at io.dropwizard.metrics.jetty12.AbstractInstrumentedHandler.doStart(AbstractInstrumentedHandler.java:149)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
	at org.eclipse.jetty.server.Server.start(Server.java:641)
	at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:120)
	at org.eclipse.jetty.server.Handler$Abstract.doStart(Handler.java:491)
	at org.eclipse.jetty.server.Server.doStart(Server.java:582)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:93)
	at org.sonatype.nexus.bootstrap.entrypoint.jetty.JettyServer$JettyMainThread.run(JettyServer.java:366)

Rolling back to 3.82 binaries works. Also note that the logged version is incorrect as it states

Started Sonatype Nexus COMMUNITY 3.82.0-08

while I would expect 3.83.0-08…

The download link is https://sonatype-download.global.ssl.fastly.net/repository/downloads-prod-group/3/nexus-3.83.0-08-linux-x86_64.tar.gz (md5 0acade8609fcb4d6d24ee59882cfcdd8, sha1 15a88ee4f57f76bfa8f4c41dc21b03501187aab3 and sha256 29ae07b8290f667973008551fa38d9d5cbc793855c01a70446d220bdc0cb8ac1)

Thanks for your help!

I found out it is related to bug Nexus v3.83.0-08 Startup Error · Issue #700 · sonatype/nexus-public · GitHub that was created around the same time I posted this message.

Did some tests and manually removing the docker repository from the database (docker_* and related repositories) allow to start the application and recreating the docker repos after do not seem to cause trouble, but I will wait for the fix…