gortiz commented on code in PR #13303:
URL: https://github.com/apache/pinot/pull/13303#discussion_r1669854623


##########
pinot-common/src/main/java/org/apache/pinot/common/datablock/DataBlock.java:
##########
@@ -104,4 +117,44 @@ public static Type fromOrdinal(int ordinal) {
       }
     }
   }
+
+  /**
+   * A raw representation of the block.
+   * <p>
+   * Do not confuse this with the serialized form of the block. This is a 
representation of the block in memory and
+   * it is completely dependent on the current Pinot version. That means that 
this representation can change between
+   * Pinot versions.
+   * <p>
+   * The {@link DataBlockSerde} is responsible for serializing and 
deserializing this raw representation into a binary
+   * format that is compatible with the other Pinot versions.
+   */
+  interface Raw {

Review Comment:
   Yes, this interface exposes implementation details. But it is bound to the 
current Pinot version. It would be nice to have a formal definition of these 
different sections, but we don't have it right now. Having this interface here 
is what give us the ability to have different serialization algorithms. 
   
   We still need to cleanup the datablock usage during the intermediate stage, 
which right now is not very efficient. That would include a redefinition of 
DataBlock and we can keep this Raw interface is a simplification meanwhile.
   
   Raw was more useful in the early stages of this PR because I had different 
`DataBlockSerde` and `BaseDataBlock` was still storing the info in `byte[]`.
   
   Alternatively I can change `DataBlockSerde` to consume a `BaseDataBlock`, 
which won't break the encapsulation at the cost of imposing that every block is 
a `BaseDataBlock`. Do you prefer this alternative?



-- 
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: commits-unsubscr...@pinot.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to