Mark Payne created NIFI-10682:
---------------------------------

             Summary: When Ghosted Component reloaded, it may not evaluate 
parameters
                 Key: NIFI-10682
                 URL: https://issues.apache.org/jira/browse/NIFI-10682
             Project: Apache NiFi
          Issue Type: Bug
          Components: Core Framework
            Reporter: Mark Payne
            Assignee: Mark Payne


On startup, if the flow indicates that NiFi should load version X of a 
component, and Version X is not available, it will load the version that is 
available - if exactly 1 version does exist. But if 0 versions or multiple 
versions exist, it will not load the component at all. Instead, it will make 
the component "Ghosted" and unusable.

When this happens, the component's properties are all marked sensitive, because 
we are unable to instantiate the component in order to check the sensitivity of 
components. This is very much intentional.

We also offer the ability to Change Version, if multiple versions do exist, or 
if a new nar is added to the auto-loaded extensions directory. However, once 
this happens, the component is not evaluating Parameters properly.

To replicate:
 # Create an SSLContext Service. Configure using parameters for keystore and 
truststore.

2. Shutdown

3. Copy in lib from other version of nifi for ssl-context-service-nar

4. Update flow.json.gz to point to wrong version of sslcontextservice (for 
example change version 1.18.0 to 1.5.0, which does not exist in the 
distribution)

5. Restart

6. Service is now invalid. Change Version to valid version.

7. The controller service will be invalid. Configure it and click Apply. This 
will re-run validation.

8. Enable the service.

9. The Controller Service will now throw Exceptions and remain in an Enabling 
state.

Even though the Validation is performed properly, the parameters are not 
properly evaluated when attempting to use the component.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to