Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Oracle JOOQ open source works anyway? #8218

Closed
nbon12 opened this issue Jan 14, 2019 · 1 comment
Closed

Oracle JOOQ open source works anyway? #8218

nbon12 opened this issue Jan 14, 2019 · 1 comment

Comments

@nbon12
Copy link

nbon12 commented Jan 14, 2019

Expected behavior and actual behavior:

I noticed jooq.org says Open Source version is not likely to work with Oracle, However I am able to make queries using JOOQ to an Oracle database, and I am able to specify driver=oracle.jdbc.OracleDriver in the codegen plugin.

  • Why are there 274 mentions of "Oracle" in the release notes? @lukaseder
  • What can I expect to happen when using Oracle with open source JOOQ? Which part of the code won't work?
  • What exactly is "missing" from the open-source version?

Steps to reproduce the problem

Versions:

  • jOOQ:
org.springframework.boot spring-boot-starter-jooq 1.3.5.RELEASE - Java: 1.8.65 - Database (include vendor): Oracle - OS: Windows - JDBC Driver (include name if inofficial driver): com.oracle ojdbc6 11.2.0.3
@lukaseder
Copy link
Member

Thank you very much for your enquiry

I noticed jooq.org says Open Source version is not likely to work with Oracle, However I am able to make queries using JOOQ to an Oracle database, and I am able to specify driver=oracle.jdbc.OracleDriver in the codegen plugin.

Yes, you can get "this far" with the Open Source Edition, mostly because the various SQL dialects are very similar, and JDBC is quite a good API. We didn't include any logic that actively prevents using jOOQ with commercial databases. But from 10 years of experience working around an incredible amount of weird vendor specific edge cases, I'm positive that the type of query you can run on Oracle with the jOOQ Open Source Edition is very primitive. Some very simple examples that won't work:

  • No support for the DUAL table
  • No support for Oracle's flavour of LIMIT .. OFFSET
  • Wrong binding of DATE columns
  • Many many more. Try nesting unions, joins, CTE and other clauses in various ways.

Why are there 274 mentions of "Oracle" in the release notes?

The release notes are for all editions together

What can I expect to happen when using Oracle with open source JOOQ? Which part of the code won't work?

Random parts, and the parts you thought were working will break again in the next release, because we (obviously) don't integration test the jOOQ Open Source Edition with Oracle

What exactly is "missing" from the open-source version?

All the various driver logic required for jOOQ to work properly on commercial databases. Plus in the future, we'll develop commercial only features, such as the new procedural API (#6475) and many more.

I hope this helps

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants