tschaub commented on issue #35775:
URL: https://github.com/apache/arrow/issues/35775#issuecomment-1694105387

   It would also be useful to see an example of how the 
[`writer.FileMetadata`](https://github.com/apache/arrow/blob/go/v13.0.0/go/parquet/file/file_writer.go#L44)
 and 
[`writer.KeyValueMetadata`](https://github.com/apache/arrow/blob/go/v13.0.0/go/parquet/file/file_writer.go#L46)
 fields are intended to be used. 
   
   I only see `writer.FileMetadata` being set and then immediately being used 
in the [`file_writer.go` 
file](https://github.com/apache/arrow/blob/go/v13.0.0/go/parquet/file/file_writer.go).
  So it isn't clear why this field needs to be exported at all (but perhaps it 
is used by other packages) - or even why it is is a struct field.
   
   The `writer.KeyValueMetadata` field is only set by the 
[`WithWriteMetadata()` 
function](https://github.com/apache/arrow/blob/go/v13.0.0/go/parquet/file/file_writer.go#L57-L61)
 and then only accessed by the [`NewParquetWriter()` 
function](https://github.com/apache/arrow/blob/go/v13.0.0/go/parquet/file/file_writer.go#L67-L83).
   
   I'm unclear on why the `FileMetadata` and `KeyValueMetadata` fields are 
exported on the `file.Writer` struct.  Are these meant to settable before the 
writer is closed?  Or should there be an explicit 
`writer.SetKeyValueMetadata()` method that would be called before closing a 
writer (somewhat similar to https://github.com/segmentio/parquet-go/pull/399). 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to