29#include <unordered_map>
44 std::shared_ptr<Schema> schema;
45 std::shared_ptr<PartitionSpec> spec;
47 FileFormatType format = FileFormatType::kParquet;
48 std::shared_ptr<FileIO> io;
49 int64_t flush_threshold = 1000;
50 std::unordered_map<std::string, std::string> properties;
63 Status WriteDelete(std::string_view file_path, int64_t pos);
70 std::unique_ptr<Impl> impl_;
Base interface for data file writers.
Definition writer.h:50
StructLike wrapper for a vector of literals that represent partition values.
Definition partition_values.h:36
Writer for Iceberg position delete files.
Definition position_delete_writer.h:54
Status Close() override
Close the writer and finalize the file.
Result< int64_t > Length() const override
Get the current number of bytes written.
Status Write(ArrowArray *data) override
Write a batch of records.
Result< WriteResult > Metadata() override
Get file metadata for all files produced by this writer.
static Result< std::unique_ptr< PositionDeleteWriter > > Make(const PositionDeleteWriterOptions &options)
Create a new PositionDeleteWriter instance.
Define symbol visibility macros for data APIs.
Core Apache Iceberg C++ APIs.
Definition arrow_io_util.h:33
std::expected< T, E > Result
Result alias.
Definition result.h:88
Define Result, Status, and error helpers.
Definition arrow_c_data.h:57
Options for creating a PositionDeleteWriter.
Definition position_delete_writer.h:42