MCPcopy Create free account
hub / github.com/apache/arrow / WriteFileMetaData

Function WriteFileMetaData

cpp/src/parquet/file_writer.cc:610–625  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

608}
609
610void WriteFileMetaData(const FileMetaData& file_metadata, ArrowOutputStream* sink) {
611 // Write MetaData
612 PARQUET_ASSIGN_OR_THROW(int64_t position, sink->Tell());
613 uint32_t metadata_len = static_cast<uint32_t>(position);
614
615 file_metadata.WriteTo(sink);
616 PARQUET_ASSIGN_OR_THROW(position, sink->Tell());
617 metadata_len = static_cast<uint32_t>(position) - metadata_len;
618
619 // Write Footer
620 {
621 uint32_t metadata_len_le = ::arrow::bit_util::ToLittleEndian(metadata_len);
622 PARQUET_THROW_NOT_OK(sink->Write(reinterpret_cast<uint8_t*>(&metadata_len_le), 4));
623 }
624 PARQUET_THROW_NOT_OK(sink->Write(kParquetMagic, 4));
625}
626
627void WriteMetaDataFile(const FileMetaData& file_metadata, ArrowOutputStream* sink) {
628 PARQUET_THROW_NOT_OK(sink->Write(kParquetMagic, 4));

Callers 2

CloseMethod · 0.70
WriteMetaDataFileFunction · 0.70

Calls 4

ToLittleEndianFunction · 0.70
WriteToMethod · 0.45
TellMethod · 0.45
WriteMethod · 0.45

Tested by

no test coverage detected