[
https://issues.apache.org/jira/browse/NIFI-4864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16395794#comment-16395794
]
ASF GitHub Bot commented on NIFI-4864:
--------------------------------------
Github user bbende commented on the issue:
https://github.com/apache/nifi/pull/2470
@zenfenan this seems to be working well, I had a few minor changes I posted
here:
https://github.com/bbende/nifi/commits/NIFI-4864
If you are good with that last commit I made then I will go ahead and merge
this.
To summarize my changes...
- Changed to using StringUtils.eqausl(oldFingerprintg, newFingerprint)
because its possible old fingerprint is null or empty and we would still want
to replace it with the new one if we have a new one
- Made the reload method synchronized
- Removed a the has/get/set fingerprint methods from the interface to try
and keep all the fingerprint logic inside of AbstractConfiguredComponent
> Additional Resources property pointing at a directory won't find new JARs
> -------------------------------------------------------------------------
>
> Key: NIFI-4864
> URL: https://issues.apache.org/jira/browse/NIFI-4864
> Project: Apache NiFi
> Issue Type: Bug
> Affects Versions: 1.2.0, 1.3.0, 1.4.0, 1.5.0
> Reporter: Bryan Bende
> Assignee: Sivaprasanna Sethuraman
> Priority: Minor
>
> If you have a processor/Controller Service/Reporting Task that has a property
> with dynamicallyModifiesClasspath(true) and you set the value to a directory,
> the resources in that directory will only be calculated when that property
> changes. This means if you added JARs to the directory later, and stopped and
> started your processor, those new JARs still won't be available. You would
> have to change the property to a new directory, or back and forth to some
> other directory, to force a recalculation.
> The setProperties method in AbstractConfiguredComponent is where it looks at
> incoming property changes and determines if any were for classpath related
> properties and then calls reload accordingly.
> We would need to consider the case where setProperties is never even being
> called, someone just stops and starts the processor and would want to pick up
> any new JARs added.
> A possible solution might be to computer some kind of hash/fingerprint of the
> URLs each time reload is called, and then when starting the processor we
> could recompute the fingerprint and compare it to the previous one. If they
> are different then we call reload before starting the component.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)