>
> > So, why would we allow dictionary replacement instead of have the
> > emitter use a new dictionary id?  Is it to optimize memory consumption
> > on the receiver?




> The dictionary id's are set in the schema, so it's not possible to
> change the dictionary id after the schema has been sent.


It is conceivably possible to add another field to DictionaryBatch to
indicate the dictionary is a replacement for another ID, but this seems
like it would make the IPC protocol messier (i.e. we could eliminate
isDelta).  But I think this is more confusing from a protocol perspective.
It might make implementations simpler though.



On Sun, Oct 6, 2019 at 1:25 PM Wes McKinney <wesmck...@gmail.com> wrote:

> On Sun, Oct 6, 2019 at 4:30 AM Antoine Pitrou <solip...@pitrou.net> wrote:
> >
> > On Sat, 5 Oct 2019 17:01:27 -0600
> > Micah Kornfield <emkornfi...@gmail.com> wrote:
> > > I've opened a pull request [1] to clarify some recent conversations
> about
> > > semantics/edge cases for dictionary encoding [2][3] around interleaved
> > > batches and when isDelta=False.
> > >
> > > Specifically, it proposes isDelta=False indicates dictionary
> replacement.
> >
> > So, why would we allow dictionary replacement instead of have the
> > emitter use a new dictionary id?  Is it to optimize memory consumption
> > on the receiver?
>
> The dictionary id's are set in the schema, so it's not possible to
> change the dictionary id after the schema has been sent.
>
> > Regards
> >
> > Antoine.
> >
> >
>

Reply via email to