feedzai/pdb

NaN values will cause insertions to fail in Oracle 11/12

Closed this issue · 1 comments

The OracleTranslator is currently converting DbColumnType.DOUBLE to oracle's DOUBLE PRECISION. According to oracle's documentation we should be using BINARY_DOUBLE instead since that is what conforms to the IEEE standard - also what is supported by Java and many other databases.

As a consequence of not doing so we fall into the limitations of DOUBLE PRECISION

  • No support for NaN, -Inf or Inf.
  • Different floating point handling which caused #18

Changing the column format and a little bit more code in OracleEngine.entityToPreparedStatement fixes this.

This however has the downside of being not backwards compatible and potentially requiring changes in multiple client's DBs.

Let me know how you want to handle that.

Closing this as it was already merged almost two years ago.