Uploaded image for project: 'Apache NiFi'
  1. Apache NiFi
  2. NIFI-6844

Unable to update NiFi Variables despite stopping all processors

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • 1.10.0
    • None
    • Variable Registry
    • None

    Description

      I am giving NiFi-1.10.0 a spin ((I use nifi-1.7.1 in production) and i used the rest-api to create my "graph/flows" in nifi with several variables, connections, controllers etc. All seemed to work well until i tried updating (modifying) one of the variables.

      ```
      Unable to complete variable update request: Failed to update Variable Registry because failed while performing step: Applying updates to Variable Registry
      ```

      On inspecting the logs, I see:

      nifi-one-dot-ten              | 2019-11-05 15:25:33,585 INFO [Variable Registry Update Thread] o.a.nifi.web.api.ProcessGroupResource In order to update Variable Registry for Process Group with ID 3c1cf99d-016e-1000-0d8a-e3acb2fdad45, Disabling Controller Services
      nifi-one-dot-ten              | 2019-11-05 15:25:33,585 INFO [Variable Registry Update Thread] o.a.nifi.web.api.ProcessGroupResource In order to update Variable Registry for Process Group with ID 3c1cf99d-016e-1000-0d8a-e3acb2fdad45, Applying updates to Variable Registry
      nifi-one-dot-ten              | 2019-11-05 15:25:33,587 ERROR [Variable Registry Update Thread] o.a.nifi.web.api.ProcessGroupResource Failed to update variable registry for Process Group with ID 3c1cf99d-016e-1000-0d8a-e3acb2fdad45
      nifi-one-dot-ten              | java.lang.IllegalStateException: Cannot update variable 'kafka_brokers' because it is referenced by 1 components that are currently running.
      nifi-one-dot-ten              | 	at org.apache.nifi.groups.StandardProcessGroup.verifyCanUpdateVariables(StandardProcessGroup.java:3058)
      nifi-one-dot-ten              | 	at org.apache.nifi.groups.StandardProcessGroup.setVariables(StandardProcessGroup.java:3168)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.dao.impl.StandardProcessGroupDAO.updateVariableRegistry(StandardProcessGroupDAO.java:433)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.dao.impl.StandardProcessGroupDAO$$FastClassBySpringCGLIB$$10a99b47.invoke(<generated>)
      nifi-one-dot-ten              | 	at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
      nifi-one-dot-ten              | 	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:736)
      nifi-one-dot-ten              | 	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
      nifi-one-dot-ten              | 	at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:84)
      nifi-one-dot-ten              | 	at org.apache.nifi.audit.ProcessGroupAuditor.updateVariableRegistryAdvice(ProcessGroupAuditor.java:296)
      nifi-one-dot-ten              | 	at sun.reflect.GeneratedMethodAccessor441.invoke(Unknown Source)
      nifi-one-dot-ten              | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      nifi-one-dot-ten              | 	at java.lang.reflect.Method.invoke(Method.java:498)
      nifi-one-dot-ten              | 	at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:627)
      nifi-one-dot-ten              | 	at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:616)
      nifi-one-dot-ten              | 	at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
      nifi-one-dot-ten              | 	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:168)
      nifi-one-dot-ten              | 	at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
      nifi-one-dot-ten              | 	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
      nifi-one-dot-ten              | 	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:671)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.dao.impl.StandardProcessGroupDAO$$EnhancerBySpringCGLIB$$2ace06fd.updateVariableRegistry(<generated>)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.StandardNiFiServiceFacade.lambda$updateVariableRegistry$35(StandardNiFiServiceFacade.java:989)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.StandardNiFiServiceFacade$1.update(StandardNiFiServiceFacade.java:755)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.revision.NaiveRevisionManager.updateRevision(NaiveRevisionManager.java:117)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.StandardNiFiServiceFacade.updateComponent(StandardNiFiServiceFacade.java:751)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.StandardNiFiServiceFacade.updateVariableRegistry(StandardNiFiServiceFacade.java:987)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.StandardNiFiServiceFacade$$FastClassBySpringCGLIB$$358780e0.invoke(<generated>)
      nifi-one-dot-ten              | 	at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
      nifi-one-dot-ten              | 	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:736)
      nifi-one-dot-ten              | 	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
      nifi-one-dot-ten              | 	at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:84)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.NiFiServiceFacadeLock.proceedWithWriteLock(NiFiServiceFacadeLock.java:179)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.NiFiServiceFacadeLock.updateLock(NiFiServiceFacadeLock.java:66)
      nifi-one-dot-ten              | 	at sun.reflect.GeneratedMethodAccessor404.invoke(Unknown Source)
      nifi-one-dot-ten              | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      nifi-one-dot-ten              | 	at java.lang.reflect.Method.invoke(Method.java:498)
      nifi-one-dot-ten              | 	at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:627)
      nifi-one-dot-ten              | 	at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:616)
      nifi-one-dot-ten              | 	at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
      nifi-one-dot-ten              | 	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
      nifi-one-dot-ten              | 	at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
      nifi-one-dot-ten              | 	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
      nifi-one-dot-ten              | 	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:671)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.StandardNiFiServiceFacade$$EnhancerBySpringCGLIB$$9e914710.updateVariableRegistry(<generated>)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.api.ProcessGroupResource$3.lambda$run$2(ProcessGroupResource.java:1269)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.api.ProcessGroupResource.performUpdateVariableRegistryStep(ProcessGroupResource.java:1325)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.api.ProcessGroupResource.access$000(ProcessGroupResource.java:180)
      nifi-one-dot-ten              | 	at org.apache.nifi.web.api.ProcessGroupResource$3.run(ProcessGroupResource.java:1267)
      nifi-one-dot-ten              | 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      nifi-one-dot-ten              | 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      nifi-one-dot-ten              | 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      nifi-one-dot-ten              | 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      nifi-one-dot-ten              | 	at java.lang.Thread.run(Thread.java:748)
      
      

      I am pretty sure I had stopped ALL the processors and controller services. I even went as far as disabling everything just to see if there is an something referencing the registry. But I still received the same issue.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              PlatosMoron Advith Nagappa
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: