Thanks guys. I missed the runtime dependencies. After adding below into https://github.com/apache/flink-playgrounds/blob/master/table-walkthrough/Dockerfile. The original issue of "Could not find any factory for identifier" is gone.
wget -P /opt/flink/lib/ https://repo1.maven.org/maven2/org/apache/flink/flink-avro/1.11.0/flink-avro-1.11.0.jar; \ wget -P /opt/flink/lib/ https://repo1.maven.org/maven2/org/apache/avro/avro/1.8.2/avro-1.8.2.jar; \ wget -P /opt/flink/lib/ https://repo1.maven.org/maven2/org/codehaus/jackson/jackson-core-asl/1.9.13/jackson-core-asl-1.9.13.jar; \ wget -P /opt/flink/lib/ https://repo1.maven.org/maven2/org/codehaus/jackson/jackson-mapper-asl/1.9.13/jackson-mapper-asl-1.9.13.jar; \ wget -P /opt/flink/lib/ https://repo1.maven.org/maven2/com/thoughtworks/paranamer/paranamer/2.3/paranamer-2.3.jar; However, I got various NoSuchMethodException related to JsonNode/JsonNull/GenricRecord/... The most recent exception is: java.lang.RuntimeException: java.lang.NoSuchMethodException: org.apache.avro.generic.GenericRecord.<init>() jobmanager_1 | at org.apache.avro.specific.SpecificData.newInstance(SpecificData.java:353) ~[avro-1.8.2.jar:1.8.2] jobmanager_1 | at org.apache.avro.specific.SpecificData.newRecord(SpecificData.java:369) ~[avro-1.8.2.jar:1.8.2] jobmanager_1 | at org.apache.avro.reflect.ReflectData.newRecord(ReflectData.java:901) ~[avro-1.8.2.jar:1.8.2] jobmanager_1 | at org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:212) ~[avro-1.8.2.jar:1.8.2] jobmanager_1 | at org.apache.avro.generic.GenericDatumReader.readWithoutConversion(GenericDatumReader.java:175) ~[avro-1.8.2.jar:1.8.2] jobmanager_1 | at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:153) ~[avro-1.8.2.jar:1.8.2] jobmanager_1 | at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:145) ~[avro-1.8.2.jar:1.8.2] jobmanager_1 | at org.apache.avro.file.DataFileStream.next(DataFileStream.java:233) ~[avro-1.8.2.jar:1.8.2] jobmanager_1 | at org.apache.flink.formats.avro.AvroInputFormat.nextRecord(AvroInputFormat.java:165) ~[flink-avro-1.11.0.jar:1.11.0] jobmanager_1 | at org.apache.flink.formats.avro.AvroFileSystemFormatFactory$RowDataAvroInputFormat.nextRecord(AvroFileSystemFormatFactory.java:200) ~[flink-avro-1.11.0.jar:1.11.0] jobmanager_1 | at org.apache.flink.streaming.api.functions.source.InputFormatSourceFunction.run(InputFormatSourceFunction.java:91) ~[flink-dist_2.11-1.11.0.jar:1.11.0] jobmanager_1 | at org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:100) ~[flink-dist_2.11-1.11.0.jar:1.11.0] jobmanager_1 | at org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:63) ~[flink-dist_2.11-1.11.0.jar:1.11.0] jobmanager_1 | at org.apache.flink.streaming.runtime.tasks.SourceStreamTask$LegacySourceFunctionThread.run(SourceStreamTask.java:201) ~[flink-dist_2.11-1.11.0.jar:1.11.0] Is there a uber jar or a list of runtime dependencies so that developers can easily make the above example of Flink SQL for avro work? Thanks. On Sat, Jul 11, 2020 at 11:39 PM Leonard Xu <xbjt...@gmail.com> wrote: > Hi, Jiang > > > jobmanager_1 | Available factory identifiers are: > jobmanager_1 | > jobmanager_1 | csv > jobmanager_1 | json > jobmanager_1 | parquet > > > After added the flink-avro dependency, did you restart your > cluster/sql-client? It looks flink-avro dependency did not load properly > from the log. > > > Best, > Leonard Xu > -- Create your own email signature <https://www.wisestamp.com/signature-in-email/?utm_source=promotion&utm_medium=signature&utm_campaign=create_your_own&srcid=5234462839406592>