Flink TableAPI列截断异常:设置table.display.max-column-width后仍仅显示30字符
问题原因及解决办法
- 配置时机错误:你在创建临时视图
topicData之后才设置table.display.max-column-width,此时配置不会作用于已创建的视图,导致截断规则仍使用默认的30字符限制。 - 版本兼容性排查:确认你使用的Flink版本在1.11及以上,
table.display.max-column-width是Flink 1.11版本才新增的配置项,低版本不支持该参数。
修正后的代码
TableConfig tableConfig = tableEnv.getConfig(); tableConfig.set("table.display.max-column-width", "1000"); // 先完成配置,再创建临时视图 tableEnv.createTemporaryView("topicData", topicData); tableEnv.sqlQuery("select * from topicData").execute().print();
如果上述调整后仍不生效,可以检查是否存在全局配置文件(如flink-conf.yaml)覆盖了代码中的设置,或者尝试使用table.print()替代execute().print(),前者会更直接遵循table.display.max-column-width的配置规则。
内容的提问来源于stack exchange,提问作者Tomasz Krol
相关产品推荐
相关产品推荐

