@@ -36,7 +36,7 @@ public MetadataUtil(MaxComputeSinkConfig maxComputeSinkConfig) {
36
36
this .maxComputeTimestampDataType = maxComputeSinkConfig .getMaxComputeProtoTimestampToMaxcomputeType ();
37
37
this .zoneId = maxComputeSinkConfig .getZoneId ();
38
38
metadataTypeMap = ImmutableMap .<String , TypeInfo >builder ()
39
- .put (INTEGER , TypeInfoFactory .INT )
39
+ .put (INTEGER , maxComputeSinkConfig . isProtoIntegerTypesToBigintEnabled () ? TypeInfoFactory . BIGINT : TypeInfoFactory .INT )
40
40
.put (LONG , TypeInfoFactory .BIGINT )
41
41
.put (FLOAT , TypeInfoFactory .FLOAT )
42
42
.put (DOUBLE , TypeInfoFactory .DOUBLE )
@@ -45,7 +45,12 @@ public MetadataUtil(MaxComputeSinkConfig maxComputeSinkConfig) {
45
45
.put (TIMESTAMP , maxComputeTimestampDataType .getTypeInfo ())
46
46
.build ();
47
47
metadataMapperMap = ImmutableMap .<String , Function <Object , Object >>builder ()
48
- .put (INTEGER , obj -> ((Number ) obj ).intValue ())
48
+ .put (INTEGER , obj -> {
49
+ if (maxComputeSinkConfig .isProtoIntegerTypesToBigintEnabled ()) {
50
+ return ((Number ) obj ).longValue ();
51
+ }
52
+ return ((Number ) obj ).intValue ();
53
+ })
49
54
.put (LONG , obj -> ((Number ) obj ).longValue ())
50
55
.put (FLOAT , obj -> ((Number ) obj ).floatValue ())
51
56
.put (DOUBLE , obj -> ((Number ) obj ).doubleValue ())
0 commit comments