Thread is here for full details: https://github.com/apache/nifi/pull/5900#pullrequestreview-922490039
It looks like Avro 1.8's schema parser may have been more lenient (or buggy) in enforcing the specification with respect to the ordering of a union for a nullable type. 1.9.X and higher are definitely more opinionated and throw exceptions on schemas that used to work on 1.8.X. For example, this used to be valid: { "name": "message", "type": [ "null", "string" ], "default": "Hello, world" } Now Avro **correctly** throws an exception per the specification. Under 1.8 it did not, and as you can see here, I had to change numerous test schemas in order to make them work under 1.9 to 1.11.0: https://github.com/apache/nifi/pull/5900/files#r835954170 As I said to Matt, I think we're in a "damned if you do, damned if you don't" position here. Thoughts?