-
Notifications
You must be signed in to change notification settings - Fork 6
Breaking Changes in Apache NiFi 2.x
In Apache NiFi 2.x, a number of previously deprecated components (processors, controller services, and reporting tasks) and features have been removed. For some of these components, alternatives are available in 1.x versions; for others, there are no direct replacements.
A list of all deprecated components, features, and available alternatives can be found on the Apache NiFi wiki page here.
The table below highlights changes in specific features and components and suggests actions to take for them before upgrading to 2.x. Some changes may require manual intervention, while others can be automated using provided upgrade scripts.
| Component or feature | Changes | Description | Action type | Actions |
|---|---|---|---|---|
| JoltTransformJSON | Coordinates changed, properties renamed. | JoltTransformJSON has been moved to the nifi-jolt-nar NAR, and its properties have been renamed (e.g., jolt-spec to Jolt Specification, etc.) in 2.x. |
Automated | Ensure that during configuration import, the flow definition is upgraded using the upgrade scripts. |
| DistributedMapCacheServer | Component renamed. | This component was renamed to MapCacheServer in 2.x. |
Automated | Ensure that during configuration import, the flow definition is upgraded using the upgrade scripts. |
| DistributedSetCacheServer | Component renamed. | This component was renamed to SetCacheServer in 2.x. |
Automated | Ensure that during configuration import, the flow definition is upgraded using the upgrade scripts. |
| DistributedMapCacheClientService | Component renamed. | This component was renamed to MapCacheClientService in 2.x. |
Automated | Ensure that during configuration import, the flow definition is upgraded using the upgrade scripts. |
| DistributedSetCacheClientService | Component renamed. | This component was renamed to SetCacheClientService in 2.x. |
Automated | Ensure that during configuration import, the flow definition is upgraded using the upgrade scripts. |
| Kafka-related components (ConsumeKafka_2_6, PublishKafka_2_6, etc.) | Replaced by new components: ConsumeKafka/PublishKafka + Kafka3ConnectionService. | Apache NiFi 2.x introduces completely new components as replacements. Old components have been removed. Old NARs do not work on 2.x, and new NARs do not work on 1.x. | Manual (requires >=2.x) |
|
| Variables | Removed in 2.x | Parameter Contexts (PCs) should be used instead of variables. PCs are available since 1.10. | Manual (requires >=1.10) |
|
| ConvertJSONToSql | Removed in 2.x | Use RecordReader with PutDatabaseRecord or PutSQLRecord instead. | Manual | Update the flow to use new components:
|
Proxy Host and Proxy Port properties in InvokeHTTP processor |
Removed in 2.x | Starting from 1.18.0, the Proxy Configuration Service property replaces the Proxy Host and Proxy Port properties in the InvokeHTTP processor. In 2.x, Proxy Host and Proxy Port properties were removed. |
Manual (requires >=1.18.0) | Update the flow to use the new property:
|
| Other components/features with alternatives in the Apache NiFi wiki. | Deprecated component/feature removed in 2.x | You should use the alternative component/feature listed on the wiki instead. | Manual | Update the flow to use new components/features:
|
| Other components without alternatives in the Apache NiFi wiki. | Deprecated component removed in 2.x | The component was removed, possibly without replacement. | Manual | Research if any alternatives can be used instead. If not, create a custom component. |
To help identify issues when upgrading to 2.x, the Upgrade Advisor was created. Upgrade Advisor is a script that generates a report listing all deprecated components and features found in exported NiFi configurations.