Uploaded image for project: 'AppFormer'
  1. AppFormer
  2. AF-275

Intellij git dir corrupted: NoSuchElementException in JGitFileSystem should have a better error message

    XMLWordPrintable

Details

    • Task
    • Resolution: Done
    • Major
    • None
    • None
    • None
    • None
    • NEW
    • NEW

    Description

      Some of our developers, contributors and users (such as Geoffrey, users (https://developer.jboss.org/thread/263519?start=0&tstart=0) and other users(http://stackoverflow.com/questions/33051585/installation-of-kie-drools-wb-distribution-wars-6-3-0-final-wildfly8)
      get this arcane error message:

      ERROR [org.jboss.msc.service.fail] MSC000001: Failed to start service jboss.deployment.unit."ROOT.war".WeldStartService: org.jboss.msc.service.StartException in service jboss.deployment.unit."ROOT.war".WeldStartService: Failed to start service
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_71]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_71]
      	at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_71]
      Caused by: org.jboss.weld.exceptions.DeploymentException: Exception List with 1 exceptions:
      Exception 0 :
      org.jboss.weld.exceptions.WeldException: WELD-000049: Unable to invoke public void org.kie.uberfire.social.activities.server.SocialUserPersistenceProducer.setup() on org.kie.uberfire.social.activities.server.SocialUserPersistenceProducer@1fb6f5d1
      	at org.jboss.weld.injection.producer.DefaultLifecycleCallbackInvoker.invokeMethods(DefaultLifecycleCallbackInvoker.java:91)
      	at org.jboss.weld.injection.producer.DefaultLifecycleCallbackInvoker.postConstruct(DefaultLifecycleCallbackInvoker.java:72)
      	at org.jboss.weld.injection.producer.BasicInjectionTarget.postConstruct(BasicInjectionTarget.java:95)
      	at org.jboss.weld.injection.producer.BeanInjectionTarget.postConstruct(BeanInjectionTarget.java:63)
      	at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:162)
      	at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:96)
      	at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:98)
      	at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:78)
      	at org.kie.uberfire.social.activities.server.SocialUserPersistenceProducer$Proxy$_$$_WeldClientProxy.toString(Unknown Source)
      	at org.uberfire.backend.server.cdi.SystemConfigProducer.runPostConstruct(SystemConfigProducer.java:162)
      	at org.uberfire.backend.server.cdi.SystemConfigProducer.afterDeploymentValidation(SystemConfigProducer.java:143)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:497)
      	at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:93)
      	at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:266)
      	at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:125)
      	at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:253)
      	at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:232)
      	at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:169)
      	at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:128)
      	at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:102)
      	at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:63)
      	at org.jboss.weld.bootstrap.events.AbstractDeploymentContainerEvent.fire(AbstractDeploymentContainerEvent.java:35)
      	at org.jboss.weld.bootstrap.events.AfterDeploymentValidationImpl.fire(AfterDeploymentValidationImpl.java:28)
      	at org.jboss.weld.bootstrap.WeldStartup.validateBeans(WeldStartup.java:396)
      	at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:85)
      	at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:93)
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      Caused by: java.lang.reflect.InvocationTargetException
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:497)
      	at org.jboss.weld.injection.producer.DefaultLifecycleCallbackInvoker.invokeMethods(DefaultLifecycleCallbackInvoker.java:89)
      	... 33 more
      Caused by: java.lang.RuntimeException: Exception cleaning and unsetting batch mode on FS.
      	at org.uberfire.io.impl.AbstractIOService.endBatch(AbstractIOService.java:173)
      	at org.kie.uberfire.social.activities.persistence.SocialUserCachePersistence.syncSocialUsers(SocialUserCachePersistence.java:72)
      	at org.kie.uberfire.social.activities.persistence.SocialUserCachePersistence.setup(SocialUserCachePersistence.java:62)
      	at org.kie.uberfire.social.activities.server.SocialUserPersistenceProducer.setupSocialUserPersistenceAPI(SocialUserPersistenceProducer.java:97)
      	at org.kie.uberfire.social.activities.server.SocialUserPersistenceProducer.setup(SocialUserPersistenceProducer.java:87)
      	... 38 more
      Caused by: java.util.NoSuchElementException
      	at java.util.ArrayList$Itr.next(ArrayList.java:854)
      	at org.uberfire.java.nio.fs.jgit.JGitFileSystem$1$1.next(JGitFileSystem.java:194)
      	at org.uberfire.java.nio.fs.jgit.JGitFileSystem$1$1.next(JGitFileSystem.java:173)
      	at org.uberfire.io.impl.AbstractIOService.unsetBatchModeOn(AbstractIOService.java:210)
      	at org.uberfire.io.impl.AbstractIOService.cleanUpAndUnsetBatchModeOnFileSystems(AbstractIOService.java:185)
      	at org.uberfire.io.impl.AbstractIOService.endBatch(AbstractIOService.java:171)
      	... 42 more
      
      	at org.jboss.weld.bootstrap.events.AbstractDeploymentContainerEvent.fire(AbstractDeploymentContainerEvent.java:37)
      	at org.jboss.weld.bootstrap.events.AfterDeploymentValidationImpl.fire(AfterDeploymentValidationImpl.java:28)
      	at org.jboss.weld.bootstrap.WeldStartup.validateBeans(WeldStartup.java:396)
      	at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:85)
      	at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:93)
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
      	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
      	... 3 more
      

      which is magically solvable by specifying something like "-Dorg.uberfire.nio.git.dir=/tmp/x".

      During bootstrap, Uberfire should have a check to detect the invalid state above and the error message of that exception should mention the -Dorg.uberfire.nio.git.dir workaround.

        if (...) {
           throw new IllegalStateException("The gitnio directory (" + gitnioDir + ") is being hogged by IntelliJ or something else.\n"
                 + "Consider putting it in a different directory with for example \"-Dorg.uberfire.nio.git.dir=/tmp/foo\".");
        }
      

      Attachments

        Issue Links

          Activity

            People

              eignatow Eder Ignatowicz
              gdesmet@redhat.com Geoffrey De Smet (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: