eskabetxe commented on code in PR #186:
URL:
https://github.com/apache/flink-connector-jdbc/pull/186#discussion_r2743089616
##########
flink-connector-jdbc-oceanbase/src/test/java/org/apache/flink/connector/jdbc/oceanbase/database/catalog/OceanBaseMysqlCatalogITCase.java:
##########
@@ -200,7 +200,7 @@ private static TableRow createTableAllTypeTable(String
tableName) {
DataTypes.DECIMAL(11, 0)),
field("col_double", dbType("double"), DataTypes.DOUBLE()),
field("col_double_unsigned", dbType("double unsigned"),
DataTypes.DOUBLE()),
- field("col_enum", dbType("enum('enum1','enum2','enum11')"),
DataTypes.VARCHAR(6)),
+ field("col_enum", dbType("enum('enum1','enum2','enum11')"),
DataTypes.CHAR(6)),
Review Comment:
It fails if not changed..
What I saw is that it is related to internal changes..
From AI
> To address the type differences you are seeing between 4.2.1-LTS and
4.3.5-LTS, it is important to understand that the 4.3.x branch introduced a
significant architectural shift with its integrated row-column storage engine
and Vectorized Engine 2.0.
Why Types Are Changing in Your Comparison
The shift from VARCHAR to CHAR for types like ENUM and SET is a result of
how OceanBase 4.3.x optimizes data for its new columnar capabilities:
Columnar Optimization: OceanBase 4.3.x is designed to handle both OLTP and
OLAP workloads within the same engine. For fixed-width or small-set data like
ENUM and SET, the engine often normalizes these to fixed-length descriptors
(like CHAR) to improve the performance of vectorized scans.
Vectorized Execution: The Vectorized Engine 2.0 processes data in batches.
Converting variable-length strings to fixed-length characters where possible
allows for more efficient memory alignment during these batch operations.
Strict Mode Changes: Version 4.3.5 has updated how it handles data type
conversions and strict mode checks compared to 4.2.x. This can result in the
database reporting the "underlying" optimized storage type rather than the
"logical" type defined during creation.
##########
flink-connector-jdbc-oceanbase/src/test/java/org/apache/flink/connector/jdbc/oceanbase/database/catalog/OceanBaseMysqlCatalogITCase.java:
##########
@@ -200,7 +200,7 @@ private static TableRow createTableAllTypeTable(String
tableName) {
DataTypes.DECIMAL(11, 0)),
field("col_double", dbType("double"), DataTypes.DOUBLE()),
field("col_double_unsigned", dbType("double unsigned"),
DataTypes.DOUBLE()),
- field("col_enum", dbType("enum('enum1','enum2','enum11')"),
DataTypes.VARCHAR(6)),
+ field("col_enum", dbType("enum('enum1','enum2','enum11')"),
DataTypes.CHAR(6)),
Review Comment:
It fails if not changed..
What I saw is that it is related to internal changes..
From AI
> To address the type differences you are seeing between 4.2.1-LTS and
4.3.5-LTS, it is important to understand that the 4.3.x branch introduced a
significant architectural shift with its integrated row-column storage engine
and Vectorized Engine 2.0.
Why Types Are Changing in Your Comparison
The shift from VARCHAR to CHAR for types like ENUM and SET is a result of
how OceanBase 4.3.x optimizes data for its new columnar capabilities:
Columnar Optimization: OceanBase 4.3.x is designed to handle both OLTP and
OLAP workloads within the same engine. For fixed-width or small-set data like
ENUM and SET, the engine often normalizes these to fixed-length descriptors
(like CHAR) to improve the performance of vectorized scans.
Vectorized Execution: The Vectorized Engine 2.0 processes data in batches.
Converting variable-length strings to fixed-length characters where possible
allows for more efficient memory alignment during these batch operations.
Strict Mode Changes: Version 4.3.5 has updated how it handles data type
conversions and strict mode checks compared to 4.2.x. This can result in the
database reporting the "underlying" optimized storage type rather than the
"logical" type defined during creation.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]