anchor.diff:  |===
   
   There is an exception to this rule.
  -When the `NUMERIC` or `DECIMAL` types are used without any scale constraints then it means that the values coming from the database have a different (variable) scale for each value.
  -In this case a type `io.debezium.data.VariableScaleDecimal` is used and it contains both value and scale of the transferred value.
  -
  -[cols="15%a,15%a,35%a,35%a"]
  +When the `NUMERIC` or `DECIMAL` types are used without scale constraints, the values coming from the database have a different (variable) scale for each value. In this case, the connector uses `io.debezium.data.VariableScaleDecimal`, which contains both the value and the scale of the transferred value.
  +
  +.Mappings of decimal types when there are no scale constraints
  +[cols="15%a,15%a,35%a,35%a",options="header"]
   |===
   |PostgreSQL Data Type
   |Literal type (schema type)
  
positive.code: |`TIMESTAMPTZ`, `TIMESTAMP WITH TIME ZONE`
  |`STRING`
  |`io.debezium.time.ZonedTimestamp`
  | A string representation of a timestamp with timezone information, where the timezone is GMT
  
  |`TIMETZ`, `TIME WITH TIME ZONE`
  |`STRING`
  |`io.debezium.time.ZonedTime`
  | A string representation of a time value with timezone information, where the timezone is GMT
  
  |`INTERVAL [P]`
  |`INT64`
  |`io.debezium.time.MicroDuration` +
  (default)
  |The approximate number of microseconds for a time interval using the `365.25 / 12.0` formula for days per month average
  
  |`INTERVAL [P]`
  |`STRING`
  |`io.debezium.time.Interval` +
  (when `interval.handling.mode` is set to `string`)
  |The string representation of the interval value that follows pattern `P<years>Y<months>M<days>DT<hours>H<minutes>M<seconds>S`, e.g. `P1Y2M3DT4H5M6.78S`
  
  |`BYTEA`
  |`BYTES` or `STRING`
  |n/a
  |Either the raw bytes (the default), a base64-encoded String, or a hex-encoded String, based on the {link-prefix}:{link-postgresql-connector}#connector-property-binary-handling-mode[binary handling mode] setting
  
  |`JSON`, `JSONB`
  |`STRING`
  
negative.code: |n/a
  |
  
  |`BIT( > 1)`, `BIT VARYING[(M)]`
  |`BYTES`
  |`io.debezium.data.Bits`
  |The `length` schema parameter contains an integer that represents the number of bits. The resulting `byte[]` contains the bits in little-endian form, sized to contain at least the specified number of bits. For example, `numBytes = n/8 + (n%8== 0 ? 0 : 1)` where `n` is the number of bits.
  
  |`SMALLINT`, `SMALLSERIAL`
  |`INT16`
  