Package org.apache.iceberg.io
Class BasePositionDeltaWriter<T>
java.lang.Object
org.apache.iceberg.io.BasePositionDeltaWriter<T>
- All Implemented Interfaces:
Closeable,AutoCloseable,PositionDeltaWriter<T>
-
Constructor Summary
ConstructorsConstructorDescriptionBasePositionDeltaWriter(PartitioningWriter<T, DataWriteResult> dataWriter, PartitioningWriter<PositionDelete<T>, DeleteWriteResult> deleteWriter) BasePositionDeltaWriter(PartitioningWriter<T, DataWriteResult> insertWriter, PartitioningWriter<T, DataWriteResult> updateWriter, PartitioningWriter<PositionDelete<T>, DeleteWriteResult> deleteWriter) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()voiddelete(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.result()Returns a result that contains information about writtenDataFiles orDeleteFiles.voidupdate(T row, PartitionSpec spec, StructLike partition) Inserts a new version of an existing row to the provided spec/partition.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.iceberg.io.PositionDeltaWriter
delete
-
Constructor Details
-
BasePositionDeltaWriter
public BasePositionDeltaWriter(PartitioningWriter<T, DataWriteResult> dataWriter, PartitioningWriter<PositionDelete<T>, DeleteWriteResult> deleteWriter) -
BasePositionDeltaWriter
public BasePositionDeltaWriter(PartitioningWriter<T, DataWriteResult> insertWriter, PartitioningWriter<T, DataWriteResult> updateWriter, PartitioningWriter<PositionDelete<T>, DeleteWriteResult> deleteWriter)
-
-
Method Details
-
insert
Description copied from interface:PositionDeltaWriterInserts a row to the provided spec/partition.- Specified by:
insertin interfacePositionDeltaWriter<T>- Parameters:
row- a data recordspec- a partition specpartition- a partition or null if the spec is unpartitioned
-
update
Description copied from interface:PositionDeltaWriterInserts 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
PositionDeltaWriter.delete(CharSequence, long, PartitionSpec, StructLike)for the original row position that is being updated.- Specified by:
updatein interfacePositionDeltaWriter<T>- Parameters:
row- a new version of an existing rowspec- a new partition specpartition- a new partition or null if the spec is unpartitioned
-
delete
Description copied from interface:PositionDeltaWriterDeletes a position in the provided spec/partition and records the deleted row in the delete file.- Specified by:
deletein interfacePositionDeltaWriter<T>- Parameters:
path- a data file pathpos- a positionrow- a deleted rowspec- a partition specpartition- a partition or null if the spec is unpartitioned
-
result
Description copied from interface:PositionDeltaWriterReturns a result that contains information about writtenDataFiles orDeleteFiles. The result is valid only after the writer is closed.- Specified by:
resultin interfacePositionDeltaWriter<T>- Returns:
- the writer result
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-