This is an automated email from the ASF dual-hosted git repository.

davidzollo pushed a change to branch stabilize-doris-e2e-startup-and-visibility
in repository https://gitbox.apache.org/repos/asf/seatunnel.git


    from 5cc80c114a Merge remote-tracking branch 'upstream/dev' into fix12142
     add a9cda80f4b [Fix][Zeta] Reuse fixed slots after master failover (#11458)
     add 9e02878a4c [Fix][CI] Use SeaTunnel public team for merge queue bypass 
(#12229)
     add db52cb7b03 [Improve][Connector-V2] Validate nonblank Lance sink 
options (#12222)
     add ea1fb0d850 [Fix][Connector-V2] Return catalog tables from Aerospike 
and SLS sinks (#12234)
     add cf67b549a7 [Fix][Transform-V2] Honor Amazon embedding retry options 
(#12193)
     add 7e468d60f6 [Feature][Connector-V2] Add Google Ads Source Connector 
(#12230)
     add 313cf73196 [Improve][Connector-V2] Add declarative validation for 
Druid sink options (#12250)
     add 176870e4ca [Fix][Connector-V2] Complete connector distribution 
registrations (#12249)
     add 38802bcea2 [Test][Zeta] Add retention-prune on-disk verification for 
checkpoint storage (apache/seatunnel#5046) (#12144)
     add ff4a0b8ec9 [Fix][Zeta] Ignore duplicate schema change checkpoint 
completion (#12150)
     add f45b34db06 [Improve][Zeta] Log node tag changes with their previous 
value (#12071)
     add a55cca1f66 [Improve][Connector-V2] Use HashUtils.bucketIndex in 
AzureCosmosDB enumerator (#12049)
     add 53333ef488 [Fix][Zeta] Add regression test for finished jobs endpoint 
(#11818)
     add 3ab7dcde59 [Fix][API] Fix negative queue index when primary key hash 
is Integer.MIN_VALUE (#11721)
     add 2065fb13fd [Feature][Connector-V2] Support Kafka source connectivity 
dry-run (#12167)
     add 2531b4ef05 [Improve][Connector-V2][File] Validate anydoc Markdown 
handoff (#11813)
     add c4c2434235 [Docs][Connector-V2] Improve Aerospike Feishu Mysql GraphQL 
and Prometheus connector docs (#11794)
     add e3710acba0 [Docs][Connector-V2] Improve Jdbc LocalFile SftpFile 
SqlServer-CDC and Opengauss-CDC connector docs (#11761)
     add 05472d8bd6 [Fix][Transform-V2] Make rename transform case conversion 
locale independent (#11994)
     add 98ff97a743 [Test][E2E] Add sustained backpressure IT for fast source 
vs slow sink (#12107)
     add 3847226697 [Test][E2E] Add regression coverage for duplicate 
pending-job dispatch after failover (#12027)
     add 9c8052f404 [Feature][Connector-V2] Support multi-table InfluxDB source 
(#12247)
     add 287288374e [Fix][Transform-V2] Support small integer MOD divisors 
(#12215)
     add 02b156e457 [Feature][Transform-V2] Add Python transform (#11390)
     add a0561d4045 [Fix][Transform-V2] Preserve exact binary value when 
CASTing floats to DECIMAL (#11523)
     add 09941a1781 [Improve][Connector-V2] Make Couchbase sink readiness 
timeout configurable (#12168)
     add 708a7b0645 [Fix][Connector-V2][JDBC] Apply where_condition to JDBC 
split metadata queries (#12160)
     add 70faa7ce50 [Fix][Connector-V2] Honor Oracle snapshot select overrides 
(#11768)
     add 62efde4746 [Feature][Connector-V2] Add kafka_message_value_fields to 
Kafka sink (#11112)
     add 5af8d789aa [Fix][Connector-V2] Fix Postgres-CDC committed-offset 
recovery skipping rows after savepoint (#11864)
     add cc387508c9 [Feature][Connector-V2][MongoDB-CDC] Support timestamp stop 
mode (#11815)
     add 47fb033fe1 [Fix][Connector-V2] Accept primary keys as snapshot split 
columns (#11979)
     add 85ce19515b [Feature][Connector-V2] Add zendesk sink (#12253)
     add bbde250914 [Fix][CDC] Reconstruct missing snapshot completion 
watermark and always wait for a checkpoint (#12162)
     add 05620d8b63 [Improve][CI] Stabilize workflow run detection (#11594)
     add 6ee0c37447 [Improve][Zeta] Make job detail overview responsive (#12259)
     add 56cfbca0fb [Feature] [connector-http-linear] Add Linear HTTP Source 
Connector and Unit Test (#12270)
     add 7a427d40de [Feature][Connector-V2] Add Facebook Ads source connector 
(#12275)
     add 7d3649ade2 [Feature][Connector-V2] Add Salesforce sink (#12245)
     add 5694541625 Migrated GraphQL according to issue #11007 (#12273)
     add 8a1e1de0de [Fix][Core] Propagate transform lifecycle in Flink and 
Spark starters (#12263)
     add 600797febd [Improve][Connector-V2] Add protobuf format support for 
RabbitMQ (#12244)
     add 2149f5709e [Feature][Connector-V2] Add TikTok Ads reporting source 
(#12283)
     add fbc0524d47 [Improve][Connector-V2] Migrate BigQuery validation to 
declarative OptionRule (#12272)
     add 332d6ac6c0 [Fix][CI] Make ruleset bypass cover full merge gate (#12289)
     add ec1b1b8b51 [Fix][CDC][Zeta] Restore runtime schema from checkpoint 
after failover (#11503)
     add e18b260c0f [Feature][Connector-V2] Support multi-table IoTDB source 
(#12246)
     add 2ed3c81f53 [Improve][Connector-V2] Migrate S3 Redshift validation to 
declarative OptionRule (#12274)
     add dab424cd1c [Fix][Zeta] Isolate task cleanup by execution context 
(#12238)
     add e486ac9ded [Fix][CI] Remove invalid Build ruleset source pin (#12291)
     add 0580c092b0 [Fix][Connector-V2] Preserve offset timestamps in 
ClickHouse sink statements (#12285)
     add d69f5a7848 [Improve][Connector-V2] Add declarative validation for 
Google Firestore sink (#12278)
     add 857d138ef7 [Improve][Transform-V2] Migrate FilterRowKind validation to 
OptionRule (#11763)
     add 5e918f399a [Improve] [API] Deprecate Expression in favor of Condition 
(#11882)
     add 3339132550 [Feature][Connector-V2] Support S3 source connectivity 
dry-run (#12242)
     add 7b88e18705 feat(connector): add Mem0 Platform V3 ADD sink (#12233)
     add 35b2716cde [Fix][CI] Switch minio/minio test containers to the quay.io 
mirror (#12287)
     add 46e58fc16f [Fix][Zeta] Clean empty checkpoint barrier counters (#12260)
     add bd09f6d9ae [Feature][Connector-V2] Support ADD COLUMN schema evolution 
for BigQuery (#11577)
     add ae9132fe07 [Fix][Zeta] Checkpoint restore remap duplicates subtask 
state for parallelism > 1 (#12195)
     add 41a9c4b8fb [Improve][Zeta] Apply the finished-jobs page before the 
per-job metrics and DAG lookups (#12130)
     add 0d9f9e2303 [Fix][CI] Use MinIO mirror for S3 dry-run tests (#12302)
     add 38a37104e5 [Fix][Connector-V2] Support secure passive RabbitMQ 
connections (#11576)
     add f5b7f33e6d [Fix][Zeta] Bound retries for metrics snapshot updates 
(#12227)
     add 1f29461a75 [Feature][Connector-V2] Add RFC 5424 Syslog sink over TLS 
(#12279)
     add f4a9665e84 [Feature][Connector-V2] Add Google Analytics 4 report 
source (#12280)
     add a51712781b [Improve][CI] Run the seatunnel-cli Python test suite in CI 
(#12300)
     add e86c03e537 [Feature][Connector-V2] Add PayPal Transaction Search 
source (#12282)
     add 70a6720fc3 [Improve][E2E] Reuse SeaTunnel container for selected test 
classes (#11626)
     add 60446da971 [Fix][E2E] Unify testcontainers version to 1.21.4 across 
all e2e connectors (#11201)
     add 0b7fb5ddfa [Feature][Connector-V2][LocalFile] Support append-only text 
tailing (#11819)
     add 71a3c75183 [Feature][Firebase] sink connector (#12232)
     add 3ad49cc2e3 [Docs][Connector-V2] Improve Paimon RocketMQ and Pulsar 
connector docs (#12187)
     add 75b60fa14e [Fix][Connector-V2][Paimon] Register writer state 
serializer (#11978)
     add 1325a44b2f [Docs] Add test class conventions to AGENTS.md (#12330)
     add b37af3a9bf [Feature] [connector-http] Add Splunk Source Connector and 
Unit Tests (#12281)
     add 1650a04cdb [Fix][CI] Pin Docker publishing actions to approved SHAs 
(#12356)
     add eaa6403658 [Docs] Fix option inconsistencies and broken anchors in 
connector docs (#12331)
     add 42bd53094a [Fix][Connector-V2] Fix JDBC batch data error masking 
(#11474)
     add 34acb089a3 [Improve][Connector-V2][Prometheus] Retry retryable 
remote-write failures and tolerate duplicate/out-of-order rejections (#11974)
     add c7304ace6e [Test][Connector-V2] Widen PayPalClientTest's loopback HTTP 
wait budget for slower CI runners (#12370)
     add f2d726a8e0 [Fix][Build] Enforce consistent line endings (#12379)
     add 33f4306497 [Fix][Core] Exclude node_modules from src distribution 
(#12389)
     add 065a3df4b3 [Fix][Connector-V2] Propagate HTTP sink write failures 
(#12312)
     add f81e1360e1 [Test][E2E] Start the RocketMQ broker with a single 
identity and wait for name-server routes (#12115)
     add dd13e2a6f1 [Test][E2E] Count each stored message once in RocketMqIT's 
restore verification (#12375)
     add a20ac96ef2 [Fix][CI] Give the all-modules unit-test job headroom over 
its real duration (#12374)
     add febe1f947a [Fix][Connector-File] Clear fileSystem reference on 
HadoopFileSystemProxy close (#12369)
     add c24e46adfd [Test][CLI] Add opt-in paraphrase benchmark suite (#12241)
     add c191297c95 [Test][E2E] Retry NebulaPool init to absorb graphd's 
status-vs-RPC-port startup race (#12329)
     add 08a38f1b8c [Docs] Document DolphinScheduler integration with Docker 
Compose deployments (#11691)
     add fc1d08d328 [Fix][E2E] Warm the RocketMQ topic route at every point of 
use (#12323)
     add ff598706f2 [Fix][Connector-V2] Parse offset timestamps in Iceberg 
delete predicates (#12286)
     add 455d300283 [Fix][Format] Handle heterogeneous numeric JSON fields 
(#11415)
     add 9b4814726c [Fix][Zeta] Skip connector jar operations on master-only 
nodes (#12023)
     add 2f92ff7559 [Test][E2E] Remove RocketMqIT.deleteTopicIfExist, which 
never deleted anything (#12393)
     add 71860b4469 [Feature][Connector-V2] Support OpenMLDB multi-table source 
(#12303)
     add 36401ab4bb [Improve][Connector-V2] Use HashUtils.bucketIndex in 
AmazonDocumentDB enumerator (#12395)
     add 5f7f5c1dbb [Test][E2E] Isolate the RocketMqIT tag tests with unique 
topic and consumer group (#12396)
     add 957e014f68 [Test][E2E] Add multi-pipeline restore slot-contention 
probe for Zeta (#12109)
     add 5522f82462 [Fix][Connector-V2] Make MqttSourceConfig serializable 
(#12406)
     add ea3df16677 [Fix][Connector-V2] Preserve disabled CDC schema behavior 
(#12346)
     add b70652be8a [Fix][Connector-V2] Surface RocketMQ group-offset lookup 
failures instead of rewinding (#12349)
     add 36c0d1b8a6 [Fix][E2E] Retry and route-guard the remaining RocketMqIT 
offset reads (#12392)
     add d710e0678d [Test][Connector-V2] Strengthen the MQTT source 
serialization coverage (#12410)
     add 6934fd0062 [Improve][Connector-V2] Note the multi-topic early return 
in currentOffsets (#12417)
     add 398fdfac5c [Improve][Connector-V2] Validate Fluss sink bootstrap 
servers (#12422)
     add c12764c05b [Fix][Connector-V2] Honor Redis named-user authentication 
(#12402)
     add 7f7e9a7fc3 [Improve][Connector-V2] Validate Tablestore connection 
options (#12424)
     add 801e330cba [Test][Connector-V2] Complete the MQTT serialization field 
coverage (#12416)
     add 0a5c2cc2fc [Fix][Zeta] Render Zeta health metrics with a stable locale 
and bound REST fanout (#12161)
     add 523d69dbb1 [Feature][Connector-V2] Add OceanBase CDC source connector 
(#11060)
     add 6fc3445df7 [Improve][Zeta] Optimize WAL recovery memory usage (#11494)
     add d11453ef95 [Fix][Flink] Process same-timestamp schema restore events 
(#12306)
     add d53da7091a [Test][E2E] Add MqttSourceIT covering the MQTT source on 
Zeta (#12408)
     add 994366248a [Test][Connector-V2] Strengthen the restored MqttSource 
assertions (#12436)
     add 24acaa3586 [Improve][Zeta] Narrow daily core benchmark suite (#12307)
     add e78be4c7a2 [Test][Transform-V2] Cover the MOD divisor type contract 
and its overflow bounds (#12182)
     add 045d6a5793 [Fix][CI] Give jdbc-connectors-it-part-1 and 
transform-v2-it-part-2 headroom over their real durations (#12445)
     add 2a8abf1e65 [Docs] Fix connector doc inaccuracies and add missing 
option rows verified against source code (#12447)
     add 6eea1da1a8 [Improve][Connector-V2] Validate SLS required options 
(#12352)
     add 3f04cb6176 [Test][Connector-V2] Cover the MqttSink serialization 
boundary (#12455)
     add 6fac4cc441 [Improve][Connector-V2] Migrate SensorsData validation to 
OptionRule (#12315)
     add 7067a09840 [Bug][Connector-V2] Ensure generated MySQL primary keys are 
not null (#12425)
     add 1f4038b896 [Hotfix][Docs] Replace unavailable RDS MySQL links (#12452)
     add 4648c9956e [Fix][Connector-V2] Deduplicate table ids in PostgreSQL CDC 
table discovery to support HighGo (#12435)
     add eb76f81c82 [Test][CDC] Cover checkpoint offsets around fetcher failure 
(#12360)
     add deb16a3c31 [docs][jdbc] Fix sample sharding default on Postgres and 
Kingbase pages (#12427)
     add 025d08f9bc [Feature][Connector-V2] Add SMB source&sink connector 
(#12297)
     add c3f06f9a82 [Fix][CDC] Keep the live schema on restore when schema 
change propagation is disabled (#12321)
     add 47223dcd1c [Fix][Zeta] Resolve each member's bound REST HTTP port 
(#12298)
     add 0e1a8b6f84 Add declarative required-option validation for TDengine 
(#12490)
     add 4fd80db52f [Docs] Add RAG ready data processing guide (#12488)
     add 163e6eca73 Merge branch 'dev' into 
stabilize-doris-e2e-startup-and-visibility
     add 166acb6d49 [Test][E2E] Wait for the Doris sink row count to converge 
before comparing rows

No new revisions were added by this update.

Summary of changes:
 .asf.yaml                                          |   37 +-
 .gitattributes                                     |    9 +-
 .github/workflows/backend.yml                      |   21 +-
 .github/workflows/cli.yml                          |  101 ++
 .github/workflows/labeler/label-scope-conf.yml     |   38 +-
 .github/workflows/notify_test_workflow.yml         |  153 +-
 .github/workflows/publish-docker.yaml              |   34 +-
 AGENTS.md                                          |    6 +
 config/plugin_config                               |   19 +
 docs/en/ai-cli/benchmark.md                        |   37 +
 docs/en/architecture/engine/resource-management.md |    2 +
 docs/en/architecture/features/multi-table.md       |   25 +-
 docs/en/architecture/transform-plugin-system.md    |    1 +
 docs/en/connector-v2/source/FacebookAds.md         |  169 +++
 docs/en/connector-v2/source/GoogleAds.md           |  185 +++
 docs/en/connector-v2/source/Http-Linear.md         |   35 +
 ...ector-cdc-db2.md => connector-cdc-oceanbase.md} |    0
 docs/en/connectors/changelog/connector-file-smb.md |    5 +
 .../changelog/connector-google-analytics4.md       |   24 +
 .../connectors/changelog/connector-http-paypal.md  |    5 +
 .../connectors/changelog/connector-http-splunk.md  |    3 +
 docs/en/connectors/changelog/connector-mem0.md     |    7 +
 .../connectors/changelog/connector-salesforce.md   |    5 +
 docs/en/connectors/changelog/connector-syslog.md   |   20 +
 .../connectors/changelog/connector-tiktok-ads.md   |   24 +
 .../connectors/common-options/sink-write-modes.md  |    1 +
 docs/en/connectors/connector-faq.md                |    2 +-
 docs/en/connectors/sink/BigQuery.md                |   31 +-
 docs/en/connectors/sink/BosFile.md                 |    2 +-
 docs/en/connectors/sink/Clickhouse.md              |   10 +
 docs/en/connectors/sink/ClickhouseFile.md          |    4 +-
 docs/en/connectors/sink/CosFile.md                 |    2 +-
 docs/en/connectors/sink/Couchbase.md               |   17 +
 docs/en/connectors/sink/DB2.md                     |    6 +-
 docs/en/connectors/sink/Databend.md                |    2 +-
 docs/en/connectors/sink/Druid.md                   |    4 +-
 docs/en/connectors/sink/DuckDB.md                  |    6 +-
 docs/en/connectors/sink/Firebase.md                |  116 ++
 docs/en/connectors/sink/Fluss.md                   |    6 +
 docs/en/connectors/sink/FtpFile.md                 |    2 +-
 docs/en/connectors/sink/GoogleFirestore.md         |   12 +-
 docs/en/connectors/sink/Hbase.md                   |    1 +
 docs/en/connectors/sink/HdfsFile.md                |    2 +-
 docs/en/connectors/sink/Http.md                    |    2 +
 docs/en/connectors/sink/Hudi.md                    |    1 +
 docs/en/connectors/sink/HugeGraph.md               |    5 +-
 docs/en/connectors/sink/Iceberg.md                 |    6 +-
 docs/en/connectors/sink/IoTDBv2.md                 |    6 +-
 docs/en/connectors/sink/Jdbc.md                    |   55 +-
 docs/en/connectors/sink/Kafka.md                   |    1 +
 docs/en/connectors/sink/Kingbase.md                |    4 +-
 docs/en/connectors/sink/Lance.md                   |    4 +
 docs/en/connectors/sink/LocalFile.md               |    2 +-
 docs/en/connectors/sink/Mem0.md                    |   33 +
 docs/en/connectors/sink/Mysql.md                   |    4 +-
 docs/en/connectors/sink/Oracle.md                  |   10 +-
 docs/en/connectors/sink/OssFile.md                 |    2 +-
 docs/en/connectors/sink/OssJindoFile.md            |    2 +-
 docs/en/connectors/sink/Paimon.md                  |   20 +
 docs/en/connectors/sink/PostgreSql.md              |    6 +-
 docs/en/connectors/sink/Prometheus.md              |   34 +-
 docs/en/connectors/sink/Pulsar.md                  |   14 +
 docs/en/connectors/sink/Qdrant.md                  |    1 +
 docs/en/connectors/sink/Rabbitmq.md                |   58 +
 docs/en/connectors/sink/Redis.md                   |   13 +
 docs/en/connectors/sink/Redshift.md                |    4 +-
 docs/en/connectors/sink/RocketMQ.md                |   16 +-
 docs/en/connectors/sink/S3-Redshift.md             |    2 +-
 docs/en/connectors/sink/S3File.md                  |    2 +-
 docs/en/connectors/sink/Salesforce.md              |  157 +++
 docs/en/connectors/sink/SftpFile.md                |    2 +-
 docs/en/connectors/sink/Sls.md                     |   10 +-
 docs/en/connectors/sink/SmbFile.md                 |  124 ++
 docs/en/connectors/sink/SqlServer.md               |    4 +-
 docs/en/connectors/sink/StarRocks.md               |    4 +-
 docs/en/connectors/sink/Syslog.md                  |  170 +++
 docs/en/connectors/sink/TDengine.md                |    2 +
 docs/en/connectors/sink/Tablestore.md              |    1 +
 docs/en/connectors/sink/Vertica.md                 |    8 +-
 docs/en/connectors/sink/Zendesk.md                 |  133 ++
 docs/en/connectors/source/DB2-CDC.md               |    5 +-
 docs/en/connectors/source/DB2.md                   |    6 +-
 docs/en/connectors/source/Databend.md              |    2 +-
 docs/en/connectors/source/DuckDB.md                |   12 +-
 docs/en/connectors/source/GoogleAnalytics4.md      |  191 +++
 docs/en/connectors/source/HiveJdbc.md              |    5 +-
 docs/en/connectors/source/InfluxDB.md              |   72 +-
 docs/en/connectors/source/IoTDB.md                 |   49 +-
 docs/en/connectors/source/Jdbc.md                  |   43 +
 docs/en/connectors/source/Kafka.md                 |   26 +-
 docs/en/connectors/source/Kingbase.md              |    4 +-
 docs/en/connectors/source/LocalFile.md             |   90 +-
 docs/en/connectors/source/MongoDB-CDC.md           |   42 +
 docs/en/connectors/source/MySQL-CDC.md             |    7 +-
 docs/en/connectors/source/ObsFile.md               |   14 +-
 docs/en/connectors/source/OceanBase-CDC.md         |  119 ++
 docs/en/connectors/source/OpenMldb.md              |   88 +-
 docs/en/connectors/source/Opengauss-CDC.md         |   32 +-
 docs/en/connectors/source/Oracle-CDC.md            |   39 +-
 docs/en/connectors/source/Oracle.md                |    4 +-
 docs/en/connectors/source/OssFile.md               |    2 +-
 docs/en/connectors/source/Paimon.md                |   20 +
 docs/en/connectors/source/PayPal.md                |  107 ++
 docs/en/connectors/source/Persistiq.md             |    4 +-
 docs/en/connectors/source/PostgreSQL-CDC.md        |    4 +
 docs/en/connectors/source/PostgreSQL.md            |    2 +-
 docs/en/connectors/source/Prometheus.md            |    5 +-
 docs/en/connectors/source/Pulsar.md                |   20 +
 docs/en/connectors/source/Rabbitmq.md              |   65 +-
 docs/en/connectors/source/Redis.md                 |   12 +-
 docs/en/connectors/source/RocketMQ.md              |   16 +-
 docs/en/connectors/source/S3File.md                |   40 +
 docs/en/connectors/source/SftpFile.md              |   99 ++
 docs/en/connectors/source/Sls.md                   |   10 +-
 docs/en/connectors/source/SmbFile.md               |  214 +++
 docs/en/connectors/source/Snowflake.md             |    2 +-
 docs/en/connectors/source/Splunk.md                |   54 +
 docs/en/connectors/source/SqlServer-CDC.md         |  107 +-
 docs/en/connectors/source/TDengine.md              |    2 +
 docs/en/connectors/source/Tablestore.md            |    1 +
 docs/en/connectors/source/TiDB-CDC.md              |    2 +-
 docs/en/connectors/source/TikTokAds.md             |  159 +++
 docs/en/developer/anydoc-document-parser-poc.md    |   75 +
 docs/en/edge-agent/configuration.md                |    6 +-
 docs/en/edge-agent/faq.md                          |    4 +-
 docs/en/edge-agent/input-configuration.md          |    2 +-
 docs/en/edge-agent/output-configuration.md         |    2 +-
 docs/en/edge-agent/quick-start.md                  |    8 +-
 docs/en/engines/zeta/hybrid-cluster-deployment.md  |    8 +
 docs/en/engines/zeta/rest-api-v1.md                |    3 +
 docs/en/engines/zeta/rest-api-v2.md                |   21 +-
 .../engines/zeta/separated-cluster-deployment.md   |    8 +
 docs/en/engines/zeta/telemetry.md                  |    8 +
 docs/en/engines/zeta/user-command.md               |    2 +
 .../introduction/concepts/incompatible-changes.md  |   59 +
 .../configuration/config-encryption-decryption.md  |    2 +-
 .../introduction/configuration/schema-evolution.md |    1 +
 docs/en/introduction/rag-data-processing.md        |  181 +++
 docs/en/tools/dolphinscheduler-integration.md      |   90 ++
 docs/en/transforms/embedding.md                    |    7 +-
 docs/en/transforms/python.md                       |  173 +++
 docs/sidebars.js                                   |    5 +-
 docs/zh/ai-cli/benchmark.md                        |   32 +
 docs/zh/architecture/engine/resource-management.md |    2 +
 docs/zh/architecture/features/multi-table.md       |   16 +-
 docs/zh/architecture/transform-plugin-system.md    |    1 +
 docs/zh/connector-v2/source/FacebookAds.md         |  162 +++
 docs/zh/connector-v2/source/GoogleAds.md           |  179 +++
 .../changelog/connector-cdc-oceanbase.md           |    6 +
 docs/zh/connectors/changelog/connector-file-smb.md |    5 +
 .../changelog/connector-google-analytics4.md       |   24 +
 .../connectors/changelog/connector-http-paypal.md  |    5 +
 docs/zh/connectors/changelog/connector-mem0.md     |    7 +
 .../connectors/changelog/connector-salesforce.md   |    5 +
 docs/zh/connectors/changelog/connector-syslog.md   |   20 +
 .../connectors/changelog/connector-tiktok-ads.md   |   24 +
 docs/zh/connectors/connector-faq.md                |   20 +-
 docs/zh/connectors/sink/Aerospike.md               |   10 +-
 docs/zh/connectors/sink/BigQuery.md                |   31 +-
 docs/zh/connectors/sink/BosFile.md                 |    4 +-
 docs/zh/connectors/sink/Clickhouse.md              |   10 +
 docs/zh/connectors/sink/ClickhouseFile.md          |    4 +-
 docs/zh/connectors/sink/Couchbase.md               |   14 +
 docs/zh/connectors/sink/DB2.md                     |    6 +-
 docs/zh/connectors/sink/Databend.md                |    2 +-
 docs/zh/connectors/sink/Druid.md                   |    4 +-
 docs/zh/connectors/sink/DuckDB.md                  |    5 +-
 docs/zh/connectors/sink/Feishu.md                  |   97 +-
 docs/zh/connectors/sink/Firebase.md                |  117 ++
 docs/zh/connectors/sink/Fluss.md                   |    6 +
 docs/zh/connectors/sink/GoogleFirestore.md         |   12 +-
 docs/zh/connectors/sink/Hbase.md                   |    1 +
 docs/zh/connectors/sink/Http.md                    |    2 +
 docs/zh/connectors/sink/Hudi.md                    |   21 +-
 docs/zh/connectors/sink/HugeGraph.md               |    5 +-
 docs/zh/connectors/sink/Iceberg.md                 |    6 +-
 docs/zh/connectors/sink/IoTDBv2.md                 |    6 +-
 docs/zh/connectors/sink/Jdbc.md                    |    6 +-
 docs/zh/connectors/sink/Kafka.md                   |    1 +
 docs/zh/connectors/sink/Kingbase.md                |    4 +-
 docs/zh/connectors/sink/Lance.md                   |    4 +
 docs/zh/connectors/sink/Mem0.md                    |   30 +
 docs/zh/connectors/sink/Mysql.md                   |   12 +-
 docs/zh/connectors/sink/Oracle.md                  |   10 +-
 docs/zh/connectors/sink/OssJindoFile.md            |    2 +-
 docs/zh/connectors/sink/Paimon.md                  |   20 +
 docs/zh/connectors/sink/PostgreSql.md              |    6 +-
 docs/zh/connectors/sink/Prometheus.md              |    6 +-
 docs/zh/connectors/sink/Pulsar.md                  |   14 +
 docs/zh/connectors/sink/Qdrant.md                  |    1 +
 docs/zh/connectors/sink/Rabbitmq.md                |   58 +
 docs/zh/connectors/sink/Redis.md                   |   12 +
 docs/zh/connectors/sink/Redshift.md                |    4 +-
 docs/zh/connectors/sink/RocketMQ.md                |   16 +-
 docs/zh/connectors/sink/S3-Redshift.md             |    2 +-
 docs/zh/connectors/sink/Salesforce.md              |  138 ++
 docs/zh/connectors/sink/Sls.md                     |   10 +-
 docs/zh/connectors/sink/SmbFile.md                 |  108 ++
 docs/zh/connectors/sink/SqlServer.md               |    4 +-
 docs/zh/connectors/sink/StarRocks.md               |    4 +-
 docs/zh/connectors/sink/Syslog.md                  |  166 +++
 docs/zh/connectors/sink/TDengine.md                |    2 +
 docs/zh/connectors/sink/Tablestore.md              |    1 +
 docs/zh/connectors/sink/Vertica.md                 |    8 +-
 docs/zh/connectors/sink/Zendesk.md                 |  130 ++
 docs/zh/connectors/source/BosFile.md               |    2 +-
 docs/zh/connectors/source/DB2-CDC.md               |    5 +-
 docs/zh/connectors/source/DB2.md                   |    6 +-
 docs/zh/connectors/source/Databend.md              |    2 +-
 docs/zh/connectors/source/DuckDB.md                |   12 +-
 docs/zh/connectors/source/FakeSource.md            |    2 +-
 docs/zh/connectors/source/GcsFile.md               |    2 +-
 docs/zh/connectors/source/GoogleAnalytics4.md      |  179 +++
 docs/zh/connectors/source/GraphQL.md               |   90 ++
 docs/zh/connectors/source/Hbase.md                 |    2 +-
 docs/zh/connectors/source/HiveJdbc.md              |    5 +-
 docs/zh/connectors/source/InfluxDB.md              |   68 +-
 docs/zh/connectors/source/IoTDB.md                 |   49 +-
 docs/zh/connectors/source/Kafka.md                 |   25 +-
 docs/zh/connectors/source/Kingbase.md              |    4 +-
 docs/zh/connectors/source/LocalFile.md             |   44 +-
 docs/zh/connectors/source/MongoDB-CDC.md           |   42 +
 docs/zh/connectors/source/MySQL-CDC.md             |    7 +-
 docs/zh/connectors/source/ObsFile.md               |    2 +-
 docs/zh/connectors/source/OceanBase-CDC.md         |  117 ++
 docs/zh/connectors/source/OpenMldb.md              |   81 +-
 docs/zh/connectors/source/Opengauss-CDC.md         |    6 +-
 docs/zh/connectors/source/Oracle-CDC.md            |   39 +-
 docs/zh/connectors/source/Oracle.md                |    4 +-
 docs/zh/connectors/source/OssFile.md               |    2 +-
 docs/zh/connectors/source/OssJindoFile.md          |    2 +-
 docs/zh/connectors/source/Paimon.md                |   20 +
 docs/zh/connectors/source/PayPal.md                |  107 ++
 docs/zh/connectors/source/Persistiq.md             |    6 +-
 docs/zh/connectors/source/PostgreSQL-CDC.md        |    3 +
 docs/zh/connectors/source/PostgreSQL.md            |    2 +-
 docs/zh/connectors/source/Prometheus.md            |   70 +
 docs/zh/connectors/source/Pulsar.md                |   20 +
 docs/zh/connectors/source/Rabbitmq.md              |   65 +-
 docs/zh/connectors/source/Redis.md                 |   10 +-
 docs/zh/connectors/source/RocketMQ.md              |   16 +-
 docs/zh/connectors/source/S3File.md                |   32 +
 docs/zh/connectors/source/Sls.md                   |   10 +-
 docs/zh/connectors/source/SmbFile.md               |  206 +++
 docs/zh/connectors/source/Snowflake.md             |    2 +-
 docs/zh/connectors/source/TDengine.md              |    2 +
 docs/zh/connectors/source/Tablestore.md            |    1 +
 docs/zh/connectors/source/TiDB-CDC.md              |    2 +-
 docs/zh/connectors/source/TikTokAds.md             |  142 ++
 docs/zh/connectors/source/Typesense.md             |    2 +-
 docs/zh/developer/anydoc-document-parser-poc.md    |   75 +
 docs/zh/edge-agent/configuration.md                |    6 +-
 docs/zh/edge-agent/faq.md                          |    4 +-
 docs/zh/edge-agent/input-configuration.md          |    2 +-
 docs/zh/edge-agent/output-configuration.md         |    2 +-
 docs/zh/edge-agent/quick-start.md                  |    8 +-
 docs/zh/engines/zeta/hybrid-cluster-deployment.md  |    8 +
 docs/zh/engines/zeta/log-analysis-with-ai.md       |    2 +-
 docs/zh/engines/zeta/rest-api-v1.md                |    3 +
 docs/zh/engines/zeta/rest-api-v2.md                |   19 +-
 .../engines/zeta/separated-cluster-deployment.md   |    8 +
 docs/zh/engines/zeta/telemetry.md                  |    6 +
 docs/zh/engines/zeta/user-command.md               |    2 +
 .../introduction/concepts/incompatible-changes.md  |   47 +
 .../introduction/configuration/schema-evolution.md |    1 +
 docs/zh/introduction/rag-data-processing.md        |  181 +++
 docs/zh/tools/dolphinscheduler-integration.md      |   90 ++
 docs/zh/transforms/embedding.md                    |    6 +-
 docs/zh/transforms/python.md                       |  173 +++
 mvnw                                               |   22 +-
 plugin-mapping.properties                          |   16 +
 pom.xml                                            |    2 +-
 .../api/configuration/util/Expression.java         |   12 +
 .../api/configuration/util/RequiredOption.java     |    7 +
 .../org/apache/seatunnel/api/event/EventType.java  |    1 +
 .../sink/multitablesink/MultiTableSinkWriter.java  |    9 +-
 .../schema/event/RestoreTableSchemaEvent.java      |   58 +
 .../handler/AlterTableSchemaEventHandler.java      |    4 +
 .../handler/DataTypeChangeEventDispatcher.java     |    4 +
 .../handler/TableSchemaChangeEventDispatcher.java  |    4 +
 .../multitablesink/MultiTableSinkWriterTest.java   |   94 ++
 .../handler/RestoreTableSchemaEventTest.java       |  111 ++
 seatunnel-cli/benchmark/README.md                  |   52 +-
 seatunnel-cli/benchmark/compare.py                 |   18 +
 seatunnel-cli/benchmark/docker/docker-compose.yml  |    4 +-
 seatunnel-cli/benchmark/paraphrases.py             |   73 +
 seatunnel-cli/benchmark/runner.py                  |   58 +-
 seatunnel-cli/benchmark/tasks/paraphrase.json      |   81 ++
 seatunnel-cli/pyproject.toml                       |   11 +-
 seatunnel-cli/tests/test_benchmark_comparison.py   |   44 +
 seatunnel-cli/tests/test_benchmark_paraphrases.py  |  386 ++++++
 .../seatunnel/aerospike/sink/AerospikeSink.java    |   12 +-
 .../AmazonDocumentDBSourceSplitEnumerator.java     |    3 +-
 .../AmazonDocumentDBSourceSplitEnumeratorTest.java |   41 +
 .../source/AzureCosmosDBSourceSplitEnumerator.java |    3 +-
 .../AzureCosmosDBSourceSplitEnumeratorTest.java    |   44 +
 seatunnel-connectors-v2/connector-bigquery/pom.xml |    6 +-
 .../bigquery/catalog/BigQueryCatalog.java          |   13 +
 .../bigquery/client/BigQueryClientFactory.java     |   12 +-
 .../bigquery/convert/BigQuerySerializer.java       |    5 +-
 .../exception/BigQueryConnectorErrorCode.java      |    1 +
 .../bigquery/option/BigQuerySinkOptions.java       |   24 +-
 .../schema/BigQuerySchemaChangeManager.java        |  480 +++++++
 .../bigquery/schema/BigQueryTypeConverter.java     |  158 +++
 .../bigquery/sink/AbstractBigQuerySinkWriter.java  |  196 ++-
 .../bigquery/sink/BigQuerySaveModeHandler.java     |    7 +
 .../connectors/bigquery/sink/BigQuerySink.java     |   31 +-
 .../bigquery/sink/BigQuerySinkBatchWriter.java     |   14 +-
 .../bigquery/sink/BigQuerySinkFactory.java         |   35 +-
 .../bigquery/sink/BigQuerySinkStreamWriter.java    |   12 +-
 .../bigquery/sink/writer/BigQueryBatchWriter.java  |   22 +-
 .../bigquery/sink/writer/BigQueryStreamWriter.java |   20 +-
 .../bigquery/sink/writer/BigQueryWriter.java       |   18 +
 .../bigquery/sink/writer/TableSchemaUtil.java      |   49 +-
 .../schema/BigQuerySchemaChangeManagerTest.java    |  539 ++++++++
 .../bigquery/schema/BigQueryTypeConverterTest.java |   63 +
 .../sink/BigQueryCatalogAndSaveModeTest.java       |  103 ++
 .../bigquery/sink/BigQuerySinkFactoryTest.java     |  116 +-
 .../sink/BigQuerySinkSchemaEvolutionTest.java      |  279 ++++
 .../connectors/cdc/base/config/StopConfig.java     |    2 +-
 .../source/enumerator/SnapshotSplitAssigner.java   |   53 +-
 .../splitter/AbstractJdbcSourceChunkSplitter.java  |   18 +-
 .../source/reader/IncrementalSourceReader.java     |  149 +-
 .../external/IncrementalSourceStreamFetcher.java   |    6 +-
 .../AbstractDebeziumDeserializationSchema.java     |   30 +-
 .../debezium/DebeziumDeserializationSchema.java    |   11 +
 .../row/SeaTunnelRowDebeziumDeserializeSchema.java |   33 +-
 .../jdbc/source/JdbcSourceChunkSplitterTest.java   |   18 +
 .../enumerator/SnapshotSplitAssignerTest.java      |   73 +-
 .../source/reader/IncrementalSourceReaderTest.java |  656 +++++++++
 .../IncrementalSourceStreamFetcherTest.java        |   80 ++
 .../AbstractDebeziumDeserializationSchemaTest.java |   76 +
 ...nelRowDebeziumDeserializeSchemaRestoreTest.java |  104 ++
 .../cdc/mongodb/MongodbIncrementalSource.java      |    5 +-
 .../mongodb/MongodbIncrementalSourceFactory.java   |    6 +
 .../config/MongodbIncrementalSourceOptions.java    |    9 +-
 .../config/MongodbSourceConfigProvider.java        |   28 +-
 .../source/fetch/MongodbStreamFetchTask.java       |   13 +-
 .../MongodbIncrementalSourceFactoryTest.java       |  125 ++
 .../source/fetch/MongodbStreamFetchTaskTest.java}  |   18 +-
 .../source/MySqlIncrementalSourceFactory.java      |  108 +-
 .../connector-cdc/connector-cdc-oceanbase}/pom.xml |   19 +-
 .../source/OceanBaseIncrementalSource.java         |   59 +
 .../source/OceanBaseIncrementalSourceFactory.java  |  123 ++
 .../OceanBaseIncrementalSourceFactoryTest.java     |  109 ++
 .../fetch/scan/OracleSnapshotSplitReadTask.java    |    3 +-
 .../seatunnel/cdc/oracle/utils/OracleUtils.java    |   82 +-
 .../cdc/oracle/utils/OracleUtilsTest.java          |   29 +
 .../postgres/source/PostgresIncrementalSource.java |    9 +-
 .../cdc/postgres/source/offset/LsnOffset.java      |   14 +
 .../source/reader/wal/PostgresWalFetchTask.java    |   14 +-
 .../cdc/postgres/utils/TableDiscoveryUtils.java    |   11 +-
 ...tgresIncrementalSourceSchemaEvolutionTest.java} |   28 +-
 .../cdc/postgres/source/offset/LsnOffsetTest.java  |   38 +
 .../postgres/utils/TableDiscoveryUtilsTest.java    |  153 ++
 seatunnel-connectors-v2/connector-cdc/pom.xml      |    1 +
 .../executor/FieldNamedPreparedStatement.java      |   21 +-
 .../JdbcBatchStatementExecutorBuilder.java         |   19 +-
 .../sink/client/executor/JdbcRowConverter.java     |   31 +
 .../sink/inject/OffsetDateTimeInjectFunction.java  |   62 +
 .../sink/client/executor/JdbcRowConverterTest.java |  204 +++
 .../couchbase/config/CouchbaseSinkOptions.java     |    9 +
 .../couchbase/sink/CouchbaseSinkFactory.java       |    5 +
 .../seatunnel/couchbase/sink/CouchbaseWriter.java  |    7 +-
 .../couchbase/sink/CouchbaseWriterOptions.java     |   25 +
 .../couchbase/sink/CouchbaseSinkFactoryTest.java   |  157 +++
 .../sink/CouchbaseWriterConstructorLeakTest.java   |   39 +
 .../couchbase/sink/CouchbaseWriterOptionsTest.java |   77 ++
 .../sink/DatabendSinkAggregatedCommitter.java      |   18 +-
 .../databend/sink/DatabendSinkCommitterInfo.java   |   20 +
 .../databend/sink/DatabendSinkWriter.java          |   20 +-
 .../databend/sink/DatabendSinkWriterTest.java      |   75 +
 .../doris/sink/writer/DorisSinkWriter.java         |   18 +-
 .../connectors/druid/sink/DruidSinkFactory.java    |    7 +-
 .../seatunnel/druid/DruidFactoryTest.java          |   90 +-
 .../sink/ElasticsearchSinkWriter.java              |    3 +
 .../connector-facebook-ads/pom.xml                 |   55 +
 .../facebook/ads/client/FacebookAdsClient.java     |  254 ++++
 .../facebook/ads/config/FacebookAdsParameters.java |   48 +
 .../ads/config/FacebookAdsSourceOptions.java       |  127 ++
 .../ads/config/FacebookAdsTableConfig.java         |   58 +
 .../exception/FacebookAdsConnectorErrorCode.java}  |   19 +-
 .../exception/FacebookAdsConnectorException.java}  |   28 +-
 .../facebook/ads/source/FacebookAdsSource.java     |  262 ++++
 .../ads/source/FacebookAdsSourceFactory.java}      |   43 +-
 .../ads/source/FacebookAdsSourceReader.java        |   92 ++
 .../facebook/ads/FacebookAdsSourceFactoryTest.java |  160 +++
 .../facebook/ads/client/FacebookAdsClientTest.java |  278 ++++
 .../facebook/ads/source/FacebookAdsSourceTest.java |  246 ++++
 .../seatunnel/file/config/FileSystemType.java      |    3 +-
 .../file/hadoop/HadoopFileSystemProxy.java         |    8 +-
 .../file/sink/writer/AbstractWriteStrategy.java    |   34 +-
 .../seatunnel/file/source/LocalFileIdentity.java   |  116 ++
 .../file/source/event/FileSplitFinishedEvent.java  |    9 +-
 .../file/source/reader/MarkdownReadStrategy.java   |   60 +-
 .../reader/MultipleTableFileSourceReader.java      |   85 +-
 .../seatunnel/file/source/reader/ReadStrategy.java |    9 +
 .../file/source/reader/TextReadStrategy.java       |   46 +-
 ...uousMultipleTableFileSourceSplitEnumerator.java |  566 +++++++-
 .../file/source/split/FileSourceSplit.java         |   31 +-
 .../file/source/state/FileSourceState.java         |  109 +-
 .../seatunnel/file/source/state/FileTailState.java |   53 +
 .../file/hadoop/HadoopFileSystemProxyTest.java     |   14 +
 .../file/reader/StreamLineSplitterTest.java        |   16 +
 .../file/source/LocalFileIdentityTest.java         |  116 ++
 .../source/reader/MarkdownReadStrategyTest.java    |  112 ++
 .../reader/MultipleTableFileSourceReaderTest.java  |  338 +++++
 .../reader/ReadStrategySplitFallbackTest.java      |   31 +
 ...MultipleTableFileSourceSplitEnumeratorTest.java | 1038 ++++++++++++++
 .../FileSourceSerializationCompatibilityTest.java  |  208 +++
 .../file/writer/FileSchemaEvolutionTest.java       |   49 +
 .../src/test/resources/anydoc/test_read_excel.md   |    7 +
 .../file/s3/source/S3FileSourceFactory.java        |   19 +-
 .../file/s3/source/S3SourceDryRunValidator.java    |  284 ++++
 .../seatunnel/file/s3/S3FileSourceFactoryTest.java |    8 +
 .../s3/source/S3SourceDryRunValidatorTest.java     |  463 +++++++
 .../connector-file-smb}/pom.xml                    |   60 +-
 .../file/smb/catalog/SmbFileCatalog.java}          |   16 +-
 .../file/smb/catalog/SmbFileCatalogFactory.java}   |   38 +-
 .../config/MultipleTableSMBFileSourceConfig.java   |   39 +
 .../file/smb/config/SMBFileSourceConfig.java       |   56 +
 .../seatunnel/file/smb/config/SmbConf.java         |   85 ++
 .../file/smb/config/SmbFileBaseOptions.java        |   46 +
 .../file/smb/config/SmbFileSinkOptions.java        |   11 +-
 .../file/smb/config/SmbFileSourceOptions.java      |   11 +-
 .../seatunnel/file/smb/sink/SmbFileSink.java}      |   29 +-
 .../file/smb/sink/SmbFileSinkFactory.java          |  134 ++
 .../seatunnel/file/smb/source/SmbFileSource.java}  |   33 +-
 .../file/smb/source/SmbFileSourceFactory.java}     |   59 +-
 .../seatunnel/file/smb/system/SmbConnection.java   |   84 ++
 .../seatunnel/file/smb/system/SmbFileSystem.java   |  590 ++++++++
 .../seatunnel/file/smb/system/SmbInputStream.java  |  144 ++
 .../seatunnel/file/smb/SmbFileFactoryTest.java     |  239 ++++
 .../file/smb/system/SmbFileSystemTest.java         |  282 ++++
 seatunnel-connectors-v2/connector-file/pom.xml     |    1 +
 seatunnel-connectors-v2/connector-firebase/pom.xml |    6 +
 .../firebase/client/FirebaseHttpClient.java        |   85 +-
 ...SourceOptions.java => FirebaseBaseOptions.java} |   13 +-
 .../firebase/config/FirebaseSinkOptions.java       |   70 +
 .../firebase/config/FirebaseSourceOptions.java     |   35 +-
 .../seatunnel/firebase/sink/FirebaseSink.java}     |   29 +-
 .../firebase/sink/FirebaseSinkFactory.java}        |   31 +-
 .../firebase/sink/FirebaseSinkWriter.java          |  261 ++++
 .../firebase/sink/FirebaseSinkWriterTest.java      |  457 ++++++
 .../seatunnel/fluss/sink/FlussSinkFactory.java     |    5 +-
 .../seatunnel/fluss/sink/FlussSinkFactoryTest.java |   67 +
 .../connector-google-ads/pom.xml                   |   55 +
 .../google/ads/client/GoogleAdsClient.java         |  402 ++++++
 .../google/ads/config/GoogleAdsParameters.java     |   59 +
 .../google/ads/config/GoogleAdsSourceOptions.java  |  160 +++
 .../google/ads/config/GoogleAdsTableConfig.java}   |   45 +-
 .../exception/GoogleAdsConnectorErrorCode.java}    |   20 +-
 .../exception/GoogleAdsConnectorException.java}    |   27 +-
 .../google/ads/source/GoogleAdsSource.java         |  251 ++++
 .../google/ads/source/GoogleAdsSourceFactory.java} |   49 +-
 .../google/ads/source/GoogleAdsSourceReader.java   |   98 ++
 .../google/ads/GoogleAdsSourceFactoryTest.java     |  209 +++
 .../google/ads/client/GoogleAdsClientTest.java     |  418 ++++++
 .../google/ads/source/GoogleAdsSourceTest.java     |  296 ++++
 .../connector-google-analytics4/pom.xml            |  105 ++
 .../google/analytics4/GoogleAnalytics4Config.java  |  201 +++
 .../analytics4/GoogleAnalytics4HttpTransport.java  |  278 ++++
 .../google/analytics4/GoogleAnalytics4Report.java  |  319 +++++
 .../google/analytics4/GoogleAnalytics4Source.java  |   67 +
 .../analytics4/GoogleAnalytics4SourceFactory.java} |   45 +-
 .../analytics4/GoogleAnalytics4SourceOptions.java  |  114 ++
 .../analytics4/GoogleAnalytics4SourceReader.java   |  260 ++++
 .../analytics4/GoogleAnalytics4ReportTest.java     |  336 +++++
 .../GoogleAnalytics4SourceReaderTest.java          |  490 +++++++
 .../TestGoogleAnalytics4PackagingIT.java           |  208 +++
 .../firestore/sink/FirestoreSinkFactory.java       |    7 +-
 .../google/firestore/FirestoreFactoryTest.java     |   91 +-
 .../seatunnel/graphql/sink/GraphQLSinkFactory.java |    4 +-
 .../graphql/source/GraphQLSourceFactory.java       |    4 +-
 .../seatunnel/graphql/util/GraphQLUtil.java        |   10 -
 .../seatunnel/http/sink/HttpSinkWriter.java        |   28 +-
 .../http/sink/HttpSinkBatchWriterTest.java         |   40 +
 .../connector-http/connector-http-linear}/pom.xml  |   21 +-
 .../connectors/seatunnel/linear/LinearSource.java  |   56 +
 .../seatunnel/linear/LinearSourceFactory.java}     |   24 +-
 .../linear/config/LinearSourceOptions.java}        |   18 +-
 .../linear/config/LinearSourceParameter.java}      |   25 +-
 .../seatunnel/linear/LinearSourceFactoryTest.java  |   47 +
 .../connector-http/connector-http-paypal}/pom.xml  |   21 +-
 .../seatunnel/paypal/source/PayPalClient.java      |  296 ++++
 .../seatunnel/paypal/source/PayPalConfig.java      |  155 +++
 .../seatunnel/paypal/source/PayPalResponse.java    |  168 +++
 .../seatunnel/paypal/source/PayPalSource.java      |  100 ++
 .../paypal/source/PayPalSourceFactory.java}        |   33 +-
 .../paypal/source/PayPalSourceOptions.java         |   85 ++
 .../paypal/source/PayPalSourceReader.java          |   95 ++
 .../seatunnel/paypal/source/PayPalClientTest.java  |  496 +++++++
 .../paypal/source/PayPalResponseTest.java          |  402 ++++++
 .../paypal/source/TestPayPalPackagingIT.java       |  141 ++
 .../connector-http/connector-http-splunk}/pom.xml  |   20 +-
 .../connectors/seatunnel/splunk/SplunkSource.java  |   55 +
 .../seatunnel/splunk/SplunkSourceFactory.java}     |   26 +-
 .../seatunnel/splunk/SplunkSourceReader.java       |  118 ++
 .../splunk/config/SplunkSourceOptions.java         |   41 +
 .../splunk/config/SplunkSourceParameter.java       |   68 +
 .../seatunnel/splunk/SplunkSourceFactoryTest.java  |  142 ++
 .../seatunnel/splunk/SplunkSourceReaderTest.java   |   76 +
 .../seatunnel/zendesk/config/ZendeskConfig.java    |   83 ++
 .../seatunnel/zendesk/sink/ZendeskSink.java        |   84 ++
 .../zendesk/sink/ZendeskSinkFactory.java}          |   26 +-
 .../seatunnel/zendesk/sink/ZendeskSinkWriter.java  |  233 ++++
 .../config/ZendeskSinkOptions.java}                |   26 +-
 .../source/config/ZendeskSourceOptions.java        |   23 +-
 .../zendesk/sink/ZendeskSinkFactoryTest.java}      |   13 +-
 .../zendesk/sink/ZendeskSinkWriterTest.java        |  371 +++++
 .../connector-http/connector-mem0/pom.xml          |   35 +
 .../seatunnel/mem0/config/Mem0SinkOptions.java     |   68 +
 .../connectors/seatunnel/mem0/sink/Mem0Sink.java   |   94 ++
 .../seatunnel/mem0/sink/Mem0SinkFactory.java}      |   29 +-
 .../seatunnel/mem0/sink/Mem0SinkWriter.java        |  193 +++
 .../seatunnel/mem0/sink/Mem0SinkWriterTest.java    |  166 +++
 seatunnel-connectors-v2/connector-http/pom.xml     |    4 +
 .../seatunnel/iceberg/sink/IcebergSinkWriter.java  |   10 +-
 .../seatunnel/iceberg/utils/ExpressionUtils.java   |   17 +
 .../catalog/IcebergTimestampDeleteTest.java        |  161 +++
 .../iceberg/utils/ExpressionUtilsTest.java         |  102 ++
 .../seatunnel/influxdb/source/InfluxDBSource.java  |   26 +-
 .../influxdb/source/InfluxDBSourceFactory.java     |  176 ++-
 .../influxdb/source/InfluxDBSourceSplit.java       |   10 +
 .../source/InfluxDBSourceSplitEnumerator.java      |   69 +-
 .../influxdb/source/InfluxDBSourceTable.java}      |   31 +-
 .../influxdb/source/InfluxdbSourceReader.java      |   76 +-
 .../source/InfluxDBMultiTableSourceTest.java       |  555 ++++++++
 .../seatunnel/iotdb/source/IoTDBSource.java        |   16 +-
 .../seatunnel/iotdb/source/IoTDBSourceFactory.java |  156 ++-
 .../seatunnel/iotdb/source/IoTDBSourceReader.java  |   36 +-
 .../seatunnel/iotdb/source/IoTDBSourceSplit.java   |   11 +
 .../iotdb/source/IoTDBSourceSplitEnumerator.java   |   43 +-
 .../seatunnel/iotdb/IoTDBFactoryTest.java          |  102 ++
 .../iotdb/source/IoTDBMultiTableSourceTest.java    |  365 +++++
 .../catalog/mysql/MysqlCreateTableSqlBuilder.java  |   10 +-
 .../OceanBaseMysqlCreateTableSqlBuilder.java       |   11 +-
 .../seatunnel/jdbc/internal/JdbcOutputFormat.java  |  205 ++-
 .../jdbc/internal/JdbcOutputFormatBuilder.java     |   15 +-
 .../BufferReducedBatchStatementExecutor.java       |   52 +-
 .../executor/BufferedBatchStatementExecutor.java   |   26 +-
 .../jdbc/sink/AbstractJdbcSinkWriter.java          |   33 +-
 .../connectors/seatunnel/jdbc/sink/JdbcSink.java   |    3 +-
 .../seatunnel/jdbc/sink/JdbcSinkWriter.java        |  144 +-
 .../seatunnel/jdbc/source/ChunkSplitter.java       |   44 +-
 .../jdbc/source/DynamicChunkSplitter.java          |    7 +-
 .../seatunnel/jdbc/source/JdbcSourceReader.java    |   13 +
 .../seatunnel/jdbc/source/JdbcSourceTable.java     |   22 +
 .../mysql/MysqlCreateTableSqlBuilderTest.java      |   37 +
 .../OceanBaseMysqlCreateTableSqlBuilderTest.java   |   40 +
 .../internal/JdbcOutputFormatBatchCommitTest.java  |  171 +++
 .../JdbcOutputFormatReconnectSafetyTest.java       |  187 +++
 .../jdbc/internal/JdbcOutputFormatTest.java        |   30 +-
 .../jdbc/internal/executor/BufferExecutorTest.java |   12 +-
 ...kWriterSharedPhysicalTableSchemaChangeTest.java |    6 +-
 .../seatunnel/jdbc/sink/JdbcSinkWriterTest.java    |  330 +++++
 .../jdbc/source/DynamicChunkSplitterTest.java      |   85 ++
 .../seatunnel/kafka/config/KafkaSinkOptions.java   |    8 +
 .../serialize/DefaultSeaTunnelRowSerializer.java   |   45 +-
 .../seatunnel/kafka/sink/KafkaSinkWriter.java      |   49 +
 .../kafka/source/KafkaSourceDryRunValidator.java   |  139 ++
 .../seatunnel/kafka/source/KafkaSourceFactory.java |   21 +-
 .../seatunnel/kafka/KafkaFactoryTest.java          |   11 +
 .../DefaultSeaTunnelRowSerializerTest.java         |   47 +
 .../source/KafkaSourceDryRunValidatorTest.java     |  512 +++++++
 .../seatunnel/lance/sink/LanceSinkFactory.java     |    7 +-
 .../seatunnel/lance/sink/LanceSinkWriter.java      |   16 +-
 .../seatunnel/lance/utils/FragmentConverter.java   |   42 +-
 .../seatunnel/lance/LanceFactoryTest.java          |  111 +-
 .../seatunnel/lance/sink/LanceSinkTest.java        |   24 +
 .../lance/utils/FragmentConverterTest.java         |   69 +
 .../seatunnel/mqtt/source/MqttSourceConfig.java    |   10 +-
 .../seatunnel/mqtt/sink/MqttSinkTest.java          |  120 ++
 .../mqtt/source/MqttSourceConfigTest.java          |   46 +
 .../seatunnel/mqtt/source/MqttSourceTest.java      |   60 +
 .../openmldb/config/OpenMldbSqlExecutor.java       |   71 +-
 .../openmldb/source/OpenMldbReadClient.java        |  209 +++
 .../seatunnel/openmldb/source/OpenMldbSource.java  |   45 +-
 .../openmldb/source/OpenMldbSourceFactory.java     |  125 +-
 .../openmldb/source/OpenMldbSourceReader.java      |  121 +-
 .../seatunnel/openmldb/OpenMldbFactoryTest.java    |  133 ++
 .../openmldb/source/OpenMldbSourceReaderTest.java  |  238 ++++
 .../openmldb/source/OpenMldbSourceTest.java        |  143 ++
 .../openmldb/source/TestOpenMldbSourceIT.java      |  386 ++++++
 .../seatunnel/paimon/sink/PaimonSink.java          |    5 +
 .../seatunnel/paimon/sink/PaimonSinkWriter.java    |   21 +-
 .../paimon/sink/writer/PaimonWriteTest.java        |  142 ++
 .../seatunnel/prometheus/sink/PrometheusSink.java  |   12 +
 .../prometheus/sink/PrometheusWriter.java          |  183 ++-
 .../prometheus/sink/PrometheusWriterTest.java      |  158 +++
 seatunnel-connectors-v2/connector-rabbitmq/pom.xml |    5 +
 .../seatunnel/rabbitmq/client/RabbitmqClient.java  |   55 +-
 .../rabbitmq/config/RabbitmqBaseOptions.java       |   39 +
 .../seatunnel/rabbitmq/config/RabbitmqConfig.java  |   35 +-
 .../rabbitmq/config/RabbitmqMessageFormat.java     |   15 +-
 .../config/RabbitmqTableConfigsValidator.java      |   17 +
 .../exception/RabbitmqConnectorErrorCode.java      |    3 +-
 .../rabbitmq/sink/RabbitmqSinkFactory.java         |   11 +
 .../rabbitmq/sink/RabbitmqSinkWriter.java          |   29 +-
 .../seatunnel/rabbitmq/source/RabbitmqSource.java  |   27 +-
 .../rabbitmq/source/RabbitmqSourceFactory.java     |   11 +
 .../rabbitmq/source/RabbitmqSourceReader.java      |   36 +-
 .../seatunnel/rabbitmq/RabbitmqFactoryTest.java    |   42 +
 .../rabbitmq/RabbitmqSinkFactoryTest.java          |   84 ++
 .../rabbitmq/RabbitmqSourceFactoryTest.java        |   85 ++
 .../seatunnel/rabbitmq/RabbitmqSourceTest.java     |   59 +
 .../rabbitmq/client/RabbitmqClientTest.java        |   83 ++
 .../seatunnel/redis/config/RedisBaseOptions.java   |   11 +-
 .../seatunnel/redis/config/RedisParameters.java    |   65 +-
 .../connectors/seatunnel/redis/Redis7Test.java     |  257 ++++
 .../seatunnel/redis/RedisFactoryTest.java          |   74 +
 .../rocketmq/common/RocketMqAdminUtil.java         |  132 +-
 .../rocketmq/source/RocketMqConsumerThread.java    |    8 +
 .../rocketmq/source/RocketMqSourceReader.java      |    2 +
 .../rocketmq/common/RocketMqAdminUtilTest.java     |  239 ++++
 .../source/RocketMqSourceSplitEnumeratorTest.java  |   51 +
 .../redshift/sink/S3RedshiftSinkFactory.java       |   11 +-
 .../redshift/sink/S3RedshiftSinkFactoryTest.java   |   80 ++
 .../salesforce/client/SalesforceClient.java        |  223 ++-
 .../salesforce/config/SalesforceSinkConfig.java    |  107 ++
 .../salesforce/config/SalesforceSinkOptions.java   |   53 +
 .../exception/SalesforceConnectorErrorCode.java    |    3 +-
 .../salesforce/sink/SalesforceRowSerializer.java   |  206 +++
 .../seatunnel/salesforce/sink/SalesforceSink.java} |   34 +-
 .../salesforce/sink/SalesforceSinkFactory.java     |   91 ++
 .../salesforce/sink/SalesforceSinkWriter.java      |  174 +++
 .../sink/SalesforceRowSerializerTest.java          |  251 ++++
 .../salesforce/sink/SalesforceSinkTest.java        |  505 +++++++
 .../sdk/sink/SensorsDataSDKSinkFactory.java        |    6 +
 .../sensorsdata/sdk/SensorsDataSDKFactoryTest.java |   71 +-
 .../connectors/seatunnel/sls/sink/SlsSink.java     |   13 +-
 .../seatunnel/sls/sink/SlsSinkFactory.java         |   18 +-
 .../seatunnel/sls/source/SlsSourceFactory.java     |   13 +-
 .../connectors/seatunnel/sls/SlsFactoryTest.java   |   94 +-
 .../starrocks/sink/StarRocksSinkWriter.java        |   12 +
 .../connector-syslog/examples/fake_to_syslog.conf  |   43 +-
 .../connector-syslog}/pom.xml                      |   16 +-
 .../seatunnel/syslog/config/SyslogSinkConfig.java  |   65 +
 .../seatunnel/syslog/config/SyslogSinkOptions.java |   76 +
 .../syslog/sink/SyslogMessageEncoder.java          |  241 ++++
 .../seatunnel/syslog/sink/SyslogSink.java}         |   38 +-
 .../seatunnel/syslog/sink/SyslogSinkFactory.java   |   73 +
 .../seatunnel/syslog/sink/SyslogSinkWriter.java    |   86 ++
 .../seatunnel/syslog/sink/SyslogTlsClient.java     |  304 ++++
 .../syslog/sink/SyslogMessageEncoderTest.java      |  306 ++++
 .../syslog/sink/SyslogSinkFactoryTest.java         |  141 ++
 .../syslog/sink/SyslogSinkWriterTest.java          |  240 ++++
 .../seatunnel/syslog/sink/SyslogTlsClientTest.java |  395 ++++++
 .../tablestore/sink/TableStoreSinkFactory.java     |   17 +-
 .../tablestore/source/TableStoreSourceFactory.java |   18 +-
 .../tablestore/TableStoreFactoryTest.java          |  154 ++-
 .../tdengine/sink/TDengineSinkFactory.java         |   13 +-
 .../tdengine/source/TDengineSourceFactory.java     |   17 +-
 .../tdengine/sink/TDengineSinkFactoryTest.java     |   78 ++
 .../tdengine/source/TDengineSourceFactoryTest.java |   82 ++
 .../connector-tiktok-ads/pom.xml                   |   79 ++
 .../seatunnel/tiktok/ads/TikTokAdsClient.java      |  236 ++++
 .../seatunnel/tiktok/ads/TikTokAdsConfig.java      |  204 +++
 .../seatunnel/tiktok/ads/TikTokAdsReport.java      |  213 +++
 .../seatunnel/tiktok/ads/TikTokAdsSource.java      |   67 +
 .../tiktok/ads/TikTokAdsSourceFactory.java}        |   45 +-
 .../tiktok/ads/TikTokAdsSourceOptions.java         |  110 ++
 .../tiktok/ads/TikTokAdsSourceReader.java          |  150 ++
 .../tiktok/ads/TestTikTokAdsPackagingIT.java       |  161 +++
 .../seatunnel/tiktok/ads/TikTokAdsReportTest.java  |  438 ++++++
 .../tiktok/ads/TikTokAdsSourceReaderTest.java      |  456 ++++++
 seatunnel-connectors-v2/pom.xml                    |    5 +
 .../core/starter/utils/ConfigShadeUtils.java       |    2 +-
 .../core/starter/utils/ConfigBuilderTest.java      |   24 +
 .../flink/execution/TransformExecuteProcessor.java |   72 +-
 .../execution/TransformExecuteProcessorTest.java   |  151 ++
 .../spark/execution/TransformExecuteProcessor.java |   56 +-
 .../execution/TransformExecuteProcessorTest.java   |  156 +++
 seatunnel-dist/pom.xml                             |   66 +
 seatunnel-dist/release-docs/LICENSE                |   32 +
 seatunnel-dist/release-docs/NOTICE                 |    4 +
 .../{LICENSE-jnats.txt => LICENSE-asn-one.txt}     |    0
 .../licenses/LICENSE-bcprov-jdk18on.txt            |   19 +
 .../licenses/LICENSE-codec-commons-codec.txt       |  404 +++---
 .../release-docs/licenses/LICENSE-commons-lang.txt |  404 +++---
 .../licenses/LICENSE-google-api-common.txt         |   26 +
 .../release-docs/licenses/LICENSE-google-auth.txt  |   28 +
 .../release-docs/licenses/LICENSE-mbassador.txt    |   21 +
 .../{LICENSE-jnats.txt => LICENSE-smbj.txt}        |    0
 .../release-docs/licenses/LICENSE-snappy-java.txt  |  404 +++---
 .../src/main/assembly/assembly-seatunnel-src.xml   |    6 +
 .../connector/TransformSpecificationCheckTest.java |    2 +-
 .../connector-activemq-e2e/pom.xml                 |    2 +-
 .../connector-amazonsqs-e2e/pom.xml                |    2 +-
 .../connector-bigquery-e2e/pom.xml                 |    2 +-
 .../e2e/connector/bigquery/AbstractBigqueryIT.java |   44 +-
 .../e2e/connector/bigquery/BigQueryCDCIT.java      |  257 ----
 .../e2e/connector/bigquery/BigQueryCDCRealIT.java  |  417 ++++++
 .../e2e/connector/bigquery/BigqueryIT.java         |   65 +-
 .../src/test/resources/fake_to_bigquery_sink.conf  |    1 +
 ...k.conf => fake_to_bigquery_streaming_sink.conf} |   49 +-
 .../mysql_cdc_to_bigquery_real_sink.conf}          |   33 +-
 .../src/test/java/mongodb/MongodbCDCIT.java        |  120 ++
 .../resources/mongodbcdc_stop_mode_timestamp.conf} |   48 +-
 .../cdc/mysql/AbstractMysqlCDCITBase.java          |    3 +-
 ...mysqlcdc_to_mysql_with_column_include_list.conf |    2 +-
 .../pom.xml                                        |   35 +-
 .../cdc/oceanbase/MySqlCompatibleContainer.java    |  287 ++++
 .../cdc/oceanbase/OceanBaseCDCCompatibilityIT.java |  288 ++++
 .../src/test/resources/docker/server-gtids/my.cnf  |    0
 .../src/test/resources/docker/setup.sql            |   24 +
 .../oceanbasecdc_to_mysql_compatible.conf}         |   36 +-
 .../seatunnel/cdc/postgres/OpengaussCDCIT.java     |    2 +-
 .../clickhouse/ClickhouseOffsetTimestampIT.java    |  269 ++++
 .../connector/couchbase/CouchbaseReadinessIT.java  |  167 +++
 .../connector-databend-e2e/pom.xml                 |    1 -
 .../e2e/connector/databend/DatabendCDCSinkIT.java  |    8 +-
 .../e2e/connector/databend/DatabendIT.java         |    8 +-
 .../e2e/connector/doris/DorisErrorIT.java          |   15 +-
 .../seatunnel/e2e/connector/doris/DorisIT.java     |   23 +
 .../connector-elasticsearch-e2e/pom.xml            |    2 +-
 .../seatunnel/e2e/connector/fake/FakeIT.java       |    6 +
 .../e2e/connector/fake/FakeSqlConfIT.java          |    6 +
 ...ConfIT.java => SharedContainerTestSupport.java} |   20 +-
 .../connector-file-local-e2e/pom.xml               |    2 +-
 .../connector/file/s3/S3FileConnectDryRunIT.java   |  191 +++
 .../file/s3/S3FileConnectDryRunWireIT.java         |  249 ++++
 .../e2e/connector/file/s3/S3FileWithFilterIT.java  |    7 +-
 .../pom.xml                                        |   14 +-
 .../e2e/connector/file/smb/SmbFileIT.java          |  150 ++
 .../src/test/resources/json/e2e.json               |    0
 .../resources/json/fake_to_smb_file_json.conf}     |   80 +-
 .../resources/json/smb_file_json_to_assert.conf}   |   93 +-
 .../src/test/resources/text/e2e.txt                |    0
 .../resources/text/fake_to_smb_file_text.conf}     |   80 +-
 .../resources/text/smb_file_text_to_assert.conf}   |   93 +-
 .../e2e/connector/firebase/FirebaseSinkIT.java     |  196 +++
 .../test/resources/fake_source_to_firebase.conf}   |   49 +-
 .../connector-google-analytics4-e2e/pom.xml        |   48 +
 .../google/analytics4/GoogleAnalytics4IT.java      |  135 ++
 .../resources/google_analytics4_to_assert.conf     |   55 +
 .../connector-http-e2e/pom.xml                     |    6 +
 .../e2e/connector/http/SalesforceSinkIT.java       |  132 ++
 .../src/test/resources/fake_to_salesforce.conf}    |   38 +-
 .../connector-hudi-e2e/pom.xml                     |    2 +-
 .../hudi/HudiSeatunnelS3MultiTableIT.java          |   15 +-
 .../connector/hudi/HudiSparkS3MultiTableIT.java    |   15 +-
 .../connector-iceberg-s3-e2e/pom.xml               |    1 -
 .../e2e/connector/iceberg/s3/IcebergSourceIT.java  |   15 +-
 .../connector-influxdb-e2e/pom.xml                 |    6 +
 .../influxdb/InfluxDBMultiTableSourceIT.java       |  218 +++
 .../e2e/connector/influxdb/InfluxdbIT.java         |    7 +
 .../resources/influxdb-multi-table-source.conf     |   87 ++
 .../connector-iotdb-e2e/pom.xml                    |    6 +
 .../seatunnel/e2e/connector/iotdb/IoTDBIT.java     |   12 +
 .../connector/iotdb/IoTDBMultiTableSourceIT.java   |  170 +++
 .../resources/iotdb/iotdb_multi_table_source.conf  |   69 +
 .../connector-jdbc-e2e-part-2/pom.xml              |    7 +-
 .../seatunnel/jdbc/JdbcOceanBaseMilvusIT.java      |    2 +-
 .../connectors/seatunnel/jdbc/JdbcHanaIT.java      |    5 +-
 .../e2e/connector/kafka/KafkaConnectDryRunIT.java  |  209 +++
 .../seatunnel/e2e/connector/kafka/KafkaIT.java     |    2 +-
 .../connector-milvus-e2e/pom.xml                   |    7 +-
 .../seatunnel/e2e/connector/mqtt/MqttSourceIT.java |  358 +++++
 .../src/test/resources/mqtt_source_e2e.conf}       |   43 +-
 .../e2e/connector/nebulagraph/NebulaGraphIT.java   |   33 +-
 .../connector-paimon-e2e/pom.xml                   |    2 +-
 .../e2e/connector/paimon/PaimonWithS3IT.java       |   15 +-
 .../resources/paimon_to_paimon_privilege1.conf     |    1 +
 .../connector-paypal-e2e/pom.xml                   |   54 +
 .../seatunnel/e2e/connector/paypal/PayPalIT.java   |  155 +++
 .../e2e/connector/paypal/PayPalMaskingTest.java    |   63 +
 .../src/test/resources/paypal_to_assert.conf       |   52 +
 .../connector-qdrant-e2e/pom.xml                   |    2 +-
 .../e2e/connector/rabbitmq/RabbitmqIT.java         |  143 ++
 .../resources/rabbitmq-protobuf-to-rabbitmq.conf   |   83 ++
 .../seatunnel/e2e/connector/redis/Redis7IT.java    |   46 +
 .../connector/redis/RedisTestCaseTemplateIT.java   |    2 +-
 .../src/test/resources/redis-named-user.conf}      |   35 +-
 .../e2e/connector/rocketmq/RocketMqContainer.java  |  123 +-
 .../e2e/connector/rocketmq/RocketMqIT.java         |  168 ++-
 .../rocketmq-source_text_error_tag_to_console.conf |    3 +-
 .../rocketmq-source_text_tag_to_console.conf       |    3 +-
 .../pom.xml                                        |   11 +-
 .../e2e/connector/syslog/SyslogSinkIT.java         |  232 ++++
 .../src/test/resources/docker/syslog-ng.conf}      |   42 +-
 .../src/test/resources/fake_to_syslog.conf         |   59 +
 .../connector-tiktok-ads-e2e/pom.xml               |   48 +
 .../e2e/connector/tiktok/ads/TikTokAdsIT.java      |  131 ++
 .../src/test/resources/tiktok_ads_to_assert.conf   |   60 +
 seatunnel-e2e/seatunnel-connector-v2-e2e/pom.xml   |    6 +
 .../common/container/ReusableTestContainer.java    |   39 +
 .../flink/AbstractTestFlinkContainer.java          |   38 +
 .../common/container/flink/Flink20Container.java   |    2 +
 .../container/seatunnel/SeaTunnelContainer.java    |  314 ++++-
 .../common/junit/ContainerTestingExtension.java    |   89 +-
 .../e2e/common/junit/ReuseTestContainers.java      |   42 +
 .../common/junit/SharedTestContainerResource.java  |  100 ++
 .../junit/SharedTestContainerResourceTest.java     |  267 ++++
 .../junit/TestCaseInvocationContextProvider.java   |   41 +-
 .../e2e/sink/inmemory/InMemorySinkFactory.java     |   12 +
 .../e2e/sink/inmemory/InMemorySinkWriter.java      |   13 +
 .../engine/e2e/BackpressureSlowSinkIT.java         |  335 +++++
 .../org/apache/seatunnel/engine/e2e/RestApiIT.java |   97 +-
 .../engine/e2e/SplitClusterFaultToleranceIT.java   |  292 ++++
 .../SplitClusterPendingJobLifecycleFailoverIT.java |  241 ++++
 ...fake_to_localfile_slot_contention_template.conf |  132 ++
 ...t_fakesource_to_slow_inmemory_backpressure.conf |   67 +
 .../seatunnel/engine/e2e/k8s/KubernetesIT.java     |  131 +-
 .../e2e/transform/TestPythonTransformIT.java       |  410 ++++++
 .../python_transform/python_transform.conf         |  118 ++
 .../python_transform/python_transform_path.conf    |  112 ++
 .../python_transform/python_transform_path.py}     |   32 +-
 .../engine/common/config/EngineConfig.java         |   12 +
 .../config/YamlSeaTunnelDomConfigProcessor.java    |    9 +
 .../common/config/server/ServerConfigOptions.java  |    9 +
 .../engine/server/CoordinatorService.java          |    3 +
 .../seatunnel/engine/server/JettyService.java      |   39 +-
 .../engine/server/SeaTunnelHealthMonitor.java      |   18 +-
 .../seatunnel/engine/server/SeaTunnelServer.java   |   10 +-
 .../engine/server/TaskExecutionService.java        |  371 +++--
 .../server/checkpoint/CheckpointCoordinator.java   |   63 +-
 .../HazelcastMetricsSnapshotStateStore.java        |   56 +-
 .../engine/server/execution/TaskGroupContext.java  |   80 +-
 .../seatunnel/engine/server/master/JobMaster.java  |  109 +-
 .../server/operation/GetNodeHttpPortOperation.java |    6 +-
 .../resourcemanager/AbstractResourceManager.java   |   12 +-
 .../server/resourcemanager/ResourceManager.java    |    5 +-
 .../resourcemanager/resource/SlotProfile.java      |   21 +-
 .../engine/server/rest/service/BaseService.java    |  105 +-
 .../engine/server/rest/service/JobInfoService.java |   85 +-
 .../server/rest/service/LoggerLevelService.java    |    6 +-
 .../server/rest/service/UpdateTagsService.java     |   11 +
 .../server/rest/servlet/FinishedJobsServlet.java   |   21 +-
 .../server/rest/servlet/PageBaseServlet.java       |  145 +-
 .../server/service/slot/DefaultSlotService.java    |   29 +-
 .../server/task/SinkAggregatedCommitterTask.java   |    2 +-
 .../server/task/error/DefaultErrorSinkWriter.java  |   49 +-
 .../DeleteConnectorJarInExecutionNode.java         |    3 +
 .../SendConnectorJarToMemberNodeOperation.java     |    3 +
 .../engine/server/ConnectorPackageServiceTest.java |   62 +
 .../engine/server/CoordinatorServiceTest.java      |   33 +-
 .../engine/server/SeaTunnelHealthMonitorTest.java  |   64 +
 .../engine/server/TaskExecutionServiceTest.java    |  325 ++++-
 .../checkpoint/CheckpointCoordinatorTest.java      |  239 ++++
 .../CheckpointStorageRetentionPruneTest.java       |  292 ++++
 .../HazelcastMetricsSnapshotStateStoreTest.java    |  302 +++-
 .../JobMasterMasterFailoverResourceTest.java       |  281 ++++
 .../operation/GetNodeHttpPortOperationTest.java    |   68 +-
 .../resourcemanager/ResourceManagerTest.java       |   59 +
 .../rest/service/BaseServiceHealthMetricsTest.java |  158 +++
 .../rest/service/JobInfoServiceNullSafetyTest.java |   48 +
 .../rest/servlet/FinishedJobsServletTest.java      |  179 +++
 .../task/SinkAggregatedCommitterTaskTest.java      |   20 +
 .../task/error/DefaultErrorSinkWriterTest.java     |   83 ++
 .../task/flow/TransformFlowLifeCycleCloseTest.java |   65 +
 .../file/common/LatestMutationAccumulator.java     |  101 ++
 .../engine/imap/storage/file/common/WALReader.java |   92 +-
 .../storage/file/wal/reader/DefaultReader.java     |   92 +-
 .../imap/storage/file/wal/reader/IFileReader.java  |   18 +
 .../file/common/LatestMutationAccumulatorTest.java |   64 +
 .../file/common/WALReaderAndWriterTest.java        |   90 ++
 .../src/components/live-metrics-chart/board.tsx    |   38 +-
 .../src/components/live-metrics-chart/index.tsx    |   87 +-
 .../seatunnel-engine-ui/src/service/job/index.ts   |    4 +-
 .../seatunnel-engine-ui/src/tests/jobs.spec.ts     |   14 +-
 .../seatunnel-engine-ui/src/views/jobs/detail.scss |  156 ++-
 .../seatunnel-engine-ui/src/views/jobs/detail.tsx  |  143 +-
 .../examples/google_analytics4_to_console.conf     |   34 +-
 .../resources/examples/tiktok_ads_to_console.conf  |   35 +-
 .../seatunnel/format/json/RowToJsonConverters.java |   68 +-
 .../format/json/JsonRowDataSerDeSchemaTest.java    |   48 +
 .../discovery/AbstractPluginDiscoveryTest.java     |    4 +-
 .../home/connectors/plugin-mapping.properties      |    2 +
 .../transform/calcite/CalciteTransform.java        |    4 +
 .../common/AbstractCatalogSupportMapTransform.java |    4 +
 .../transform/common/ChainedMapTransform.java      |   16 +-
 .../filterrowkind/FilterRowKindTransform.java      |   12 +-
 .../FilterRowKindTransformFactory.java             |    9 +-
 .../nlpmodel/embedding/EmbeddingTransform.java     |   22 +-
 .../transform/python/PythonColumnConfig.java       |   47 +-
 .../python/PythonMultiCatalogTransform.java        |   96 ++
 .../transform/python/PythonProcessWorker.java      | 1456 ++++++++++++++++++++
 .../transform/python/PythonTransform.java          |  320 +++++
 .../transform/python/PythonTransformConfig.java    |  241 ++++
 .../transform/python/PythonTransformErrorCode.java |   82 ++
 .../transform/python/PythonTransformFactory.java   |  126 ++
 .../transform/rename/FieldRenameTransform.java     |   23 +-
 .../transform/rename/TableRenameTransform.java     |   26 +-
 .../seatunnel/transform/sql/SQLTransform.java      |    4 +
 .../sql/zeta/functions/NumericFunction.java        |   13 +
 .../sql/zeta/functions/SystemFunction.java         |   30 +-
 .../resources/python_transform/worker_template.py  |   79 ++
 .../FilterRowKindTransformFactoryTest.java         |   98 +-
 .../common/AbstractMultiCatalogTransformTest.java  |   59 +
 .../embedding/AmazonEmbeddingInvocationTest.java   |  314 +++++
 .../transform/python/PythonTransformTest.java      | 1221 ++++++++++++++++
 .../transform/rename/FieldRenameTransformTest.java |   47 +
 .../transform/rename/TableRenameTransformTest.java |   53 +
 .../transform/sql/SQLNumericFunctionsTest.java     |   21 +
 .../seatunnel/transform/sql/SQLTransformTest.java  |   35 +
 .../transform/sql/zeta/NumericFunctionTest.java    |   26 +
 .../sql/zeta/functions/NumericFunctionTest.java    |   28 +
 .../sql/zeta/functions/SystemFunctionTest.java     |  137 ++
 .../translation/flink/schema/SchemaOperator.java   |   15 +-
 .../flink/schema/SchemaOperatorTest.java           |   78 +-
 tools/benchmarks/suites/benchmarks_core.txt        |   15 +-
 tools/dependencies/known-dependencies.txt          |    1 +
 903 files changed, 64050 insertions(+), 4001 deletions(-)
 create mode 100644 .github/workflows/cli.yml
 create mode 100644 docs/en/connector-v2/source/FacebookAds.md
 create mode 100644 docs/en/connector-v2/source/GoogleAds.md
 create mode 100644 docs/en/connector-v2/source/Http-Linear.md
 copy docs/en/connectors/changelog/{connector-cdc-db2.md => 
connector-cdc-oceanbase.md} (100%)
 create mode 100644 docs/en/connectors/changelog/connector-file-smb.md
 create mode 100644 docs/en/connectors/changelog/connector-google-analytics4.md
 create mode 100644 docs/en/connectors/changelog/connector-http-paypal.md
 create mode 100644 docs/en/connectors/changelog/connector-http-splunk.md
 create mode 100644 docs/en/connectors/changelog/connector-mem0.md
 create mode 100644 docs/en/connectors/changelog/connector-salesforce.md
 create mode 100644 docs/en/connectors/changelog/connector-syslog.md
 create mode 100644 docs/en/connectors/changelog/connector-tiktok-ads.md
 create mode 100644 docs/en/connectors/sink/Firebase.md
 create mode 100644 docs/en/connectors/sink/Mem0.md
 create mode 100644 docs/en/connectors/sink/Salesforce.md
 create mode 100644 docs/en/connectors/sink/SmbFile.md
 create mode 100644 docs/en/connectors/sink/Syslog.md
 create mode 100644 docs/en/connectors/sink/Zendesk.md
 create mode 100644 docs/en/connectors/source/GoogleAnalytics4.md
 create mode 100644 docs/en/connectors/source/OceanBase-CDC.md
 create mode 100644 docs/en/connectors/source/PayPal.md
 create mode 100644 docs/en/connectors/source/SmbFile.md
 create mode 100644 docs/en/connectors/source/Splunk.md
 create mode 100644 docs/en/connectors/source/TikTokAds.md
 create mode 100644 docs/en/developer/anydoc-document-parser-poc.md
 create mode 100644 docs/en/introduction/rag-data-processing.md
 create mode 100644 docs/en/tools/dolphinscheduler-integration.md
 create mode 100644 docs/en/transforms/python.md
 create mode 100644 docs/zh/connector-v2/source/FacebookAds.md
 create mode 100644 docs/zh/connector-v2/source/GoogleAds.md
 create mode 100644 docs/zh/connectors/changelog/connector-cdc-oceanbase.md
 create mode 100644 docs/zh/connectors/changelog/connector-file-smb.md
 create mode 100644 docs/zh/connectors/changelog/connector-google-analytics4.md
 create mode 100644 docs/zh/connectors/changelog/connector-http-paypal.md
 create mode 100644 docs/zh/connectors/changelog/connector-mem0.md
 create mode 100644 docs/zh/connectors/changelog/connector-salesforce.md
 create mode 100644 docs/zh/connectors/changelog/connector-syslog.md
 create mode 100644 docs/zh/connectors/changelog/connector-tiktok-ads.md
 create mode 100644 docs/zh/connectors/sink/Firebase.md
 create mode 100644 docs/zh/connectors/sink/Mem0.md
 create mode 100644 docs/zh/connectors/sink/Salesforce.md
 create mode 100644 docs/zh/connectors/sink/SmbFile.md
 create mode 100644 docs/zh/connectors/sink/Syslog.md
 create mode 100644 docs/zh/connectors/sink/Zendesk.md
 create mode 100644 docs/zh/connectors/source/GoogleAnalytics4.md
 create mode 100644 docs/zh/connectors/source/OceanBase-CDC.md
 create mode 100644 docs/zh/connectors/source/PayPal.md
 create mode 100644 docs/zh/connectors/source/SmbFile.md
 create mode 100644 docs/zh/connectors/source/TikTokAds.md
 create mode 100644 docs/zh/developer/anydoc-document-parser-poc.md
 create mode 100644 docs/zh/introduction/rag-data-processing.md
 create mode 100644 docs/zh/tools/dolphinscheduler-integration.md
 create mode 100644 docs/zh/transforms/python.md
 create mode 100644 
seatunnel-api/src/main/java/org/apache/seatunnel/api/table/schema/event/RestoreTableSchemaEvent.java
 create mode 100644 
seatunnel-api/src/test/java/org/apache/seatunnel/api/table/schema/handler/RestoreTableSchemaEventTest.java
 create mode 100644 seatunnel-cli/benchmark/paraphrases.py
 create mode 100644 seatunnel-cli/benchmark/tasks/paraphrase.json
 create mode 100644 seatunnel-cli/tests/test_benchmark_paraphrases.py
 create mode 100644 
seatunnel-connectors-v2/connector-bigquery/src/main/java/org/apache/seatunnel/connectors/bigquery/schema/BigQuerySchemaChangeManager.java
 create mode 100644 
seatunnel-connectors-v2/connector-bigquery/src/main/java/org/apache/seatunnel/connectors/bigquery/schema/BigQueryTypeConverter.java
 create mode 100644 
seatunnel-connectors-v2/connector-bigquery/src/test/java/org/apache/seatunnel/connectors/bigquery/schema/BigQuerySchemaChangeManagerTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-bigquery/src/test/java/org/apache/seatunnel/connectors/bigquery/schema/BigQueryTypeConverterTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-bigquery/src/test/java/org/apache/seatunnel/connectors/bigquery/sink/BigQuerySinkSchemaEvolutionTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-cdc/connector-cdc-base/src/test/java/org/apache/seatunnel/connectors/cdc/debezium/AbstractDebeziumDeserializationSchemaTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-cdc/connector-cdc-base/src/test/java/org/apache/seatunnel/connectors/cdc/debezium/row/SeaTunnelRowDebeziumDeserializeSchemaRestoreTest.java
 copy 
seatunnel-connectors-v2/{connector-rabbitmq/src/test/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/RabbitmqFactoryTest.java
 => 
connector-cdc/connector-cdc-mongodb/src/test/java/org/apache/seatunnel/connectors/seatunnel/cdc/mongodb/source/fetch/MongodbStreamFetchTaskTest.java}
 (55%)
 copy {seatunnel-e2e/seatunnel-connector-v2-e2e/connector-iotdb-e2e => 
seatunnel-connectors-v2/connector-cdc/connector-cdc-oceanbase}/pom.xml (80%)
 create mode 100644 
seatunnel-connectors-v2/connector-cdc/connector-cdc-oceanbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/oceanbase/source/OceanBaseIncrementalSource.java
 create mode 100644 
seatunnel-connectors-v2/connector-cdc/connector-cdc-oceanbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/oceanbase/source/OceanBaseIncrementalSourceFactory.java
 create mode 100644 
seatunnel-connectors-v2/connector-cdc/connector-cdc-oceanbase/src/test/java/org/apache/seatunnel/connectors/seatunnel/cdc/oceanbase/source/OceanBaseIncrementalSourceFactoryTest.java
 copy 
seatunnel-connectors-v2/connector-cdc/connector-cdc-postgres/src/test/java/org/apache/seatunnel/connectors/seatunnel/cdc/postgres/source/{offset/LsnOffsetTest.java
 => PostgresIncrementalSourceSchemaEvolutionTest.java} (50%)
 create mode 100644 
seatunnel-connectors-v2/connector-cdc/connector-cdc-postgres/src/test/java/org/apache/seatunnel/connectors/seatunnel/cdc/postgres/utils/TableDiscoveryUtilsTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/sink/inject/OffsetDateTimeInjectFunction.java
 create mode 100644 
seatunnel-connectors-v2/connector-clickhouse/src/test/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/sink/client/executor/JdbcRowConverterTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-couchbase/src/test/java/org/apache/seatunnel/connectors/seatunnel/couchbase/sink/CouchbaseSinkFactoryTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-couchbase/src/test/java/org/apache/seatunnel/connectors/seatunnel/couchbase/sink/CouchbaseWriterOptionsTest.java
 create mode 100644 seatunnel-connectors-v2/connector-facebook-ads/pom.xml
 create mode 100644 
seatunnel-connectors-v2/connector-facebook-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/client/FacebookAdsClient.java
 create mode 100644 
seatunnel-connectors-v2/connector-facebook-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/config/FacebookAdsParameters.java
 create mode 100644 
seatunnel-connectors-v2/connector-facebook-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/config/FacebookAdsSourceOptions.java
 create mode 100644 
seatunnel-connectors-v2/connector-facebook-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/config/FacebookAdsTableConfig.java
 copy 
seatunnel-connectors-v2/{connector-bigquery/src/main/java/org/apache/seatunnel/connectors/bigquery/exception/BigQueryConnectorErrorCode.java
 => 
connector-facebook-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/exception/FacebookAdsConnectorErrorCode.java}
 (62%)
 copy 
seatunnel-connectors-v2/{connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/source/InfluxDBSourceSplit.java
 => 
connector-facebook-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/exception/FacebookAdsConnectorException.java}
 (51%)
 create mode 100644 
seatunnel-connectors-v2/connector-facebook-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/source/FacebookAdsSource.java
 copy 
seatunnel-connectors-v2/{connector-iotdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/iotdb/source/IoTDBSourceFactory.java
 => 
connector-facebook-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/source/FacebookAdsSourceFactory.java}
 (60%)
 create mode 100644 
seatunnel-connectors-v2/connector-facebook-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/source/FacebookAdsSourceReader.java
 create mode 100644 
seatunnel-connectors-v2/connector-facebook-ads/src/test/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/FacebookAdsSourceFactoryTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-facebook-ads/src/test/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/client/FacebookAdsClientTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-facebook-ads/src/test/java/org/apache/seatunnel/connectors/seatunnel/facebook/ads/source/FacebookAdsSourceTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/source/LocalFileIdentity.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/source/state/FileTailState.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-base/src/test/java/org/apache/seatunnel/connectors/seatunnel/file/source/LocalFileIdentityTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-base/src/test/java/org/apache/seatunnel/connectors/seatunnel/file/source/split/FileSourceSerializationCompatibilityTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-base/src/test/resources/anydoc/test_read_excel.md
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-s3/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/s3/source/S3SourceDryRunValidator.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-s3/src/test/java/org/apache/seatunnel/connectors/seatunnel/file/s3/source/S3SourceDryRunValidatorTest.java
 copy seatunnel-connectors-v2/{connector-firebase => 
connector-file/connector-file-smb}/pom.xml (51%)
 copy 
seatunnel-connectors-v2/{connector-sensorsdata/src/test/java/org/apache/seatunnel/connectors/sensorsdata/sdk/SensorsDataSDKFactoryTest.java
 => 
connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/catalog/SmbFileCatalog.java}
 (63%)
 copy 
seatunnel-connectors-v2/{connector-fluss/src/main/java/org/apache/seatunnel/connectors/seatunnel/fluss/sink/FlussSinkFactory.java
 => 
connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/catalog/SmbFileCatalogFactory.java}
 (51%)
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/config/MultipleTableSMBFileSourceConfig.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/config/SMBFileSourceConfig.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/config/SmbConf.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/config/SmbFileBaseOptions.java
 copy seatunnel-engine/seatunnel-engine-ui/src/views/jobs/detail.scss => 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/config/SmbFileSinkOptions.java
 (85%)
 copy seatunnel-engine/seatunnel-engine-ui/src/views/jobs/detail.scss => 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/config/SmbFileSourceOptions.java
 (85%)
 copy 
seatunnel-connectors-v2/{connector-aerospike/src/main/java/org/apache/seatunnel/connectors/seatunnel/aerospike/sink/AerospikeSink.java
 => 
connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/sink/SmbFileSink.java}
 (56%)
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/sink/SmbFileSinkFactory.java
 copy 
seatunnel-connectors-v2/{connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/source/JdbcSourceTable.java
 => 
connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/source/SmbFileSource.java}
 (52%)
 copy 
seatunnel-connectors-v2/connector-file/{connector-file-s3/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/s3/source/S3FileSourceFactory.java
 => 
connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/source/SmbFileSourceFactory.java}
 (78%)
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/system/SmbConnection.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/system/SmbFileSystem.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/smb/system/SmbInputStream.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/test/java/org/apache/seatunnel/connectors/seatunnel/file/smb/SmbFileFactoryTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-file/connector-file-smb/src/test/java/org/apache/seatunnel/connectors/seatunnel/file/smb/system/SmbFileSystemTest.java
 copy 
seatunnel-connectors-v2/connector-firebase/src/main/java/org/apache/seatunnel/connectors/seatunnel/firebase/config/{FirebaseSourceOptions.java
 => FirebaseBaseOptions.java} (84%)
 create mode 100644 
seatunnel-connectors-v2/connector-firebase/src/main/java/org/apache/seatunnel/connectors/seatunnel/firebase/config/FirebaseSinkOptions.java
 copy 
seatunnel-connectors-v2/{connector-aerospike/src/main/java/org/apache/seatunnel/connectors/seatunnel/aerospike/sink/AerospikeSink.java
 => 
connector-firebase/src/main/java/org/apache/seatunnel/connectors/seatunnel/firebase/sink/FirebaseSink.java}
 (67%)
 copy 
seatunnel-connectors-v2/{connector-fluss/src/main/java/org/apache/seatunnel/connectors/seatunnel/fluss/sink/FlussSinkFactory.java
 => 
connector-firebase/src/main/java/org/apache/seatunnel/connectors/seatunnel/firebase/sink/FirebaseSinkFactory.java}
 (58%)
 create mode 100644 
seatunnel-connectors-v2/connector-firebase/src/main/java/org/apache/seatunnel/connectors/seatunnel/firebase/sink/FirebaseSinkWriter.java
 create mode 100644 
seatunnel-connectors-v2/connector-firebase/src/test/java/org/apache/seatunnel/connectors/seatunnel/firebase/sink/FirebaseSinkWriterTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-fluss/src/test/java/org/apache/seatunnel/connectors/seatunnel/fluss/sink/FlussSinkFactoryTest.java
 create mode 100644 seatunnel-connectors-v2/connector-google-ads/pom.xml
 create mode 100644 
seatunnel-connectors-v2/connector-google-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/ads/client/GoogleAdsClient.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/ads/config/GoogleAdsParameters.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/ads/config/GoogleAdsSourceOptions.java
 copy 
seatunnel-connectors-v2/{connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/source/JdbcSourceTable.java
 => 
connector-google-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/ads/config/GoogleAdsTableConfig.java}
 (52%)
 copy 
seatunnel-connectors-v2/{connector-bigquery/src/main/java/org/apache/seatunnel/connectors/bigquery/exception/BigQueryConnectorErrorCode.java
 => 
connector-google-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/ads/exception/GoogleAdsConnectorErrorCode.java}
 (61%)
 copy 
seatunnel-connectors-v2/{connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/source/InfluxDBSourceSplit.java
 => 
connector-google-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/ads/exception/GoogleAdsConnectorException.java}
 (52%)
 create mode 100644 
seatunnel-connectors-v2/connector-google-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/ads/source/GoogleAdsSource.java
 copy 
seatunnel-connectors-v2/{connector-iotdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/iotdb/source/IoTDBSourceFactory.java
 => 
connector-google-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/ads/source/GoogleAdsSourceFactory.java}
 (55%)
 create mode 100644 
seatunnel-connectors-v2/connector-google-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/ads/source/GoogleAdsSourceReader.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-ads/src/test/java/org/apache/seatunnel/connectors/seatunnel/google/ads/GoogleAdsSourceFactoryTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-ads/src/test/java/org/apache/seatunnel/connectors/seatunnel/google/ads/client/GoogleAdsClientTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-ads/src/test/java/org/apache/seatunnel/connectors/seatunnel/google/ads/source/GoogleAdsSourceTest.java
 create mode 100644 seatunnel-connectors-v2/connector-google-analytics4/pom.xml
 create mode 100644 
seatunnel-connectors-v2/connector-google-analytics4/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/analytics4/GoogleAnalytics4Config.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-analytics4/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/analytics4/GoogleAnalytics4HttpTransport.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-analytics4/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/analytics4/GoogleAnalytics4Report.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-analytics4/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/analytics4/GoogleAnalytics4Source.java
 copy 
seatunnel-connectors-v2/{connector-iotdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/iotdb/source/IoTDBSourceFactory.java
 => 
connector-google-analytics4/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/analytics4/GoogleAnalytics4SourceFactory.java}
 (58%)
 create mode 100644 
seatunnel-connectors-v2/connector-google-analytics4/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/analytics4/GoogleAnalytics4SourceOptions.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-analytics4/src/main/java/org/apache/seatunnel/connectors/seatunnel/google/analytics4/GoogleAnalytics4SourceReader.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-analytics4/src/test/java/org/apache/seatunnel/connectors/seatunnel/google/analytics4/GoogleAnalytics4ReportTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-analytics4/src/test/java/org/apache/seatunnel/connectors/seatunnel/google/analytics4/GoogleAnalytics4SourceReaderTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-google-analytics4/src/test/java/org/apache/seatunnel/connectors/seatunnel/google/analytics4/TestGoogleAnalytics4PackagingIT.java
 copy {seatunnel-e2e/seatunnel-connector-v2-e2e/connector-iotdb-e2e => 
seatunnel-connectors-v2/connector-http/connector-http-linear}/pom.xml (73%)
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-linear/src/main/java/org/apache/seatunnel/connectors/seatunnel/linear/LinearSource.java
 copy 
seatunnel-connectors-v2/{connector-graphql/src/main/java/org/apache/seatunnel/connectors/seatunnel/graphql/source/GraphQLSourceFactory.java
 => 
connector-http/connector-http-linear/src/main/java/org/apache/seatunnel/connectors/seatunnel/linear/LinearSourceFactory.java}
 (65%)
 copy 
seatunnel-connectors-v2/{connector-sensorsdata/src/test/java/org/apache/seatunnel/connectors/sensorsdata/sdk/SensorsDataSDKFactoryTest.java
 => 
connector-http/connector-http-linear/src/main/java/org/apache/seatunnel/connectors/seatunnel/linear/config/LinearSourceOptions.java}
 (63%)
 copy 
seatunnel-connectors-v2/{connector-tablestore/src/test/java/org/apache/seatunnel/connectors/seatunnel/tablestore/TableStoreFactoryTest.java
 => 
connector-http/connector-http-linear/src/main/java/org/apache/seatunnel/connectors/seatunnel/linear/config/LinearSourceParameter.java}
 (50%)
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-linear/src/test/java/org/apache/seatunnel/connectors/seatunnel/linear/LinearSourceFactoryTest.java
 copy {seatunnel-e2e/seatunnel-connector-v2-e2e/connector-iotdb-e2e => 
seatunnel-connectors-v2/connector-http/connector-http-paypal}/pom.xml (73%)
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-paypal/src/main/java/org/apache/seatunnel/connectors/seatunnel/paypal/source/PayPalClient.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-paypal/src/main/java/org/apache/seatunnel/connectors/seatunnel/paypal/source/PayPalConfig.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-paypal/src/main/java/org/apache/seatunnel/connectors/seatunnel/paypal/source/PayPalResponse.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-paypal/src/main/java/org/apache/seatunnel/connectors/seatunnel/paypal/source/PayPalSource.java
 copy 
seatunnel-connectors-v2/{connector-tdengine/src/main/java/org/apache/seatunnel/connectors/seatunnel/tdengine/source/TDengineSourceFactory.java
 => 
connector-http/connector-http-paypal/src/main/java/org/apache/seatunnel/connectors/seatunnel/paypal/source/PayPalSourceFactory.java}
 (62%)
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-paypal/src/main/java/org/apache/seatunnel/connectors/seatunnel/paypal/source/PayPalSourceOptions.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-paypal/src/main/java/org/apache/seatunnel/connectors/seatunnel/paypal/source/PayPalSourceReader.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-paypal/src/test/java/org/apache/seatunnel/connectors/seatunnel/paypal/source/PayPalClientTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-paypal/src/test/java/org/apache/seatunnel/connectors/seatunnel/paypal/source/PayPalResponseTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-paypal/src/test/java/org/apache/seatunnel/connectors/seatunnel/paypal/source/TestPayPalPackagingIT.java
 copy {seatunnel-e2e/seatunnel-connector-v2-e2e/connector-iotdb-e2e => 
seatunnel-connectors-v2/connector-http/connector-http-splunk}/pom.xml (77%)
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-splunk/src/main/java/org/apache/seatunnel/connectors/seatunnel/splunk/SplunkSource.java
 copy 
seatunnel-connectors-v2/{connector-graphql/src/main/java/org/apache/seatunnel/connectors/seatunnel/graphql/source/GraphQLSourceFactory.java
 => 
connector-http/connector-http-splunk/src/main/java/org/apache/seatunnel/connectors/seatunnel/splunk/SplunkSourceFactory.java}
 (66%)
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-splunk/src/main/java/org/apache/seatunnel/connectors/seatunnel/splunk/SplunkSourceReader.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-splunk/src/main/java/org/apache/seatunnel/connectors/seatunnel/splunk/config/SplunkSourceOptions.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-splunk/src/main/java/org/apache/seatunnel/connectors/seatunnel/splunk/config/SplunkSourceParameter.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-splunk/src/test/java/org/apache/seatunnel/connectors/seatunnel/splunk/SplunkSourceFactoryTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-splunk/src/test/java/org/apache/seatunnel/connectors/seatunnel/splunk/SplunkSourceReaderTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-zendesk/src/main/java/org/apache/seatunnel/connectors/seatunnel/zendesk/config/ZendeskConfig.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-zendesk/src/main/java/org/apache/seatunnel/connectors/seatunnel/zendesk/sink/ZendeskSink.java
 copy 
seatunnel-connectors-v2/{connector-tdengine/src/main/java/org/apache/seatunnel/connectors/seatunnel/tdengine/sink/TDengineSinkFactory.java
 => 
connector-http/connector-http-zendesk/src/main/java/org/apache/seatunnel/connectors/seatunnel/zendesk/sink/ZendeskSinkFactory.java}
 (65%)
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-zendesk/src/main/java/org/apache/seatunnel/connectors/seatunnel/zendesk/sink/ZendeskSinkWriter.java
 copy 
seatunnel-connectors-v2/connector-http/connector-http-zendesk/src/main/java/org/apache/seatunnel/connectors/seatunnel/zendesk/{source/config/ZendeskSourceOptions.java
 => sink/config/ZendeskSinkOptions.java} (53%)
 copy 
seatunnel-connectors-v2/{connector-lance/src/test/java/org/apache/seatunnel/connectors/seatunnel/lance/LanceFactoryTest.java
 => 
connector-http/connector-http-zendesk/src/test/java/org/apache/seatunnel/connectors/seatunnel/zendesk/sink/ZendeskSinkFactoryTest.java}
 (75%)
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-http-zendesk/src/test/java/org/apache/seatunnel/connectors/seatunnel/zendesk/sink/ZendeskSinkWriterTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-mem0/pom.xml
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-mem0/src/main/java/org/apache/seatunnel/connectors/seatunnel/mem0/config/Mem0SinkOptions.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-mem0/src/main/java/org/apache/seatunnel/connectors/seatunnel/mem0/sink/Mem0Sink.java
 copy 
seatunnel-connectors-v2/{connector-fluss/src/main/java/org/apache/seatunnel/connectors/seatunnel/fluss/sink/FlussSinkFactory.java
 => 
connector-http/connector-mem0/src/main/java/org/apache/seatunnel/connectors/seatunnel/mem0/sink/Mem0SinkFactory.java}
 (61%)
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-mem0/src/main/java/org/apache/seatunnel/connectors/seatunnel/mem0/sink/Mem0SinkWriter.java
 create mode 100644 
seatunnel-connectors-v2/connector-http/connector-mem0/src/test/java/org/apache/seatunnel/connectors/seatunnel/mem0/sink/Mem0SinkWriterTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-iceberg/src/test/java/org/apache/seatunnel/connectors/seatunnel/iceberg/catalog/IcebergTimestampDeleteTest.java
 copy 
seatunnel-connectors-v2/{connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/source/JdbcSourceTable.java
 => 
connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/source/InfluxDBSourceTable.java}
 (64%)
 create mode 100644 
seatunnel-connectors-v2/connector-influxdb/src/test/java/org/apache/seatunnel/connectors/seatunnel/influxdb/source/InfluxDBMultiTableSourceTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-iotdb/src/test/java/org/apache/seatunnel/connectors/seatunnel/iotdb/source/IoTDBMultiTableSourceTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-jdbc/src/test/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/JdbcOutputFormatBatchCommitTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-jdbc/src/test/java/org/apache/seatunnel/connectors/seatunnel/jdbc/internal/JdbcOutputFormatReconnectSafetyTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/source/KafkaSourceDryRunValidator.java
 create mode 100644 
seatunnel-connectors-v2/connector-kafka/src/test/java/org/apache/seatunnel/connectors/seatunnel/kafka/source/KafkaSourceDryRunValidatorTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-lance/src/test/java/org/apache/seatunnel/connectors/seatunnel/lance/utils/FragmentConverterTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-mqtt/src/test/java/org/apache/seatunnel/connectors/seatunnel/mqtt/sink/MqttSinkTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-openmldb/src/main/java/org/apache/seatunnel/connectors/seatunnel/openmldb/source/OpenMldbReadClient.java
 create mode 100644 
seatunnel-connectors-v2/connector-openmldb/src/test/java/org/apache/seatunnel/connectors/seatunnel/openmldb/source/OpenMldbSourceReaderTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-openmldb/src/test/java/org/apache/seatunnel/connectors/seatunnel/openmldb/source/OpenMldbSourceTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-openmldb/src/test/java/org/apache/seatunnel/connectors/seatunnel/openmldb/source/TestOpenMldbSourceIT.java
 copy seatunnel-engine/seatunnel-engine-ui/src/views/jobs/detail.scss => 
seatunnel-connectors-v2/connector-rabbitmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/config/RabbitmqMessageFormat.java
 (80%)
 create mode 100644 
seatunnel-connectors-v2/connector-rabbitmq/src/test/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/RabbitmqSinkFactoryTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-rabbitmq/src/test/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/client/RabbitmqClientTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-rocketmq/src/test/java/org/apache/seatunnel/connectors/seatunnel/rocketmq/common/RocketMqAdminUtilTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-s3-redshift/src/test/java/org/apache/seatunnel/connectors/seatunnel/redshift/sink/S3RedshiftSinkFactoryTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-salesforce/src/main/java/org/apache/seatunnel/connectors/seatunnel/salesforce/config/SalesforceSinkConfig.java
 create mode 100644 
seatunnel-connectors-v2/connector-salesforce/src/main/java/org/apache/seatunnel/connectors/seatunnel/salesforce/config/SalesforceSinkOptions.java
 create mode 100644 
seatunnel-connectors-v2/connector-salesforce/src/main/java/org/apache/seatunnel/connectors/seatunnel/salesforce/sink/SalesforceRowSerializer.java
 copy 
seatunnel-connectors-v2/{connector-aerospike/src/main/java/org/apache/seatunnel/connectors/seatunnel/aerospike/sink/AerospikeSink.java
 => 
connector-salesforce/src/main/java/org/apache/seatunnel/connectors/seatunnel/salesforce/sink/SalesforceSink.java}
 (59%)
 create mode 100644 
seatunnel-connectors-v2/connector-salesforce/src/main/java/org/apache/seatunnel/connectors/seatunnel/salesforce/sink/SalesforceSinkFactory.java
 create mode 100644 
seatunnel-connectors-v2/connector-salesforce/src/main/java/org/apache/seatunnel/connectors/seatunnel/salesforce/sink/SalesforceSinkWriter.java
 create mode 100644 
seatunnel-connectors-v2/connector-salesforce/src/test/java/org/apache/seatunnel/connectors/seatunnel/salesforce/sink/SalesforceRowSerializerTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-salesforce/src/test/java/org/apache/seatunnel/connectors/seatunnel/salesforce/sink/SalesforceSinkTest.java
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => seatunnel-connectors-v2/connector-syslog/examples/fake_to_syslog.conf (55%)
 copy {seatunnel-e2e/seatunnel-connector-v2-e2e/connector-iotdb-e2e => 
seatunnel-connectors-v2/connector-syslog}/pom.xml (73%)
 create mode 100644 
seatunnel-connectors-v2/connector-syslog/src/main/java/org/apache/seatunnel/connectors/seatunnel/syslog/config/SyslogSinkConfig.java
 create mode 100644 
seatunnel-connectors-v2/connector-syslog/src/main/java/org/apache/seatunnel/connectors/seatunnel/syslog/config/SyslogSinkOptions.java
 create mode 100644 
seatunnel-connectors-v2/connector-syslog/src/main/java/org/apache/seatunnel/connectors/seatunnel/syslog/sink/SyslogMessageEncoder.java
 copy 
seatunnel-connectors-v2/{connector-aerospike/src/main/java/org/apache/seatunnel/connectors/seatunnel/aerospike/sink/AerospikeSink.java
 => 
connector-syslog/src/main/java/org/apache/seatunnel/connectors/seatunnel/syslog/sink/SyslogSink.java}
 (52%)
 create mode 100644 
seatunnel-connectors-v2/connector-syslog/src/main/java/org/apache/seatunnel/connectors/seatunnel/syslog/sink/SyslogSinkFactory.java
 create mode 100644 
seatunnel-connectors-v2/connector-syslog/src/main/java/org/apache/seatunnel/connectors/seatunnel/syslog/sink/SyslogSinkWriter.java
 create mode 100644 
seatunnel-connectors-v2/connector-syslog/src/main/java/org/apache/seatunnel/connectors/seatunnel/syslog/sink/SyslogTlsClient.java
 create mode 100644 
seatunnel-connectors-v2/connector-syslog/src/test/java/org/apache/seatunnel/connectors/seatunnel/syslog/sink/SyslogMessageEncoderTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-syslog/src/test/java/org/apache/seatunnel/connectors/seatunnel/syslog/sink/SyslogSinkFactoryTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-syslog/src/test/java/org/apache/seatunnel/connectors/seatunnel/syslog/sink/SyslogSinkWriterTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-syslog/src/test/java/org/apache/seatunnel/connectors/seatunnel/syslog/sink/SyslogTlsClientTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-tdengine/src/test/java/org/apache/seatunnel/connectors/seatunnel/tdengine/sink/TDengineSinkFactoryTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-tdengine/src/test/java/org/apache/seatunnel/connectors/seatunnel/tdengine/source/TDengineSourceFactoryTest.java
 create mode 100644 seatunnel-connectors-v2/connector-tiktok-ads/pom.xml
 create mode 100644 
seatunnel-connectors-v2/connector-tiktok-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/tiktok/ads/TikTokAdsClient.java
 create mode 100644 
seatunnel-connectors-v2/connector-tiktok-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/tiktok/ads/TikTokAdsConfig.java
 create mode 100644 
seatunnel-connectors-v2/connector-tiktok-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/tiktok/ads/TikTokAdsReport.java
 create mode 100644 
seatunnel-connectors-v2/connector-tiktok-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/tiktok/ads/TikTokAdsSource.java
 copy 
seatunnel-connectors-v2/{connector-iotdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/iotdb/source/IoTDBSourceFactory.java
 => 
connector-tiktok-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/tiktok/ads/TikTokAdsSourceFactory.java}
 (59%)
 create mode 100644 
seatunnel-connectors-v2/connector-tiktok-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/tiktok/ads/TikTokAdsSourceOptions.java
 create mode 100644 
seatunnel-connectors-v2/connector-tiktok-ads/src/main/java/org/apache/seatunnel/connectors/seatunnel/tiktok/ads/TikTokAdsSourceReader.java
 create mode 100644 
seatunnel-connectors-v2/connector-tiktok-ads/src/test/java/org/apache/seatunnel/connectors/seatunnel/tiktok/ads/TestTikTokAdsPackagingIT.java
 create mode 100644 
seatunnel-connectors-v2/connector-tiktok-ads/src/test/java/org/apache/seatunnel/connectors/seatunnel/tiktok/ads/TikTokAdsReportTest.java
 create mode 100644 
seatunnel-connectors-v2/connector-tiktok-ads/src/test/java/org/apache/seatunnel/connectors/seatunnel/tiktok/ads/TikTokAdsSourceReaderTest.java
 create mode 100644 
seatunnel-core/seatunnel-flink-starter/seatunnel-flink-starter-common/src/test/java/org/apache/seatunnel/core/starter/flink/execution/TransformExecuteProcessorTest.java
 create mode 100644 
seatunnel-core/seatunnel-spark-starter/seatunnel-spark-starter-common/src/test/java/org/apache/seatunnel/core/starter/spark/execution/TransformExecuteProcessorTest.java
 copy seatunnel-dist/release-docs/licenses/{LICENSE-jnats.txt => 
LICENSE-asn-one.txt} (100%)
 create mode 100644 
seatunnel-dist/release-docs/licenses/LICENSE-bcprov-jdk18on.txt
 create mode 100644 
seatunnel-dist/release-docs/licenses/LICENSE-google-api-common.txt
 create mode 100644 seatunnel-dist/release-docs/licenses/LICENSE-google-auth.txt
 create mode 100644 seatunnel-dist/release-docs/licenses/LICENSE-mbassador.txt
 copy seatunnel-dist/release-docs/licenses/{LICENSE-jnats.txt => 
LICENSE-smbj.txt} (100%)
 delete mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-bigquery-e2e/src/test/java/org/apache/seatunnel/e2e/connector/bigquery/BigQueryCDCIT.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-bigquery-e2e/src/test/java/org/apache/seatunnel/e2e/connector/bigquery/BigQueryCDCRealIT.java
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-bigquery-e2e/src/test/resources/{fake_to_bigquery_sink.conf
 => fake_to_bigquery_streaming_sink.conf} (57%)
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => 
connector-bigquery-e2e/src/test/resources/mysql_cdc_to_bigquery_real_sink.conf} 
(57%)
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => 
connector-cdc-mongodb-e2e/src/test/resources/mongodbcdc_stop_mode_timestamp.conf}
 (50%)
 copy seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-amazonsqs-e2e => 
connector-cdc-oceanbase-e2e}/pom.xml (73%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-cdc-oceanbase-e2e/src/test/java/org/apache/seatunnel/connectors/seatunnel/cdc/oceanbase/MySqlCompatibleContainer.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-cdc-oceanbase-e2e/src/test/java/org/apache/seatunnel/connectors/seatunnel/cdc/oceanbase/OceanBaseCDCCompatibilityIT.java
 copy seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-clickhouse-e2e => 
connector-cdc-oceanbase-e2e}/src/test/resources/docker/server-gtids/my.cnf 
(100%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-cdc-oceanbase-e2e/src/test/resources/docker/setup.sql
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => 
connector-cdc-oceanbase-e2e/src/test/resources/oceanbasecdc_to_mysql_compatible.conf}
 (55%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-clickhouse-e2e/src/test/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/ClickhouseOffsetTimestampIT.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-couchbase-e2e/src/test/java/org/apache/seatunnel/e2e/connector/couchbase/CouchbaseReadinessIT.java
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-fake-e2e/src/test/java/org/apache/seatunnel/e2e/connector/fake/{FakeSqlConfIT.java
 => SharedContainerTestSupport.java} (65%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-file-s3-e2e/src/test/java/org/apache/seatunnel/e2e/connector/file/s3/S3FileConnectDryRunIT.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-file-s3-e2e/src/test/java/org/apache/seatunnel/e2e/connector/file/s3/S3FileConnectDryRunWireIT.java
 copy seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-iotdb-e2e => 
connector-file-smb-e2e}/pom.xml (81%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-file-smb-e2e/src/test/java/org/apache/seatunnel/e2e/connector/file/smb/SmbFileIT.java
 copy seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-file-ftp-e2e => 
connector-file-smb-e2e}/src/test/resources/json/e2e.json (100%)
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-rocketmq-e2e/src/test/resources/rocketmq-source_text_tag_to_console.conf
 => connector-file-smb-e2e/src/test/resources/json/fake_to_smb_file_json.conf} 
(57%)
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-rocketmq-e2e/src/test/resources/rocketmq-source_text_tag_to_console.conf
 => 
connector-file-smb-e2e/src/test/resources/json/smb_file_json_to_assert.conf} 
(52%)
 copy seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-file-ftp-e2e => 
connector-file-smb-e2e}/src/test/resources/text/e2e.txt (100%)
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-rocketmq-e2e/src/test/resources/rocketmq-source_text_tag_to_console.conf
 => connector-file-smb-e2e/src/test/resources/text/fake_to_smb_file_text.conf} 
(57%)
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-rocketmq-e2e/src/test/resources/rocketmq-source_text_tag_to_console.conf
 => 
connector-file-smb-e2e/src/test/resources/text/smb_file_text_to_assert.conf} 
(52%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-firebase-e2e/src/test/java/org/apache/seatunnel/e2e/connector/firebase/FirebaseSinkIT.java
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => connector-firebase-e2e/src/test/resources/fake_source_to_firebase.conf} 
(57%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-google-analytics4-e2e/pom.xml
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-google-analytics4-e2e/src/test/java/org/apache/seatunnel/e2e/connector/google/analytics4/GoogleAnalytics4IT.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-google-analytics4-e2e/src/test/resources/google_analytics4_to_assert.conf
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-http-e2e/src/test/java/org/apache/seatunnel/e2e/connector/http/SalesforceSinkIT.java
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => connector-http-e2e/src/test/resources/fake_to_salesforce.conf} (61%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-influxdb-e2e/src/test/java/org/apache/seatunnel/e2e/connector/influxdb/InfluxDBMultiTableSourceIT.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-influxdb-e2e/src/test/resources/influxdb-multi-table-source.conf
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-iotdb-e2e/src/test/java/org/apache/seatunnel/e2e/connector/iotdb/IoTDBMultiTableSourceIT.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-iotdb-e2e/src/test/resources/iotdb/iotdb_multi_table_source.conf
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-kafka-e2e/src/test/java/org/apache/seatunnel/e2e/connector/kafka/KafkaConnectDryRunIT.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-mqtt-e2e/src/test/java/org/apache/seatunnel/e2e/connector/mqtt/MqttSourceIT.java
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => connector-mqtt-e2e/src/test/resources/mqtt_source_e2e.conf} (50%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-paypal-e2e/pom.xml
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-paypal-e2e/src/test/java/org/apache/seatunnel/e2e/connector/paypal/PayPalIT.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-paypal-e2e/src/test/java/org/apache/seatunnel/e2e/connector/paypal/PayPalMaskingTest.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-paypal-e2e/src/test/resources/paypal_to_assert.conf
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-rabbitmq-e2e/src/test/resources/rabbitmq-protobuf-to-rabbitmq.conf
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => connector-redis-e2e/src/test/resources/redis-named-user.conf} (67%)
 copy seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-iotdb-e2e => 
connector-syslog-e2e}/pom.xml (89%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-syslog-e2e/src/test/java/org/apache/seatunnel/e2e/connector/syslog/SyslogSinkIT.java
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/{connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => connector-syslog-e2e/src/test/resources/docker/syslog-ng.conf} (62%)
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-syslog-e2e/src/test/resources/fake_to_syslog.conf
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-tiktok-ads-e2e/pom.xml
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-tiktok-ads-e2e/src/test/java/org/apache/seatunnel/e2e/connector/tiktok/ads/TikTokAdsIT.java
 create mode 100644 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-tiktok-ads-e2e/src/test/resources/tiktok_ads_to_assert.conf
 create mode 100644 
seatunnel-e2e/seatunnel-e2e-common/src/test/java/org/apache/seatunnel/e2e/common/container/ReusableTestContainer.java
 create mode 100644 
seatunnel-e2e/seatunnel-e2e-common/src/test/java/org/apache/seatunnel/e2e/common/junit/ReuseTestContainers.java
 create mode 100644 
seatunnel-e2e/seatunnel-e2e-common/src/test/java/org/apache/seatunnel/e2e/common/junit/SharedTestContainerResource.java
 create mode 100644 
seatunnel-e2e/seatunnel-e2e-common/src/test/java/org/apache/seatunnel/e2e/common/junit/SharedTestContainerResourceTest.java
 create mode 100644 
seatunnel-e2e/seatunnel-engine-e2e/connector-seatunnel-e2e-base/src/test/java/org/apache/seatunnel/engine/e2e/BackpressureSlowSinkIT.java
 create mode 100644 
seatunnel-e2e/seatunnel-engine-e2e/connector-seatunnel-e2e-base/src/test/resources/cluster_batch_fake_to_localfile_slot_contention_template.conf
 create mode 100644 
seatunnel-e2e/seatunnel-engine-e2e/connector-seatunnel-e2e-base/src/test/resources/stream_fast_fakesource_to_slow_inmemory_backpressure.conf
 create mode 100644 
seatunnel-e2e/seatunnel-transforms-v2-e2e/seatunnel-transforms-v2-e2e-part-2/src/test/java/org/apache/seatunnel/e2e/transform/TestPythonTransformIT.java
 create mode 100644 
seatunnel-e2e/seatunnel-transforms-v2-e2e/seatunnel-transforms-v2-e2e-part-2/src/test/resources/python_transform/python_transform.conf
 create mode 100644 
seatunnel-e2e/seatunnel-transforms-v2-e2e/seatunnel-transforms-v2-e2e-part-2/src/test/resources/python_transform/python_transform_path.conf
 copy 
seatunnel-e2e/{seatunnel-connector-v2-e2e/connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => 
seatunnel-transforms-v2-e2e/seatunnel-transforms-v2-e2e-part-2/src/test/resources/python_transform/python_transform_path.py}
 (62%)
 create mode 100644 
seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/SeaTunnelHealthMonitorTest.java
 create mode 100644 
seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/checkpoint/CheckpointStorageRetentionPruneTest.java
 create mode 100644 
seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/master/JobMasterMasterFailoverResourceTest.java
 create mode 100644 
seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/rest/service/BaseServiceHealthMetricsTest.java
 create mode 100644 
seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/rest/servlet/FinishedJobsServletTest.java
 create mode 100644 
seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/task/flow/TransformFlowLifeCycleCloseTest.java
 create mode 100644 
seatunnel-engine/seatunnel-engine-storage/imap-storage-plugins/imap-storage-file/src/main/java/org/apache/seatunnel/engine/imap/storage/file/common/LatestMutationAccumulator.java
 create mode 100644 
seatunnel-engine/seatunnel-engine-storage/imap-storage-plugins/imap-storage-file/src/test/java/org/apache/seatunnel/engine/imap/storage/file/common/LatestMutationAccumulatorTest.java
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => 
seatunnel-examples/seatunnel-engine-examples/src/main/resources/examples/google_analytics4_to_console.conf
 (64%)
 copy 
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-paimon-e2e/src/test/resources/paimon_to_paimon_privilege1.conf
 => 
seatunnel-examples/seatunnel-engine-examples/src/main/resources/examples/tiktok_ads_to_console.conf
 (65%)
 copy 
seatunnel-connectors-v2/connector-iotdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/iotdb/source/IoTDBSourceSplit.java
 => 
seatunnel-transforms-v2/src/main/java/org/apache/seatunnel/transform/python/PythonColumnConfig.java
 (50%)
 create mode 100644 
seatunnel-transforms-v2/src/main/java/org/apache/seatunnel/transform/python/PythonMultiCatalogTransform.java
 create mode 100644 
seatunnel-transforms-v2/src/main/java/org/apache/seatunnel/transform/python/PythonProcessWorker.java
 create mode 100644 
seatunnel-transforms-v2/src/main/java/org/apache/seatunnel/transform/python/PythonTransform.java
 create mode 100644 
seatunnel-transforms-v2/src/main/java/org/apache/seatunnel/transform/python/PythonTransformConfig.java
 create mode 100644 
seatunnel-transforms-v2/src/main/java/org/apache/seatunnel/transform/python/PythonTransformErrorCode.java
 create mode 100644 
seatunnel-transforms-v2/src/main/java/org/apache/seatunnel/transform/python/PythonTransformFactory.java
 create mode 100644 
seatunnel-transforms-v2/src/main/resources/python_transform/worker_template.py
 create mode 100644 
seatunnel-transforms-v2/src/test/java/org/apache/seatunnel/transform/embedding/AmazonEmbeddingInvocationTest.java
 create mode 100644 
seatunnel-transforms-v2/src/test/java/org/apache/seatunnel/transform/python/PythonTransformTest.java

Reply via email to