You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@inlong.apache.org by he...@apache.org on 2022/11/15 06:06:52 UTC

[inlong] branch master updated: [INLONG-6537][Sort] Fix the decimal type loss of precision during DDL synchronization (#6540)

This is an automated email from the ASF dual-hosted git repository.

healchow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/inlong.git


The following commit(s) were added to refs/heads/master by this push:
     new bdccc3a5e [INLONG-6537][Sort] Fix the decimal type loss of precision during DDL synchronization (#6540)
bdccc3a5e is described below

commit bdccc3a5e29086e8bc240e72e58bef13f3290aac
Author: thesumery <10...@users.noreply.github.com>
AuthorDate: Tue Nov 15 14:06:47 2022 +0800

    [INLONG-6537][Sort] Fix the decimal type loss of precision during DDL synchronization (#6540)
---
 .../inlong/sort/base/format/JsonDynamicSchemaFormat.java      | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/inlong-sort/sort-connectors/base/src/main/java/org/apache/inlong/sort/base/format/JsonDynamicSchemaFormat.java b/inlong-sort/sort-connectors/base/src/main/java/org/apache/inlong/sort/base/format/JsonDynamicSchemaFormat.java
index e6fc75528..cc70085fb 100644
--- a/inlong-sort/sort-connectors/base/src/main/java/org/apache/inlong/sort/base/format/JsonDynamicSchemaFormat.java
+++ b/inlong-sort/sort-connectors/base/src/main/java/org/apache/inlong/sort/base/format/JsonDynamicSchemaFormat.java
@@ -75,6 +75,9 @@ public abstract class JsonDynamicSchemaFormat extends AbstractDynamicSchemaForma
      */
     private static final Integer FIRST = 0;
 
+    private static final int DEFAULT_DECIMAL_PRECISION = 15;
+    private static final int DEFAULT_DECIMAL_SCALE = 5;
+
     private static final Map<Integer, LogicalType> SQL_TYPE_2_FLINK_TYPE_MAPPING =
             ImmutableMap.<Integer, LogicalType>builder()
                     .put(java.sql.Types.CHAR, new CharType())
@@ -85,8 +88,8 @@ public abstract class JsonDynamicSchemaFormat extends AbstractDynamicSchemaForma
                     .put(java.sql.Types.REAL, new FloatType())
                     .put(java.sql.Types.DOUBLE, new DoubleType())
                     .put(java.sql.Types.FLOAT, new FloatType())
-                    .put(java.sql.Types.DECIMAL, new DecimalType())
-                    .put(java.sql.Types.NUMERIC, new DecimalType())
+                    .put(java.sql.Types.DECIMAL, new DecimalType(DEFAULT_DECIMAL_PRECISION, DEFAULT_DECIMAL_SCALE))
+                    .put(java.sql.Types.NUMERIC, new DecimalType(DEFAULT_DECIMAL_PRECISION, DEFAULT_DECIMAL_SCALE))
                     .put(java.sql.Types.BIT, new BooleanType())
                     .put(java.sql.Types.TIME, new TimeType())
                     .put(java.sql.Types.TIMESTAMP_WITH_TIMEZONE, new LocalZonedTimestampType())
@@ -109,8 +112,8 @@ public abstract class JsonDynamicSchemaFormat extends AbstractDynamicSchemaForma
                     .put(java.sql.Types.REAL, new FloatType())
                     .put(java.sql.Types.DOUBLE, new DoubleType())
                     .put(java.sql.Types.FLOAT, new FloatType())
-                    .put(java.sql.Types.DECIMAL, new DecimalType())
-                    .put(java.sql.Types.NUMERIC, new DecimalType())
+                    .put(java.sql.Types.DECIMAL, new DecimalType(DEFAULT_DECIMAL_PRECISION, DEFAULT_DECIMAL_SCALE))
+                    .put(java.sql.Types.NUMERIC, new DecimalType(DEFAULT_DECIMAL_PRECISION, DEFAULT_DECIMAL_SCALE))
                     .put(java.sql.Types.BIT, new BooleanType())
                     .put(java.sql.Types.TIME, new VarCharType())
                     .put(java.sql.Types.TIMESTAMP_WITH_TIMEZONE, new LocalZonedTimestampType())