Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/touk/nussknacker-flink-compatibility

Additional code needed for using Nussknacker with different Flink versions
https://github.com/touk/nussknacker-flink-compatibility

flink scala

Last synced: 2 days ago
JSON representation

Additional code needed for using Nussknacker with different Flink versions

Awesome Lists containing this project

README

        

# Running Nussknacker with older Flink versions
Standard [Nussknacker](https://github.com/touk/nussknacker) distribution works for (more or less) latest Flink version.
However, Flink upgrade can be fairly complex process for large deployments. Most of Nussknacker code is based on stable Flink API, so changes required to run against older Flink version are usually relatively small.

This repository contains code that can be used to prepare custom [model](https://nussknacker.io/API.html) and [process engine](https://nussknacker.io/Engines.html) and run older Flink cluster (e.g. 1.14) with newest Nussknacker.

Each supported Flink version (e.g. 1.14) comes with two modules:
- model - additional classes/changes that need to be put into model
- manager - changes which have to be made in ProcessManager

Following tests will be provided to check if all needed changes are found:
- GenericItSpec based on [generic model test](https://github.com/TouK/nussknacker/blob/staging/engine/flink/generic/src/test/scala/pl/touk/nussknacker/genericmodel/GenericItSpec.scala)
- TODO: integration test to check ProcessManager implementation

Additionally, in this repo you can find out classes that can help in running our testing framework with lower Flink's version - see `flink16/test-util` module.