@@ -73,6 +73,7 @@ public PartitionData copy() {
73
73
private Map <Integer , ByteBuffer > upperBounds = null ;
74
74
private long [] splitOffsets = null ;
75
75
private int [] equalityIds = null ;
76
+ private int [] partialIds = null ;
76
77
private byte [] keyMetadata = null ;
77
78
private Integer sortOrderId ;
78
79
@@ -132,6 +133,7 @@ public PartitionData copy() {
132
133
Map <Integer , ByteBuffer > upperBounds ,
133
134
List <Long > splitOffsets ,
134
135
int [] equalityFieldIds ,
136
+ int [] partialFieldIds ,
135
137
Integer sortOrderId ,
136
138
ByteBuffer keyMetadata ) {
137
139
this .partitionSpecId = specId ;
@@ -159,6 +161,7 @@ public PartitionData copy() {
159
161
this .upperBounds = SerializableByteBufferMap .wrap (upperBounds );
160
162
this .splitOffsets = ArrayUtil .toLongArray (splitOffsets );
161
163
this .equalityIds = equalityFieldIds ;
164
+ this .partialIds = partialFieldIds ;
162
165
this .sortOrderId = sortOrderId ;
163
166
this .keyMetadata = ByteBuffers .toByteArray (keyMetadata );
164
167
}
@@ -207,6 +210,10 @@ public PartitionData copy() {
207
210
toCopy .equalityIds != null
208
211
? Arrays .copyOf (toCopy .equalityIds , toCopy .equalityIds .length )
209
212
: null ;
213
+ this .partialIds =
214
+ toCopy .partialIds != null
215
+ ? Arrays .copyOf (toCopy .partialIds , toCopy .partialIds .length )
216
+ : null ;
210
217
this .sortOrderId = toCopy .sortOrderId ;
211
218
}
212
219
@@ -294,6 +301,9 @@ public void put(int i, Object value) {
294
301
this .sortOrderId = (Integer ) value ;
295
302
return ;
296
303
case 17 :
304
+ this .partialIds = ArrayUtil .toIntArray ((List <Integer >) value );
305
+ return ;
306
+ case 18 :
297
307
this .fileOrdinal = (long ) value ;
298
308
return ;
299
309
default :
@@ -349,6 +359,8 @@ public Object get(int i) {
349
359
case 16 :
350
360
return sortOrderId ;
351
361
case 17 :
362
+ return partialFieldIds ();
363
+ case 18 :
352
364
return fileOrdinal ;
353
365
default :
354
366
throw new UnsupportedOperationException ("Unknown field ordinal: " + pos );
@@ -445,6 +457,11 @@ public List<Integer> equalityFieldIds() {
445
457
return ArrayUtil .toIntList (equalityIds );
446
458
}
447
459
460
+ @ Override
461
+ public List <Integer > partialFieldIds () {
462
+ return ArrayUtil .toIntList (partialIds );
463
+ }
464
+
448
465
@ Override
449
466
public Integer sortOrderId () {
450
467
return sortOrderId ;
@@ -478,6 +495,7 @@ public String toString() {
478
495
.add ("split_offsets" , splitOffsets == null ? "null" : splitOffsets ())
479
496
.add ("equality_ids" , equalityIds == null ? "null" : equalityFieldIds ())
480
497
.add ("sort_order_id" , sortOrderId )
498
+ .add ("partial_ids" , equalityIds == null ? "null" : partialFieldIds ())
481
499
.toString ();
482
500
}
483
501
}
0 commit comments