[ 
https://issues.apache.org/jira/browse/HIVE-25701?focusedWorklogId=682571&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-682571
 ]

ASF GitHub Bot logged work on HIVE-25701:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 17/Nov/21 12:28
            Start Date: 17/Nov/21 12:28
    Worklog Time Spent: 10m 
      Work Description: zabetak closed pull request #2790:
URL: https://github.com/apache/hive/pull/2790


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 682571)
    Time Spent: 0.5h  (was: 20m)

> Declare JDBC drivers as runtime & optional dependencies
> -------------------------------------------------------
>
>                 Key: HIVE-25701
>                 URL: https://issues.apache.org/jira/browse/HIVE-25701
>             Project: Hive
>          Issue Type: Task
>          Components: Standalone Metastore, Testing Infrastructure
>            Reporter: Stamatis Zampetakis
>            Assignee: Stamatis Zampetakis
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Currently, we are using the following JDBC drivers in various Hive modules:
> * MariaDB
> * MySQL
> * Oracle
> * Postgres
> * MSSQL
> * Derby
> MariaDB, MySQL, and Oracle licenses are not compatible with Apache License 2 
> ([Category-X |https://www.apache.org/legal/resolved.html#category-x]) and in 
> the past we used various ways to circumvent licensing problems (see 
> HIVE-23284). Now, some of them appear as test scope dependency which is OKish 
> but in the near future may lead again to licensing problems.
> JDBC drivers are only needed at runtime so they could all be declared at 
> runtime scope. Moreover, Hive does not require a specific JDBC driver in 
> order to operate so they are all optional. 
> The goal of this issue is to declare every JDBC driver at runtime scope and 
> mark it as optional 
> ([ASF-optional|https://www.apache.org/legal/resolved.html#optional], 
> [maven-optional|https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html]).
>  
> This has the following advantages:
> * Eliminates the risk to write code which needs JDBC driver classes in order 
> to compile and potentially violate AL2.
> * Unifies the declaration of JDBC drivers making easier to add/remove some if 
> necessary.
> * Removes the need to use download-maven-plugin and other similar workarounds 
> to avoid licensing problems.
> * Simplifies the execution of tests using these drivers since now they are 
> added in the runtime classpath automatically by maven.
> * Projects with dependencies depending on Hive will not inherit any JDBC 
> driver by default.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to