Hi Pan,

Users who wish to utilize only one database and prefer not to use 
flink-connector-jdbc-${version}.jar + ${database-connector-driver}.jar should 
opt for option 1: flink-connector-jdbc-core-${version}.jar + 
flink-connector-jdbc-mysql-${version}.jar + ${database-connector-driver}.jar.

We could introduce a flink-connector-jdbc-mysql-${version}-fat.jar that 
includes flink-connector-jdbc-core-${version}.jar, but this could create 
potential challenges. This approach could lead to duplicate classes if a user 
intends to read from MySQL and write to PostgreSQL while utilizing both fat 
JARs simultaneously.

To maintain clarity and minimize conflicts, we're currently leaning towards 
maintaining the existing structure, where flink-connector-jdbc-${version}.jar 
remains shaded for simplicity, encompassing the core functionality and all 
database-related features within the same JAR.

Please let me know if you require further clarification on any aspect.

Best regards,
Joao Boto



On 2024/04/25 11:41:00 Yuepeng Pan wrote:
> Hi, Boto.
> 
> Thanks for your driving it !
> +1 from me on the proposal.
> 
> 
> 
> 
> Maybe we need to ensure that a simple usage method is provided to users after 
> the refactoring.
> 
> In the current situation, which supported database does the user intend to 
> use,
> 
> Users only need to add the flink-connector-jdbc-${version}.jar + 
> ${database-connector-driver}.jar
> 
>  into the dependencies, which could be used out of the box.
> 
> I noticed in FLIP that we will perform shadow related operations to ensure 
> 
> the same usage and semantics as before.
> 
> So, if users only want to use one type of database (eg. MySQL), 
> 
> what forms would we plan to provide jars in?
> 
> For example: 
> 
> 1. flink-connector-jdbc-core-${version}.jar + 
> flink-connector-jdbc-mysql-${version}.jar + ${database-connector-driver}.jar.
> 
> 2. Or flink-connector-jdbc-mysql-${version}.jar + 
> ${database-connector-driver}.jar.
> 
> 3. Or a another different concise way?
> 
> 
> 
> 
> Thank you.
> 
> Best, 
> Yuepeng Pan
> 
> 
> 
> 
> At 2024-04-25 16:54:13, "Joao Boto" <b...@boto.pro> wrote:
> >Hi all,
> >
> >I'd like to start a discussion on FLIP-449: Reorganization of
> >flink-connector-jdbc [1].
> >As Flink continues to evolve, we've noticed an increasing level of
> >complexity within the JDBC connector.
> >The proposed solution is to address this complexity by separating the core
> >functionality from individual database components, thereby streamlining the
> >structure into distinct modules.
> >
> >Looking forward to your feedback and suggestions, thanks.
> >Best regards,
> >Joao Boto
> >
> >[1]
> >https://cwiki.apache.org/confluence/display/FLINK/FLIP-449%3A+Reorganization+of+flink-connector-jdbc
> 

Reply via email to