apache / apache/arrow-java

[JAVA] flight-sql-jdbc-driver V16.0.0 shading relocates slf4j dependency

Open
#91 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
94
Forks
152
Avg merge
3d 16h
Merged PRs (30d)
11

Description

### Describe the bug, including details regarding any error messages, version, and platform.

When I upgrade to version 16.0.0, suddenly my @Slf4j annotation did no longer work. When I checked for manually creating a LoggerFactory, I noticed that the only imports Intellj could find were unter the path of:
import org.apache.arrow.driver.jdbc.shaded.*;

I then checked the pom.xml of the flight-sql-jdbc-driver and noticed the shading relocations you configured:

https://github.com/apache/arrow/blob/7cd9c6fbd313c9afa0673d85415a84fd199951c9/java/flight/flight-sql-jdbc-driver/pom.xml#L98

```

com.
org.apache.arrow.driver.jdbc.shaded.com.

com.sun.**

org.
org.apache.arrow.driver.jdbc.shaded.org.

org.apache.arrow.driver.jdbc.**
org.apache.arrow.flight.name
org.apache.arrow.flight.version
org.apache.arrow.flight.jdbc-driver.name
org.apache.arrow.flight.jdbc-driver.version

```

I am not an expert on the shading plugin of maven, but it seems to me it moves around all dependencies below the com. and org. pattern. Even if I exclude those dependencies from the flight-sql-jdbc-driver, it does not help.

If I go down to version 15.x.x it works again.

### Component(s)

Java

Contributor guide

Open the contributing guide

Research direction

Start in java/flight/flight-sql-jdbc-driver/pom.xml around the shading relocations linked in the issue, and compare the 16.0.0 configuration with the 15.x.x version. Check how the com. and org. patterns affect SLF4J and the @Slf4j imports. Done means the driver no longer unexpectedly relocates the user-facing logging dependency while retaining its intended shading.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.