Record Class DVPosition
java.lang.Object
java.lang.Record
org.apache.iceberg.flink.maintenance.operator.DVPosition
- All Implemented Interfaces:
Serializable
@Internal
public record DVPosition(String dataFilePath, long position, int specId, byte[] partition, long dataSequenceNumber)
extends Record
implements Serializable
A deletion vector position emitted by
EqualityConvertPKIndex when resolving an equality
delete. Identifies a specific row (by file path and position) to be marked as deleted, and
carries the data file's specId + encoded partition so the downstream resolver can write
the DV without re-reading data manifests.
dataSequenceNumber is the data file's sequence number. The worker keeps it in its
index so a resolving equality delete only deletes rows older than itself (only applies an
equality delete with sequence S to data with sequence < S).
partition is a byte[] (see StructLikeSerializer.encodePartition(org.apache.iceberg.StructLike, org.apache.iceberg.types.Types.StructType)) so
Flink serializes it natively rather than falling back to Kryo, including in the worker's keyed
state.
- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionDVPosition(String dataFilePath, long position, int specId, byte[] partition, long dataSequenceNumber) Creates an instance of aDVPositionrecord class. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of thedataFilePathrecord component.longReturns the value of thedataSequenceNumberrecord component.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.booleanisAbort()byte[]Returns the value of thepartitionrecord component.longposition()Returns the value of thepositionrecord component.intspecId()Returns the value of thespecIdrecord component.final StringtoString()Returns a string representation of this record class.
-
Field Details
-
ABORT
-
-
Constructor Details
-
DVPosition
public DVPosition(String dataFilePath, long position, int specId, byte[] partition, long dataSequenceNumber) Creates an instance of aDVPositionrecord class.- Parameters:
dataFilePath- the value for thedataFilePathrecord componentposition- the value for thepositionrecord componentspecId- the value for thespecIdrecord componentpartition- the value for thepartitionrecord componentdataSequenceNumber- the value for thedataSequenceNumberrecord component
-
-
Method Details
-
isAbort
public boolean isAbort() -
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with '=='. -
dataFilePath
Returns the value of thedataFilePathrecord component.- Returns:
- the value of the
dataFilePathrecord component
-
position
public long position()Returns the value of thepositionrecord component.- Returns:
- the value of the
positionrecord component
-
specId
public int specId()Returns the value of thespecIdrecord component.- Returns:
- the value of the
specIdrecord component
-
partition
public byte[] partition()Returns the value of thepartitionrecord component.- Returns:
- the value of the
partitionrecord component
-
dataSequenceNumber
public long dataSequenceNumber()Returns the value of thedataSequenceNumberrecord component.- Returns:
- the value of the
dataSequenceNumberrecord component
-