DataFixerUpper
DataFixerUpper copied to clipboard
Make map codecs more resistant to erroring entries. Fixes MC-197860
This is a really simple change that I believe fixes MC-197860. More details are in the issue there, but the root of the problem is the UnboundedMapCodec
's behavior in the case of erroring entries. Previously, this (along with any other BaseMapCodec
implementor) would discard all valid entries after an error, while only actually reporting actual erroring entries.
This PR moves the collection of read results outside the check for the data result in the accumulator, such that all valid entries will get added to the immutable map builder, while keeping intact the behavior of the apply2stable
on the actual success or failure of the result in question.