dongjoon-hyun opened a new pull request, #190:
URL: https://github.com/apache/arrow-swift/pull/190

   ## What's Changed
   
   The vendored `ArrowWriterHelper` did not serialize the `bitWidth` field of 
the
   FlatBuffers `Time` type when writing a `time64` schema. Since the field's
   FlatBuffers default is 32, a `time64` column was encoded as `Time(unit, 32)`,
   and servers validating the schema rejected the column with:
   
   ```
   [UNSUPPORTED_ARROWTYPE] Unsupported arrow type Time(NANOSECOND, 32)
   ```
   
   This adds `bitWidth: 64` to the `.time64` case in `toFBType`. `time32` is
   unaffected because 32 is the correct default there.
   
   ## Testing
   
   Added `TimeBitWidthTests`, which serializes a schema via
   `ArrowWriter.toMessage(_:)` and parses the resulting FlatBuffers message to
   assert that `time64` (microseconds/nanoseconds) encodes `bitWidth` 64 and
   `time32` (seconds/milliseconds) encodes 32.
   
   The existing round-trip test (`testTimeInMemoryToFromStream`) cannot catch
   this regression because the Swift reader dispatches on `unit` only and
   ignores `bitWidth`.


-- 
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