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

GEOT-6529 Update Oracle JDBC driver #2832

Merged
merged 1 commit into from
Apr 29, 2020

Conversation

mprins
Copy link
Member

@mprins mprins commented Mar 9, 2020

Upgrade the Oracle JDBC driver to the latest version hosted on Maven Central, fix any deprecations caused by the driver upgrade.

Also factor out all Oracle deprecations, notably any use of:

  • oracle.sql.STRUCT
  • oracle.sql.ARRAY
  • oracle.sql.StructDescriptor
  • oracle.sql.ArrayDescriptor

Make sure to use the proper driver classname, which is oracle.jdbc.OracleDriver, as well as some javadoc fixes and some replacement of StringBuffer by StringBuilder for improved performance.

Ignore/Disable Oracle3DOnlineTest#testBBOX3DOutsideLine() as even in plain SQL it seems to fail

Add a note to use the proper oracle driver class name in the upgrade notes

see GEOT-6529

Geoserver followup: geoserver/geoserver#4119

Checklist

Reviewing is a process done by project maintainers, mostly on a volunteer basis. We try to keep the overhead as small as possible and appreciate if you help us to do so by completing the following items. Feel free to ask in a comment if you have troubles with any of them.

For all pull requests:

  • Confirm you have read the contribution guidelines
  • You have sent a Contribution Licence Agreement (CLA) as necessary (not required for small changes, e.g., fixing typos in documentation)
  • Make sure the first PR targets the master branch, eventual backports will be managed later. This can be ignored if the PR is fixing an issue that only happens in a specific branch, but not in newer ones.
  • The changes are not breaking the build in downstream projects using SNAPSHOT dependencies, GeoWebCache and GeoServer.

The following are required only for core and extension modules (they are welcomed, but not required, for unsupported modules):

  • There is an issue in Jira describing the bug/task/new feature (a notable exemptions is, changes not visible to end users). The ticket is for the GeoTools project, if the issue was found elsewhere it's a good practice to link to the origin ticket/issue.
  • The pull request contains changes related to a single objective. If multiple focuses cannot be avoided, each one is in its own commit and has a separate ticket describing it.
  • PR for bug fixes and small new features are presented as a single commit
  • Commit message must be in the form "[GEOT-XYZW] Title of the Jira ticket"
  • New unit tests have been added covering the changes
  • This PR passes all existing unit tests (test results will be reported by travis-ci after opening this PR)
  • This PR passes the QA checks (QA checks results will be reported by travis-ci after opening this PR)
  • Documentation has been updated accordingly.

Submitting the PR does not require you to check all items, but by the time it gets merged, they should be either satisfied or inapplicable.

@mprins mprins force-pushed the GEOT-6529_update_oracle_driver branch from 02bce59 to 88726cd Compare March 12, 2020 13:51
@mprins mprins changed the title WIP GEOT-6529 initial steps to update oracle driver WIP GEOT-6529 Update Oracle JDBC driver Mar 12, 2020
@mprins mprins force-pushed the GEOT-6529_update_oracle_driver branch 4 times, most recently from b16fe7c to cc675f1 Compare March 17, 2020 12:32
@mprins mprins changed the title WIP GEOT-6529 Update Oracle JDBC driver GEOT-6529 Update Oracle JDBC driver Mar 17, 2020
@mprins mprins marked this pull request as ready for review March 17, 2020 13:34
@mprins mprins requested a review from aaime March 17, 2020 13:34
Copy link
Member

@jodygarnett jodygarnett left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, I note some upgrade instructions will be needed for the geotools manual.

docs/user/build/install/ojdbc.rst Outdated Show resolved Hide resolved
docs/user/library/referencing/oracle.rst Show resolved Hide resolved
pom.xml Show resolved Hide resolved
@mprins mprins force-pushed the GEOT-6529_update_oracle_driver branch 2 times, most recently from 28f9001 to d1d7347 Compare March 19, 2020 09:38
@mprins
Copy link
Member Author

mprins commented Mar 23, 2020

I've sent in a new CLA for B3Partners

@mprins mprins force-pushed the GEOT-6529_update_oracle_driver branch 2 times, most recently from 68fd4ad to 8946eda Compare April 21, 2020 13:40
Also factor out all Oracle deprecations, notably any use of:

- oracle.sql.STRUCT
- oracle.sql.ARRAY
- oracle.sql.StructDescriptor
- oracle.sql.ArrayDescriptor

Make sure to use the proper driver classname, which is `oracle.jdbc.OracleDriver`,
as well as some javadoc fixes and some replacement of StringBuffer by StringBuilder for improved performance.

Ignore `Oracle3DOnlineTest#testBBOX3DOutsideLine()` as even in plain SQL it seems to fail

Add a note to use the proper oracle driver class name in the upgrade notes

Remove no longer useful user instructions for getting the oracle driver
@mprins mprins force-pushed the GEOT-6529_update_oracle_driver branch from 8946eda to 75c042a Compare April 23, 2020 10:42
@aaime aaime merged commit ef692e7 into geotools:master Apr 29, 2020
@aaime
Copy link
Member

aaime commented Apr 29, 2020

Merged, thanks!

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