When instanciating a new RecordBatch with try_new(), the data types of columns are checked to match their corresponding fields in the schema with ==. The == operator will consider all attribues of the two data types and compare strictly if all values are equal. However, a code comment above this comparison indicates :
list types can have different names, but we only need the data types to be the same
The data type comparison in try_new() should be changed into only matching data types, including the nested ones, but leaving out other values.