oracle-databaseapache-kafkacdcoracle-golden-gate

How can be handle oracle decimal types with GoldenGate "Kafka" / "Kafka connect" handler?


I wanna use Oracle GoldenGate (it's orcale cdc tool) to integrate oracle with Kafka. i have find a two Handler:

  1. http://docs.oracle.com/goldengate/bd123110/gg-bd/GADBD/using-kafka-connect-handler.htm#GADBD-GUID-81730248-AC12-438E-AF82-48C7002178EC with avro formatter
  2. http://docs.oracle.com/goldengate/bd123110/gg-bd/GADBD/using-kafka-handler.htm#GADBD449

Both this handler do not support decimal type(i mean they do not treat decimal in avro as logical type, or else how), this tools just convert decimal to double type. And in this case, we loose precision.

Does any one know a good way to treat decimals, except write own handler?


Solution

  • You need 12.3.1.1.4 and the following:

    gg.handler.<name>.format.mapLargeNumbersAsStrings=false
    gg.handler.<name>.format.enableDecimalLogicalType=true
    gg.handler.<name>.format.enableTimestampLogicalType=true