AbsaOSS / AbsaOSS/spline-spark-agent

Change the POM and CD configs to make `agent-core` Spark specific

Offen
#604 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Tech debt
Vorherrschende Sprache
Scala
Sterne
210
Forks
102
Ø Merge
1 T. 1 Std.
Gemergte PRs (30 T.)
1

Beschreibung

Universal Spark version independent `agent-core` keeps making problems in transient dependency management.
We need to return to the concept of separate core build per major Spark version controlled by Maven profiles.
We could use Maven classifier to distinguish between versions.

https://www.baeldung.com/maven-artifact-classifiers

Reasoning:
1. No more `MethodNotFoundException` and other linkage errors because of binary incompatibility in transient dependencies of Spline and Spark
2. Avoiding dependency shading (e.g. `json4s`, see #602) that complicates running code in the local development mode and debugging
3. Clean and unambiguous dependencies and easy profile switching makes the development process easier and less error prone, thus more efficient.
4. The project structure would allow for solving potential breaking API changes in future Spark versions easier with ability to use additional Spark version specific source directories and adapters if there is a need for.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.