Page properties |
---|
Target release | 0.4.0 |
---|
Epic | |
---|
Document status | |
---|
Document owner | Matt Gilman |
---|
Designer | |
---|
Developers | |
---|
QA | |
---|
|
Goals
- Run multiple versions of the same processor, controller service, or reporting task in the same NiFi instance
Background and strategic fit
When extensions (processors, controller services, and reporting tasks) are discovered, its Class name is used to map to the ClassLoader it was discovered in. This is may be too limiting however in that it does not support running multiple versions of the same processor in a single NiFi instance. This capability would be required to support feeding different versions of Hadoop as noted in NIFI-925.
Assumptions
- Different versions of the same extension could not be bundled in the same NAR
Requirements
# | Title | User Story | Importance | Notes |
---|
1 | Allow developer to tag an extension with a label | | | Specified by an annotation that would be inspected when the component is discovered? |
2 | Identify an extensions ClassLoader using it's Class name and label | | | Existing components (prior to this change) would have a blank label |
3 | The extensions label will need to be persisted in the flow.xml | | | |
4 | The extensions label will need to be rendered in the New Processor/Controller Service/Reporting Task dialog | | | |
5 | The extensions label should be rendered in the UI | | | On the processor node on the canvas or in the table where we show controller services and reporting tasks |
User interaction and design
Questions
Below is a list of questions to be addressed as a result of this requirements document:
Not Doing