Yun Gao created FLINK-20291:
-------------------------------
Summary: Optimize the exception message of FileSystemTableSink
when missing format dependencies
Key: FLINK-20291
URL: https://issues.apache.org/jira/browse/FLINK-20291
Project: Flink
Issue Type: Bug
Reporter: Yun Gao
Fix For: 1.12.0
Current when the format factory failed to load, the following exception would
be thrown:
{code:java}
Exception in thread "main" org.apache.flink.table.api.ValidationException:
Unable to create a sink for writing table
'default_catalog.default_database.sink'.
Table options are:
'auto-compaction'='true'
'connector'='filesystem'
'format'='csv'
'path'='file:///tmp/compaction'
at
org.apache.flink.table.factories.FactoryUtil.createTableSink(FactoryUtil.java:166)
at
org.apache.flink.table.planner.delegation.PlannerBase.getTableSink(PlannerBase.scala:362)
at
org.apache.flink.table.planner.delegation.PlannerBase.translateToRel(PlannerBase.scala:220)
at
org.apache.flink.table.planner.delegation.PlannerBase$$anonfun$1.apply(PlannerBase.scala:164)
at
org.apache.flink.table.planner.delegation.PlannerBase$$anonfun$1.apply(PlannerBase.scala:164)
at
scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
at
scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
at scala.collection.Iterator$class.foreach(Iterator.scala:891)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
at scala.collection.TraversableLike$class.map(TraversableLike.scala:234)
at scala.collection.AbstractTraversable.map(Traversable.scala:104)
at
org.apache.flink.table.planner.delegation.PlannerBase.translate(PlannerBase.scala:164)
at
org.apache.flink.table.api.internal.TableEnvironmentImpl.translate(TableEnvironmentImpl.java:1261)
at
org.apache.flink.table.api.internal.TableEnvironmentImpl.executeInternal(TableEnvironmentImpl.java:674)
at
org.apache.flink.table.api.internal.TableEnvironmentImpl.executeOperation(TableEnvironmentImpl.java:757)
at
org.apache.flink.table.api.internal.TableEnvironmentImpl.executeSql(TableEnvironmentImpl.java:664)
at FileCompactionTest.main(FileCompactionTest.java:147)
Caused by: org.apache.flink.table.api.ValidationException: Please implement at
least one of the following formats: BulkWriter.Factory, SerializationSchema,
FileSystemFormatFactory.
at
org.apache.flink.table.filesystem.FileSystemTableSink.<init>(FileSystemTableSink.java:124)
at
org.apache.flink.table.filesystem.FileSystemTableFactory.createDynamicTableSink(FileSystemTableFactory.java:83)
at
org.apache.flink.table.factories.FactoryUtil.createTableSink(FactoryUtil.java:163)
... 18 more
{code}
We might directly advice users to check if the format dependency is added or if
there are package conflicts so that users would fix this issue faster.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)