AbsaOSS / AbsaOSS/spline-spark-agent

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

Aperta
#604 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Tech debt
Lingua principale
Scala
Stelle
210
Fork
102
Merge medio
1g 1h
PR unite (30g)
1

Descrizione

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.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.