walterddr commented on code in PR #8874:
URL: https://github.com/apache/pinot/pull/8874#discussion_r895030045


##########
pinot-core/src/test/java/org/apache/pinot/core/common/datatable/DataTableSerDeTest.java:
##########
@@ -163,6 +163,135 @@ public void testAllDataTypes()
     verifyDataIsSame(newDataTable, columnDataTypes, numColumns);
   }
 
+  @Test
+  public void testV3V4Compatibility()
+      throws IOException {
+    DataSchema.ColumnDataType[] columnDataTypes = 
DataSchema.ColumnDataType.values();
+    int numColumns = columnDataTypes.length;
+    String[] columnNames = new String[numColumns];
+    for (int i = 0; i < numColumns; i++) {
+      columnNames[i] = columnDataTypes[i].name();
+    }
+
+    DataSchema dataSchema = new DataSchema(columnNames, columnDataTypes);
+
+    // Verify V4 broker can deserialize data table (has data, but has no 
metadata) send by V3 server

Review Comment:
   multi-stage engine is not being considered at this moment. because there's a 
issue with 
   DataTableV4 is needed for multi-stage engine
   DataTalbeV3 is still default in normal engine. 
   
   Since the `_version` member in DataTableBuilder is static, we cant make the 
dynamic switch. 
   In order to address this we will have to make the `_version` as part of the 
constructor parameter and no longer make the builder static. 
   
   I will look into how this can be done but since multi-stage engine is not 
yet prime time. I think we can stick with just the one static version per 
component approach



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