You are viewing a plain text version of this content. The canonical link for it is here.
Posted to builds@streampark.apache.org by GitBox <gi...@apache.org> on 2026/08/24 06:16:23 UTC

[GH] (streampark/dev): Workflow run "Frontend" is working again!

The GitHub Actions job "Frontend" on streampark.git/dev has succeeded.
Run started by GitHub user wolfboys (triggered by wolfboys).

Head commit for run:
9f7fe967b80dce793f9a4d0757d22bf96c400f5b / 88fantasy <88...@gmail.com>
[Console] Fix four DTO/entity defects that break Spark and Flink SQL app management (#4497)

Each of these makes a normal UI operation fail outright; all four are
reproducible on a clean install.

1. FlinkAppCreateRequest carries no sqlId, though the frontend sends one
   and FlinkApplicationManageServiceImpl.updateFlinkSqlJob() requires it
   for an application that has already been started. BeanUtils.copyProperties
   silently skips the absent field, the entity's sqlId stays null, and the
   save fails with "Flink sql is null, update flink sql job failed." Only
   never-started applications were unaffected, since those take the
   candidate branch. SparkAppCreateRequest and FlinkAppResponse both
   already declare sqlId — this was a one-sided omission on the Flink
   request DTOs.

2. SparkAppStateEnum.of(Integer) compares appState.value == state, which
   unboxes. SparkAppListQueryRequest has a scalar state field that is null
   whenever the list is not filtered by status, so the copy to
   SparkApplication leaves state null and shouldTracking() -> getStateEnum()
   -> of(null) throws NPE: /spark/app/list returns 500 for everyone. Now
   returns OTHER for null. FlinkAppStateEnum.getState(Integer) has the same
   unboxing shape but no scalar state field reaching it today, so it is
   left alone here.

3. SparkEnv.doSetSparkConf() only assigned sparkConf when conf/spark-defaults.conf
   existed. A stock Spark distribution ships only spark-defaults.conf.template,
   so for an unmodified Spark home the field stays null and the insert fails
   on t_spark_env.spark_conf, which is NOT NULL with no default — no Spark
   home could be registered at all. An absent file is now stored as an empty
   conf.

4. SparkApplication.k8sImagePullPolicy was a primitive int while
   SparkAppCreateRequest declares Integer and the Spark frontend never sends
   the field, so BeanUtils.copyProperties unboxed null and /spark/app/create
   returned 500 for every UI-created Spark application. The entity field now
   matches its nullable column.

Report URL: https://github.com/apache/streampark/actions/runs/32696406926

With regards,
GitHub Actions via GitBox