Hi,

According to
https://ci.apache.org/projects/flink/flink-docs-release-1.11/dev/table/connectors/filesystem.html,
avro is supported for table API but below code failed:

tEnv.executeSql("CREATE TABLE people (\n" +
        "    id  INT,\n" +
        "    name STRING\n" +
        ") WITH (\n" +
        "    'connector' = 'filesystem',\n" +
        "    'path'     = 'file:///data/test.avro',\n" +
        "    'format'    = 'avro',\n" +
        "    'record-class'    = 'avro.Person',\n" +
        "    'property-version'    = '1',\n" +
        "    'properties.bootstrap.servers' = 'kafka:9092'\n" +
        ")");

But got:

 Caused by: org.apache.flink.client.program.ProgramInvocationException: The
main method caused an error: Could not find any factory for identifier
'avro' that implements
'org.apache.flink.table.factories.FileSystemFormatFactory' in the classpath.
jobmanager_1      |
jobmanager_1      | Available factory identifiers are:
jobmanager_1      |
jobmanager_1      | csv
jobmanager_1      | json
jobmanager_1      | parquet
jobmanager_1      |     at
org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:302)
~[flink-dist_2.11-1.11.0.jar:1.11.0]
jobmanager_1      |     at
org.apache.flink.client.program.PackagedProgram.invokeInteractiveModeForExecution(PackagedProgram.java:198)
~[flink-dist_2.11-1.11.0.jar:1.11.0]
jobmanager_1      |     at
org.apache.flink.client.ClientUtils.executeProgram(ClientUtils.java:149)
~[flink-dist_2.11-1.11.0.jar:1.11.0]
jobmanager_1      |     at
org.apache.flink.client.deployment.application.ApplicationDispatcherBootstrap.runApplicationEntryPoint(ApplicationDispatcherBootstrap.java:230)
~[flink-dist_2.11-1.11.0.jar:1.11.0]
jobmanager_1      |     ... 10 more
jobmanager_1      | Caused by:
org.apache.flink.table.api.ValidationException: Could not find any factory
for identifier 'avro' that implements
'org.apache.flink.table.factories.FileSystemFormatFactory' in the classpath.

Any idea? Thanks!

Regards
Leon

Reply via email to