Gabriel39 commented on code in PR #67784:
URL: https://github.com/apache/doris/pull/67784#discussion_r4023604391


##########
be/src/format/transformer/vparquet_transformer.h:
##########
@@ -83,23 +86,27 @@ struct ParquetFileOptions {
     TParquetVersion::type parquet_version;
     bool parquet_disable_dictionary = false;
     bool enable_int96_timestamps = false;
+    // Overrides only INT96 normalization; UTC preserves a wall-clock carrier.
+    std::optional<std::string> int96_timezone = std::nullopt;
 };
 
 // a wrapper of parquet output stream
 class VParquetTransformer final : public VFileFormatTransformer {
 public:
-    VParquetTransformer(RuntimeState* state, doris::io::FileWriter* 
file_writer,
-                        const VExprContextSPtrs& output_vexpr_ctxs,
-                        std::vector<std::string> column_names, bool 
output_object_data,
-                        const ParquetFileOptions& parquet_options,
-                        const std::string* iceberg_schema_json = nullptr,
-                        const iceberg::Schema* iceberg_schema = nullptr);
-
-    VParquetTransformer(RuntimeState* state, doris::io::FileWriter* 
file_writer,
-                        const VExprContextSPtrs& output_vexpr_ctxs,
-                        std::vector<TParquetSchema> parquet_schemas, bool 
output_object_data,
-                        const ParquetFileOptions& parquet_options,
-                        const std::string* iceberg_schema_json = nullptr);
+    VParquetTransformer(
+            RuntimeState* state, doris::io::FileWriter* file_writer,

Review Comment:
   Addressed in the current head (`68df1fdb0f`). Moved Iceberg-specific 
schema/field-ID handling, converter selection and statistics collection into 
VIcebergParquetTransformer. VParquetTransformer is no longer final and has no 
Iceberg constructor arguments or state. Both data and position-delete writers 
use the subclass; the existing Variant and generic Parquet tests pass.



##########
fe/be-java-extensions/jdbc-scanner/src/main/java/org/apache/doris/jdbc/MySQLJdbcExecutor.java:
##########
@@ -70,6 +77,14 @@ protected void abortReadConnection(Connection connection, 
ResultSet resultSet)
 
     @Override
     protected void initializeStatement(Connection conn, JdbcDataSourceConfig 
config, String sql) throws SQLException {
+        if (config.getTableType() == TOdbcTableType.MYSQL) {

Review Comment:
   Addressed in the current head (`68df1fdb0f`). Unified UTC session 
initialization, Calendar-based reads and Calendar-based writes behind the 
MySQL-compatible protocol guard, including OCEANBASE (not OCEANBASE_ORACLE). 
Added a focused unit test and exercised the OceanBase enum path with 48 read 
and 48 write configurations against a real MySQL server. This verifies the 
shared wire path; it is not claimed as a live OceanBase-server test.



##########
fe/fe-core/src/test/java/org/apache/doris/nereids/parser/VarBinaryLiteralParserTest.java:
##########
@@ -132,7 +136,7 @@ public void testCreateTableVarbinaryWithLength() {
         Assertions.assertTrue(plan instanceof 
org.apache.doris.nereids.trees.plans.commands.CreateTableCommand);
         org.apache.doris.nereids.trees.plans.commands.CreateTableCommand cmd =
                 
(org.apache.doris.nereids.trees.plans.commands.CreateTableCommand) plan;
-        
Assertions.assertThrows(org.apache.doris.nereids.exceptions.AnalysisException.class,
+        Assertions.assertDoesNotThrow(

Review Comment:
   Addressed in the current head (`68df1fdb0f`). Restored rejection assertions 
for direct, bounded, key, nested and partition native VARBINARY cases. The 
native-storage fence remains unchanged; no OLAP VARBINARY type was added. All 
15 VarBinaryLiteralParserTest cases and 11 VarBinarySqlSupportTest cases pass.



-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to