Re: reg license implications in implementing/using the JDBC spec - Mailing list pgsql-jdbc

From Dave Cramer
Subject Re: reg license implications in implementing/using the JDBC spec
Date
Msg-id CADK3HHJE_YWP5rqObAsN0AYTJ2UTD9OKoz-=-+_OEDx5dkg8+w@mail.gmail.com
Whole thread Raw
In response to Re: reg license implications in implementing/using the JDBC spec  (Mark Rotteveel <mark@lawinegevaar.nl>)
List pgsql-jdbc

On 29 September 2016 at 14:01, Mark Rotteveel <mark@lawinegevaar.nl> wrote:
On 2016-09-29 02:44, Prasad Varakur wrote:
Hi,
I am trying to understand how far the pgsql-jdbc driver is compliant
with the JDBC-spec license. First couple of pages of the spec has
license terms:

http://download.oracle.com/otn-pub/jcp/jdbc-4_1-mrel-spec/jdbc4.1-fr-spec.pdf

   - clause(1) seems to grant license for evaluation purpose

Clause 1 is for when **you** (as a user of JDBC) want to read the specification (or when you consider implementing). Clause 2 is only for implementors and distributors

   - clause(2) seems to grant license for compliant implementations as
defined by (a)-(c), which has to be a fully compliant implementation
which can pass the JDBC-TCK.

As I understand, the pgsql-jdbc is not evaluation, nor is a fully
compliant implementation. Documentation also states, it has postgres
specific extensions to the spec.

Postgres specific extensions are allowed as long those extensions are not in the "Licensor Name Space" (ie java.sql, javax.sql, com.sun, sun, oracle, com.oracle etc). I'm not sure a fully compliant JDBC driver actually exists (not even the Oracle driver isn't as far as I am aware). In my opinion the spirit of the license is likely more to prevent drivers with extremely differing behavior which would make JDBC almost impossible to use as a database independent API.

as a data point I'm pretty sure the MySql driver is not compliant either. 



With this, my Qs are:
  1) Is pgsql-jdbc a legitimate implementation of JDBC-spec,
conforming to the JDBC license terms? If so, how?

Technically probably not (just like most JDBC drivers). Getting access to the TCK is an annoying bureaucracy for open source projects or individuals, and expensive for companies (especially because for unclear reasons it is part of the JavaSE TCK instead of a separate TCK).

  2) Does postgres-JDBC Group obtained special license from
Oracle/jdbc-Spec-owner for this implementation of pgsql-jdbc.

Can't answer that, but I assume not very likely.

  3) Are users of  pgsql-jdbc also considered violating
jdbc-spec-license terms, if pgsql-jdbc  is not a legitimate
implementation of the JDBC-spec.

Not likely, because of clause 3, and the fact that clause 2 only applies to entities **implementing** (or distributing) a JDBC driver, not to end users.

Disclaimer: IANAL.

However in the broad picture: in the past (almost) 20 years, there have been no legal actions (or threats) against JDBC driver vendors, which pretty much indicates that the status quo is considered acceptable (and Oracle is not really known to be non-litigious). Also consider the fact that it is in the best interest of Oracle to have a good eco-system of database drivers.

The language of the license is probably more to prevent a "Microsoft Java" or a "Google Android Java", or in other words: people taking a lot of ideas set forth in the spec, but not intending to adhere to it in all aspects.

In short: don't worry.

Mark

PS I sent this to the OP by private email earlier; would it be possible to configure the list to use the list address as a Reply-To?

Not my list to configure...



 



--
Sent via pgsql-jdbc mailing list (pgsql-jdbc@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-jdbc

pgsql-jdbc by date:

Previous
From: Mark Rotteveel
Date:
Subject: Re: reg license implications in implementing/using the JDBCspec
Next
From: Prasad Varakur
Date:
Subject: Re: reg license implications in implementing/using the JDBC spec