Le 25/06/2020 à 12:18, Antoine Pitrou a écrit :
> 
> Le 25/06/2020 à 00:40, Wes McKinney a écrit :
>> hi folks,
>>
>> This has come up in some other contexts, but I believe it would be a
>> good idea to increment the version number in Schema.fbs starting with
>> 1.0.0 to separate the pre-1.0 and post-1.0 worlds
>>
>> https://github.com/apache/arrow/blob/master/format/Schema.fbs#L22
>>
>> Given that we are contemplating a number of changes to assist with
>> forward compatibility and a breaking serialization change for unions,
>> this would seem prudent so that we do not risk breaking compatibility
>> with 0.17.1 and prior.
>>
>> Given that there are no major backwards incompatibilities, there
>> should be no problem with 1.0.0 readers reading data generated by
>> libraries <= 0.17.1.
> 
> Actually, it seems that a dense array with top-level null values
> (represented in 0.17.1 fashion) would need non-trivial rewriting of its
> offsets and child arrays (at least one child array) to represent the
> nulls at the child level.
> 
> This is unless we keep the top-level union null bitmap in C++ and only
> avoid emitting it on the IPC side.  Which would be a slightly weird
> arrangement, but would limit incompatibilites on the C++ API side.

Actually, if we do this, the same problem will appear on the IPC write
side (C++-created dense union arrays with a top-level null bitmap will
need regenerating some of the child buffers).

Regards

Antoine.

Reply via email to