FME Server System Database hosted Oracle

SteveatSafe
SteveatSafe
  • Updated

FME Version

  • FME 2021.0

Information on the suitable Oracle Database JDBC drivers for FME Server when System Database is hosted on an Oracle Database. (Aug 2021)
 

Introduction

FME Server System Database can be hosted in PostgreSQL, SQL Server, & Oracle.  FME Server ships the necessary JDBC Drivers for PostgreSQL & SQL Server, but not for Oracle.  We provide information in our Admin Documentation on how to change the database provider here.  We also mention a note on compatible Oracle Database JDBC Drivers:  
 

If using an Oracle database server, you must obtain the Oracle Database JDBC driver. Driver versions recommended: 12.1 (ojdbc7.jar), 12.2 (ojdbc8.jar), 18.3 (ojdbc8.jar), 19.3 (ojdbc8.jar). Driver versions not recommended: 19.6, 19.7, all ojdbc10.jar versions. For more information, see Oracle's JDBC and UPC Downloads page.


This article intends to share some ad-hoc testing that has been performed by Safe Support but not officially part of our Quality Assurance Testing. 

The following tests were performed using FME Server 2019.2 against an Oracle 18c Database.

The following Oracle Database JDBC Drivers PASSED:

  • 12.1 - ojdbc7.jar
  • 12.2 - ojdbc8.jar
  • 18.3 - ojdbc8.jar
  • 19.3 - ojdbc8.jar
  • 19.6 - ojdbc8.jar
  • 19.7 - ojdbc8.jar

The following Oracle Database JDBC Drivers FAILED:

  • 19.3 - ojdbc10.jar
  • 19.6 - ojdbc10.jar
  • 19.7 - ojdbc10.jar

All FAILED drivers produce an error in the fmeProcessMonitorCore.log related to the unsupported use of an older JRE:

java.lang.UnsupportedClassVersionError: oracle/jdbc/driver/OracleDriver has been compiled by a more recent version of the Java Runtime (class file version 54.0), this version of the Java Runtime only recognizes class file versions up to 52.0


On Windows OS, errors are also passed to the Windows Event Viewer. 
 

Summary

At this time it is required to make use of the ojdbc8.jar versioned JDBC drivers.  These are using the JRE8 dependencies while the ojdbc10.jar utilizes JRE11 dependencies that are not supported by FME Server at this time.  Development continues on upgrading to JRE11 but we do not have a committed timeline when JRE11 dependent drivers will be supported.

The ojdbc8.jar client driver is shown in the Oracle JDBC FAQ ("JDBC and RDBMS interoperability matrix") article as being suitable to connect to an Oracle Database of version 12.2 to 21.1 regardless of the client drivers (v12.2 to 21.1).
 

Resources

Visit Oracle JDBC FAQ and review the section Title "What is the JDBC and RDBMS interoperability matrix or the certification matrix?" & "What are the Oracle JDBC releases Vs JDK versions?"
Oracle Database JDBC Driver Downloads 
Changing the Database Provider for the FME Server Database

Was this article helpful?

Comments

0 comments

Please sign in to leave a comment.