This is an automated email from the ASF dual-hosted git repository. fpaul pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/flink.git
commit e73d340668c6264ed847ac7d6134efb4094f90d3 Author: Jing Ge <[email protected]> AuthorDate: Thu Feb 24 17:11:16 2022 +0100 [FLINK-26357][avro-parquet] add FLINK API annotations --- .../flink/formats/parquet/avro/AvroParquetReaders.java | 4 +++- .../flink/formats/parquet/avro/AvroParquetRecordFormat.java | 13 ++++++++++++- .../flink/formats/parquet/avro/AvroParquetWriters.java | 2 ++ .../flink/formats/parquet/avro/ParquetAvroWriters.java | 1 + 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetReaders.java b/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetReaders.java index edbc807..cdb3714 100644 --- a/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetReaders.java +++ b/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetReaders.java @@ -18,6 +18,7 @@ package org.apache.flink.formats.parquet.avro; +import org.apache.flink.annotation.Experimental; import org.apache.flink.api.java.typeutils.TypeExtractor; import org.apache.flink.formats.avro.typeutils.AvroTypeInfo; import org.apache.flink.formats.avro.typeutils.GenericRecordAvroTypeInfo; @@ -30,9 +31,10 @@ import org.apache.avro.specific.SpecificData; import org.apache.avro.specific.SpecificRecordBase; /** - * Convenience builder to create {@link AvroParquetRecordFormat} instances for the different Avro + * Convenience factory to create {@link AvroParquetRecordFormat} instances for the different Avro * types. */ +@Experimental public class AvroParquetReaders { /** diff --git a/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetRecordFormat.java b/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetRecordFormat.java index d83c245..a413a1b 100644 --- a/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetRecordFormat.java +++ b/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetRecordFormat.java @@ -18,6 +18,7 @@ package org.apache.flink.formats.parquet.avro; +import org.apache.flink.annotation.PublicEvolving; import org.apache.flink.annotation.VisibleForTesting; import org.apache.flink.api.common.typeinfo.TypeInformation; import org.apache.flink.configuration.Configuration; @@ -42,7 +43,17 @@ import java.io.IOException; import static org.apache.flink.util.Preconditions.checkArgument; -/** A reader format that reads individual Avro records from a Parquet stream. */ +/** + * A reader format that reads individual Avro records from a Parquet stream. This class leverages + * {@link ParquetReader} underneath. Developer should make sure the parquet files can be worked with + * provided avro schema and take care of any further compatibility issue. + * + * <p>It is recommended to use the factory class {@link AvroParquetReaders} which is capable to + * create {@link AvroParquetRecordFormat AvroParquetRecordFormats} that will work with {@link + * GenericRecord GenericRecords}, {@link org.apache.avro.specific.SpecificRecord SpecificRecords}, + * or {@link org.apache.avro.reflect.ReflectData reflect records} + */ +@PublicEvolving public class AvroParquetRecordFormat<E> implements StreamFormat<E> { private static final long serialVersionUID = 1L; diff --git a/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetWriters.java b/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetWriters.java index 6f6fe8e..28b47fc 100644 --- a/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetWriters.java +++ b/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/AvroParquetWriters.java @@ -18,6 +18,7 @@ package org.apache.flink.formats.parquet.avro; +import org.apache.flink.annotation.Experimental; import org.apache.flink.formats.parquet.ParquetBuilder; import org.apache.flink.formats.parquet.ParquetWriterFactory; @@ -37,6 +38,7 @@ import java.io.IOException; * Convenience builder to create {@link ParquetWriterFactory} instances for the different Avro * types. */ +@Experimental public class AvroParquetWriters { /** * Creates a ParquetWriterFactory for an Avro specific type. The Parquet writers will use the diff --git a/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/ParquetAvroWriters.java b/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/ParquetAvroWriters.java index 7a0f4e7..92a4892 100644 --- a/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/ParquetAvroWriters.java +++ b/flink-formats/flink-parquet/src/main/java/org/apache/flink/formats/parquet/avro/ParquetAvroWriters.java @@ -30,6 +30,7 @@ import org.apache.avro.specific.SpecificRecordBase; * * @deprecated use {@link AvroParquetWriters} instead. */ +@Deprecated public class ParquetAvroWriters { /**
