How it would be to use ValueState<T> with values as string separated by the delimiter. So that order will never be a problem. Only overhead is to separate delimiter, read the elements and convert them into primitive types in case necessary. It just workaround. In case doesn't suite your requirements pardon me
Regards Bhaskar On Fri, Sep 14, 2018 at 12:36 PM vino yang <yanghua1...@gmail.com> wrote: > Hi, > > I saw one of ListState's implementations of HeapListState, and its > internal data store uses the JDK's List. > Of course, from an API point of view, maybe we can't make an absolute > order guarantee. > But if we look at it from a particular implementation, we can see if it > can guarantee this, of course, if the user is using the data structure > purely. > > Thanks, vino. > > Rong Rong <walter...@gmail.com> 于2018年9月14日周五 下午12:30写道: > >> I don't think ordering is guaranteed in the internal implementation, to >> the best of my knowledge. >> I agreed with Aljoscha, if there is no clear definition of ordering, it >> is assumed to be not preserved by default. >> >> -- >> Rong >> >> On Thu, Sep 13, 2018 at 7:30 PM vino yang <yanghua1...@gmail.com> wrote: >> >>> Hi Aljoscha, >>> >>> Regarding window merging, as you said, it's not clear, because Flink >>> does some internal work. >>> But if it's just for the user, isn't it clear without any internal >>> operations? I think if the user explicitly uses it, it should conform to >>> the basic List semantics. Otherwise why define it instead of using >>> SetListState directly? >>> >>> Thanks, vino. >>> >>> Aljoscha Krettek <aljos...@apache.org> 于2018年9月13日周四 下午10:42写道: >>> >>>> Hi, >>>> >>>> this is not clearly defined anywhere, and I was always working under >>>> the assumption that the order is not preserved. This potentially allows >>>> more optimizations by the system, and for example in case of merging >>>> windows we don't know the order of elements in a ListState after a merge. >>>> >>>> Best, >>>> Aljoscha >>>> >>>> On 6. Sep 2018, at 08:19, vino yang <yanghua1...@gmail.com> wrote: >>>> >>>> Hi Alexey, >>>> >>>> The answer is Yes, which preserves the semantics of the List's order of >>>> elements. >>>> >>>> Thank, vino. >>>> >>>> Alexey Trenikhun <yen...@msn.com> 于2018年9月6日周四 上午10:55写道: >>>> >>>>> Hello, >>>>> Does keyed managed ListState<T> preserve elements order, for example >>>>> if I call listState.add(e1); listState.add(e2); listState.add(e3); , does >>>>> ListState<T> guarantee that listState.get() will return elements in order >>>>> they were added (e1, e2, e3) >>>>> >>>>> Alexey >>>>> >>>>> >>>>> >>>>