dachenchen690-droid opened a new issue, #10487:
URL: https://github.com/apache/seatunnel/issues/10487

   ### Search before asking
   
   - [x] I had searched in the 
[issues](https://github.com/apache/seatunnel/issues?q=is%3Aissue+label%3A%22bug%22)
 and found no similar issues.
   
   
   ### What happened
   
   [缺陷] [Mongo CDC] 修改或删除数据增量阶段会生成 Java.Lang.NullPointerException 
   mongodb可能是 "data": {
       "pageUrl": "https://mom.cowain.cn/#/work-order-manage/work-order-detail";,
       "requestUrl": 
"https://mom.cowain.cn/dev-api/mom/manual_order/machine/import";,
       "responseText": 
"{\"success\":true,\"message\":\"\",\"code\":\"0\",\"result\":null,\"timestamp\":1769392134770}",
       "status": 200,
       "logTime": {
         "$numberLong": "1769392134775"
       }
     }, 字段是动态的
   doris
   CREATE TABLE `ods_tracking_data_sea` (
     `id` varchar(255) NOT NULL COMMENT '主键',
     `user_id` varchar(50) NULL COMMENT '工号',
     `project_id` varchar(100) NULL COMMENT '所属系统',
     `type` varchar(50) NULL COMMENT '请求类型',
     `page_url` text NULL,
     `request_url` text NULL COMMENT '请求url',
     `status` varchar(25) NULL COMMENT '状态',
     `log_time` varchar(255) NULL COMMENT '记录时间',
     `domain` varchar(255) NULL COMMENT '系统',
     `data_url` varchar(2500) NULL COMMENT '请求url',
     `data_title` varchar(255) NULL COMMENT '系统菜单',
     `data_referrer` varchar(2500) NULL COMMENT '来源',
     `data_error_message` text NULL COMMENT '错误信息',
     `class` varchar(255) NULL COMMENT '类名',
     `create_time` datetime NULL COMMENT '创建时间',
     `update_time` datetime NULL COMMENT '更新时间',
     `last_mod_time` datetime NULL COMMENT '最后一次同步时间'
   ) ENGINE=OLAP
   UNIQUE KEY(`id`)
   COMMENT ''
   DISTRIBUTED BY HASH(`id`) BUCKETS 10
   PROPERTIES (
   "replication_allocation" = "tag.location.default: 3",
   "is_being_synced" = "false",
   "storage_medium" = "hdd",
   "storage_format" = "V2",
   "light_schema_change" = "true",
   "disable_auto_compaction" = "false",
   "enable_single_replica_compaction" = "false",
   "enable_mow_light_delete" = "false"
   );
   
   ### SeaTunnel Version
   
   2.3.12
   
   ### SeaTunnel Config
   
   ```conf
   env {
     parallelism = 1
     job.mode = "STREAMING"
     job.name = "mongo_cdc_realtime"
     checkpoint.interval = 30000
     checkpoint.storage.type = "localfile"
     checkpoint.storage.localfile.path = "/opt/seatunnel/checkpoint_cdc"
   }
   
   source {
     MongoDB-CDC {
       hosts = "**"
       username = "**"
       password = "**"
       auth_source = "admin"
       database = ["tracker"]
       collection = ["tracker.tracking_data"]
       connection.options = "replicaSet=rs0"
   
       schema {
         fields {
           _id = "string"
           userId = "string"
           projectId = "string"
           type = "string"
   
           data {
             pageUrl = "string"
             requestUrl = "string"
             status = "string"
             logTime = "string"
             domain = "string"
             url = "string"
             title = "string"
             referrer = "string"
             errorMessage = "string"
           }
   
           createdAt = "timestamp"
           updatedAt = "timestamp"
           _class = "string"
         }
       }
     }
   }
   
   transform {
     Sql {
       query = """
         SELECT
           CAST(_id AS STRING) AS id,
           userId AS user_id,
           projectId AS project_id,
           type,
           COALESCE(data.pageUrl, '') AS page_url,
           COALESCE(data.requestUrl, '') AS request_url,
           CAST(COALESCE(data.status, '') AS STRING) AS status,
           COALESCE(data.logTime, '') AS log_time,
           COALESCE(data.domain, '') AS domain,
           COALESCE(data.url, '') AS data_url,
           COALESCE(data.title, '') AS data_title,
           COALESCE(data.referrer, '') AS data_referrer,
           COALESCE(data.errorMessage, '') AS data_error_message,
           _class AS class,
          createdAt AS create_time,
           updatedAt AS update_time,
           CURRENT_TIMESTAMP AS last_mod_time
         FROM input
       """
     }
   }
   
   sink {
     Doris {
       fenodes = "**"
       username = "**"
       password = "**"
       database = "**"
       table = "**"
   
       column_names = [
         "id",
         "user_id",
         "project_id",
         "type",
         "page_url",
         "request_url",
         "status",
         "log_time",
         "domain",
         "data_url",
         "data_title",
         "data_referrer",
         "data_error_message",
         "class",
         "create_time",
         "update_time",
         "last_mod_time"
       ]
   
       doris.config = {
         format = "json"
         read_json_by_line = "true"
         strip_outer_array = "false"
   
         max_filter_ratio = "0.95"
   
         label-prefix = "seatunnel_cdc_realtime_${job_id}"
   
       }
     }
   }
   ```
   
   ### Running Command
   
   ```shell
   1
   ```
   
   ### Error Exception
   
   ```log
   [main] - Please submit bug report in 
https://github.com/apache/seatunnel/issues
   2026-02-12 02:08:25,583 ERROR [o.a.s.c.s.SeaTunnel ] [main] - 
Reason:SeaTunnel job executed failed
   2026-02-12 02:08:25,584 ERROR [o.a.s.c.s.SeaTunnel ] [main] - Exception 
StackTrace:org.apache.seatunnel.core.starter.exception.CommandExecuteException: 
SeaTunnel job executed failed
   at 
org.apache.seatunnel.core.starter.seatunnel.command.ClientExecuteCommand.execute(ClientExecuteCommand.java:228)
   at org.apache.seatunnel.core.starter.SeaTunnel.run(SeaTunnel.java:40)
   at 
org.apache.seatunnel.core.starter.seatunnel.SeaTunnelClient.main(SeaTunnelClient.java:40)
   Caused by: 
org.apache.seatunnel.engine.common.exception.SeaTunnelEngineException: 
java.lang.NullPointerException
   at 
org.apache.seatunnel.core.starter.seatunnel.command.ClientExecuteCommand.execute(ClientExecuteCommand.java:220)
   ... 2 more
   2026-02-12 02:08:25,584 ERROR [o.a.s.c.s.SeaTunnel ] [main] -
   
===============================================================================
   Exception in thread "main" 
org.apache.seatunnel.core.starter.exception.CommandExecuteException: SeaTunnel 
job executed failed
   at 
org.apache.seatunnel.core.starter.seatunnel.command.ClientExecuteCommand.execute(ClientExecuteCommand.java:228)
   at org.apache.seatunnel.core.starter.SeaTunnel.run(SeaTunnel.java:40)
   at 
org.apache.seatunnel.core.starter.seatunnel.SeaTunnelClient.main(SeaTunnelClient.java:40)
   Caused by: 
org.apache.seatunnel.engine.common.exception.SeaTunnelEngineException: 
java.lang.NullPointerException
   at 
org.apache.seatunnel.core.starter.seatunnel.command.ClientExecuteCommand.execute(ClientExecuteCommand.java:220)
   ... 2 more
   2026-02-12 02:08:25,586 INFO [s.c.s.s.c.ClientExecuteCommand] 
[SeaTunnel-CompletableFuture-Thread-0] - run shutdown hook because get close 
signal
   ```
   
   ### Zeta or Flink or Spark Version
   
   zeta
   
   ### Java or Scala Version
   
   _No response_
   
   ### Screenshots
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [ ] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [x] I agree to follow this project's [Code of 
Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to