[improvement] Change array offset type from UInt32 to UInt64 (#10070)

Now column `Array<T>` contains column `offsets` and `data`, and type of column `offsets` is UInt32 now.
If we call array_union to merge arrays repeatedly, the size of array may overflow.
So we need to extend it before `Array Data Type` release.
This commit is contained in:
camby
2022-06-19 10:24:08 +08:00
committed by GitHub
parent 534844ead6
commit 0e404edf54
22 changed files with 72 additions and 71 deletions

View File

@ -55,7 +55,8 @@ public enum PrimitiveType {
BITMAP("BITMAP", 16, TPrimitiveType.OBJECT),
QUANTILE_STATE("QUANTILE_STATE", 16, TPrimitiveType.QUANTILE_STATE),
ARRAY("ARRAY", 24, TPrimitiveType.ARRAY),
// sizeof(CollectionValue)
ARRAY("ARRAY", 32, TPrimitiveType.ARRAY),
MAP("MAP", 24, TPrimitiveType.MAP),
STRUCT("STRUCT", 24, TPrimitiveType.STRUCT),
STRING("STRING", 16, TPrimitiveType.STRING),