Dear All
Currently, we found the implementations of AppendingState#add are not the same, taking some as example: - HeapReducingState will clear state if add null element - RocksDBReducingState will add null element if serializer can serialize null - Both HeapListState and RocksDBListState refuse to add null element — will throw NullPointException we think this need to be fixed, and possible solutions include: 1. Respect the current java doc, which said “If null is passed in, the state value will remain unchanged” 2. Make all AppendingState#add refuse to add null element We propose to apply the second solution, following the recommendation in Guava[1]. Would love to hear your thoughts. Thanks. Regards, Congxian [1] https://github.com/google/guava/wiki/UsingAndAvoidingNullExplained