Any more insight? On Wed, Jun 13, 2018, 3:34 PM Vishal Santoshi <vishal.santo...@gmail.com> wrote:
> Any ideas on the standard way ( or any roundabout way ) of doing a version > upgrade that looks back ward compatible. > The @FieldSerializer.Optional("0") actually does ignore the field ( > even if reset ) giving it the default value if kyro is used. It has to do > with the FieldSerializer behaves . There is another Serializer ( > Composite I believe ) that allows for such back ward compatible changes. > > > I know some work is being done in 1.6 to allow for above use case and I > think Google Data Flow does provide some avenues. > > Thanks much > > Vishal > > > > On Tue, Jun 12, 2018 at 11:30 PM, Vishal Santoshi < > vishal.santo...@gmail.com> wrote: > >> I have a running pipe with Window State in a class say >> >> Class A{ >> long a; >> } >> >> It uses the default KryoSerializer >> >> I want to add a field to >> >> Class A { >> long a; >> long b; >> } >> >> I need to suspend with SP and resume with the new version of Class A >> >> >> Is there a definite way to do this. I tried >> >> Class A { >> long a; >> @FieldSerializer.Optional("0") >> long b; >> } >> >> but that seems to default to 0 , even when the Aggregation is putting in >> values. >> >> Could somebody give pointers as to how to solve this >> >> Thanks a ton. >> >> >> >> >