Not all variable length types works properly for Oracle DB
- Dominant language
- Java
- Stars
- 8.7k
- Forks
- 4.7k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 196
Description
For example RAW(16) fails while comparing field length because the Oracle JDBC driver returns precision = 0 but columnDisplaySize = 16.
```
Exception in thread "main" org.apache.beam.sdk.Pipeline$PipelineExecutionException: java.lang.IllegalArgumentException
at org.apache.beam.runners.direct.DirectRunner$DirectPipelineResult.waitUntilFinish(DirectRunner.java:373)
at org.apache.beam.runners.direct.DirectRunner$DirectPipelineResult.waitUntilFinish(DirectRunner.java:341)
at org.apache.beam.runners.direct.DirectRunner.run(DirectRunner.java:218)
at org.apache.beam.runners.direct.DirectRunner.run(DirectRunner.java:67)
at org.apache.beam.sdk.Pipeline.run(Pipeline.java:323)
at org.apache.beam.sdk.Pipeline.run(Pipeline.java:309)
at io.synthesized.testingsuite.SubsetterRunner.run(SubsetterRunner.kt:75)
at io.synthesized.testingsuite.SubsetterRunnerKt.main(SubsetterRunner.kt:39)
at io.synthesized.testingsuite.SubsetterRunnerKt.main(SubsetterRunner.kt)
Caused by: java.lang.IllegalArgumentException
at org.apache.beam.vendor.guava.v26_0_jre.com.google.common.base.Preconditions.checkArgument(Preconditions.java:127)
at org.apache.beam.sdk.io.jdbc.LogicalTypes$VariableLengthBytes.toInputType(LogicalTypes.java:250)
at org.apache.beam.sdk.io.jdbc.LogicalTypes$VariableLengthBytes.toInputType(LogicalTypes.java:236)
at org.apache.beam.sdk.io.jdbc.SchemaUtil.lambda$createLogicalTypeExtractor$ca0ab2ec$1(SchemaUtil.java:308)
at org.apache.beam.sdk.io.jdbc.SchemaUtil$BeamRowMapper.mapRow(SchemaUtil.java:378)
at org.apache.beam.sdk.io.jdbc.SchemaUtil$BeamRowMapper.mapRow(SchemaUtil.java:356)
at org.apache.beam.sdk.io.jdbc.JdbcIO$ReadFn.processElement(JdbcIO.java:1212)
Process finished with
exit code 137 (interrupted by signal 9: SIGKILL)
```
Imported from Jira [BEAM-13609](https://issues.apache.org/jira/browse/BEAM-13609). Original Jira may contain additional context.
Reported by: Vitaly Ivanov.
Contributor guide
Assessment
This issue has not been assessed yet.