bit2swaz commented on issue #10679:
URL: https://github.com/apache/arrow-rs/issues/10679#issuecomment-5334860205

   > a magic tag doesn't sound robust. The private data could be anything.
   
   agreed, and that kills detection in general: `private_data` is opaque and no 
other field only arrow-rs would set. so option B is out
   
   that leaves three fixes that dont need detection:
   - A: make `with_metadata` `unsafe`. simplest, but breaking
   - C: put the new metadata in a fresh box and chain the existing release on 
drop (the #9771 wrap pattern). non breaking, works for foreign and local schemas
   - D: read the fields via the safe getters and rebuild a fresh schema with 
the extra metadata. non breaking too, but it rebuilds the whole child/dict tree 
and drops metadata key order, so id rank it last
   
   (only `with_metadata` is affected, `with_name` never touches `private_data`)
   
   i lean C. which do you prefer?


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