public byte[] serialize(RowData rowData) throws IOException {
    if (rowDataSerializer == null) {
      RowType rowType = FlinkSchemaUtil.convert(schema);
      rowDataSerializer = new RowDataSerializer(rowType);
    }
    BinaryRowData binaryRowData = rowDataSerializer.toBinaryRow(rowData);
    if (outputView == null) {
      outputView = new DataOutputSerializer(32);
    }
    outputView.clear();
    serializer.serialize(binaryRowData, outputView);
    return outputView.getCopyOfBuffer();
  }
This is a wrapper for {@link BinaryRowDataSerializer}. It is used to serialize and deserialize
RowData. And serialize and deserialize operations are not thread-safe.
amoro-format-mixed/amoro-mixed-flink/amoro-mixed-flink-common/src/main/java/org/apache/amoro/flink/lookup/BinaryRowDataSerializerWrapper.java