Package org.apache.iceberg.io
Interface PositionDeltaWriter<T>
- 
- Type Parameters:
 T- the row type
- All Superinterfaces:
 java.lang.AutoCloseable,java.io.Closeable
- All Known Implementing Classes:
 BasePositionDeltaWriter
public interface PositionDeltaWriter<T> extends java.io.CloseableA writer capable of writing data and position deletes that may belong to different specs and partitions. 
- 
- 
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default voiddelete(java.lang.CharSequence path, long pos, PartitionSpec spec, StructLike partition)Deletes a position in the provided spec/partition.voiddelete(java.lang.CharSequence path, long pos, T row, PartitionSpec spec, StructLike partition)Deletes a position in the provided spec/partition and records the deleted row in the delete file.voidinsert(T row, PartitionSpec spec, StructLike partition)Inserts a row to the provided spec/partition.WriteResultresult()Returns a result that contains information about writtenDataFiles orDeleteFiles.default voidupdate(T row, PartitionSpec spec, StructLike partition)Inserts a new version of an existing row to the provided spec/partition. 
 - 
 
- 
- 
Method Detail
- 
insert
void insert(T row, PartitionSpec spec, StructLike partition)
Inserts a row to the provided spec/partition.- Parameters:
 row- a data recordspec- a partition specpartition- a partition or null if the spec is unpartitioned
 
- 
update
default void update(T row, PartitionSpec spec, StructLike partition)
Inserts a new version of an existing row to the provided spec/partition.This method allows writers to distinguish new and updated records. The caller must separately invoke
delete(CharSequence, long, PartitionSpec, StructLike)for the original row position that is being updated.- Parameters:
 row- a new version of an existing rowspec- a new partition specpartition- a new partition or null if the spec is unpartitioned
 
- 
delete
default void delete(java.lang.CharSequence path, long pos, PartitionSpec spec, StructLike partition)Deletes a position in the provided spec/partition.- Parameters:
 path- a data file pathpos- a positionspec- a partition specpartition- a partition or null if the spec is unpartitioned
 
- 
delete
void delete(java.lang.CharSequence path, long pos, T row, PartitionSpec spec, StructLike partition)Deletes a position in the provided spec/partition and records the deleted row in the delete file.- Parameters:
 path- a data file pathpos- a positionrow- a deleted rowspec- a partition specpartition- a partition or null if the spec is unpartitioned
 
- 
result
WriteResult result()
Returns a result that contains information about writtenDataFiles orDeleteFiles. The result is valid only after the writer is closed.- Returns:
 - the writer result
 
 
 - 
 
 -