Skip to content
Open
Show file tree
Hide file tree
Changes from 8 commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
68f085c
[feature][Connector-jdbc] Add Kingbase Catalog Support
LeonYoah Jan 31, 2026
16183d1
[fix][Connector-jdbc] (kingbase Source) Query parameter support for I…
LeonYoah Jan 31, 2026
6210d2b
[fix][Connector-jdbc][kingbase] ci修复
LeonYoah Jan 31, 2026
315d049
[feature][Connector-jdbc] Add Kingbase Catalog Support ----- rename
LeonYoah Jan 31, 2026
c97df32
[feature][Connector-jdbc] Add Kingbase Catalog Support -- fix column …
LeonYoah Feb 2, 2026
8cc9804
[feature][Connector-jdbc] Add Kingbase Catalog Support -- Fix the iss…
LeonYoah Feb 2, 2026
5f5179d
[feature][Connector-jdbc] Add kingbase Container
LeonYoah Feb 2, 2026
2ba454b
[feature][Connector-jdbc] Add kingbase Container -- fix ci
LeonYoah Feb 2, 2026
dcb2a81
[feature][Connector-jdbc] Add kingbase Container --Use variables to o…
LeonYoah Feb 3, 2026
42e89e9
[feature][Connector-jdbc] Add kingbase Container --Use variables to o…
LeonYoah Feb 3, 2026
39a1081
[feature][Connector-jdbc] Add kingbase Container --Use variables to o…
LeonYoah Feb 3, 2026
99027ba
[feature][Connector-jdbc] Add kingbase Container --fix ci
LeonYoah Feb 3, 2026
161eb74
Merge branch 'dev' into featrue/kingbase-catalog
LeonYoah Feb 3, 2026
b19016c
[feature][Connector-jdbc] Add kingbase Container --fix ci
Feb 4, 2026
b530ada
[feature][Connector-jdbc] Add kingbase Container --fix ci
Feb 4, 2026
8377259
[feature][Connector-jdbc] Add kingbase Container --fix ci
Feb 5, 2026
b7077ae
[feature][Connector-jdbc] Add kingbase Container --fix ci
LeonYoah Feb 3, 2026
78e14fc
[feature][Connector-jdbc] Add kingbase Container --fix ci
LeonYoah Feb 5, 2026
4a59282
[feature][Connector-jdbc] Add kingbase Container --add retry
Feb 6, 2026
5a9d524
[feature][Connector-jdbc] Add kingbase Container --add disabled windows
Feb 6, 2026
76ece3f
[feature][Connector-jdbc] Add kingbase Container -- remove
LeonYoah Feb 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .licenserc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ header:
- '**/NOTICE'
- '**/.gitkeep'
- '**/com/typesafe/config/**'
- '**/kingbase/*.dat'
- 'seatunnel-engine/seatunnel-engine-common/src/main/java/org/apache/seatunnel/engine/common/config/ConfigProvider.java'
- 'seatunnel-engine/seatunnel-engine-common/src/main/java/org/apache/seatunnel/engine/common/config/SeaTunnelConfigSections.java'
- 'seatunnel-engine/seatunnel-engine-common/src/main/java/org/apache/seatunnel/engine/common/config/YamlSeaTunnelConfigBuilder.java'
Expand Down
9 changes: 9 additions & 0 deletions docs/en/connectors/source/Kingbase.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,15 @@ Read external data source data through JDBC.
| partition_upper_bound | BigDecimal | No | - | The partition_column max value for scan, if not set SeaTunnel will query database get max value. |
| partition_num | Int | No | job parallelism | The number of partition count, only support positive integer. Default value is job parallelism. |
| fetch_size | Int | No | 0 | For queries that return a large number of objects, you can configure <br/> the row fetch size used in the query to improve performance by <br/> reducing the number database hits required to satisfy the selection criteria.<br/> Zero means use jdbc default value. |
| use_regex | Boolean | No | false | Control regular expression matching for table_path. When set to `true`, the table_path will be treated as a regular expression pattern. When set to `false` or not specified, the table_path will be treated as an exact path (no regex matching). |
| table_path | String | No | - | The path to the full path of table, you can use this configuration instead of `query`. <br/>example: <br/>"test_schema.table1" |
| table_list | Array | No | - | The list of tables to be read, you can use this configuration instead of `table_path` example: ```[{ table_path = "testdb.table1"}, {table_path = "testdb.table2", query = "select * id, name from testdb.table2"}]``` |
| where_condition | String | No | - | Common row filter conditions for all tables/queries, must start with `where`. for example `where id > 100` |
| split.size | Int | No | 8096 | The split size (number of rows) of table, captured tables are split into multiple splits when read of table. |
| split.even-distribution.factor.lower-bound | Double | No | 0.05 | The lower bound of the chunk key distribution factor. This factor is used to determine whether the table data is evenly distributed. If the distribution factor is calculated to be greater than or equal to this lower bound (i.e., (MAX(id) - MIN(id) + 1) / row count), the table chunks would be optimized for even distribution. Otherwise, if the distribution factor is less, the table will be considered as unevenly distributed and the sampling-based sharding strategy will be used if the estimated shard count exceeds the value specified by `sample-sharding.threshold`. The default value is 0.05. |
| split.even-distribution.factor.upper-bound | Double | No | 100 | The upper bound of the chunk key distribution factor. This factor is used to determine whether the table data is evenly distributed. If the distribution factor is calculated to be less than or equal to this upper bound (i.e., (MAX(id) - MIN(id) + 1) / row count), the table chunks would be optimized for even distribution. Otherwise, if the distribution factor is greater, the table will be considered as unevenly distributed and the sampling-based sharding strategy will be used if the estimated shard count exceeds the value specified by `sample-sharding.threshold`. The default value is 100.0. |
| split.sample-sharding.threshold | Int | No | 10000 | This configuration specifies the threshold of estimated shard count to trigger the sample sharding strategy. When the distribution factor is outside the bounds specified by `chunk-key.even-distribution.factor.upper-bound` and `chunk-key.even-distribution.factor.lower-bound`, and the estimated shard count (calculated as approximate row count / chunk size) exceeds this threshold, the sample sharding strategy will be used. This can help to handle large datasets more efficiently. The default value is 1000 shards. |
| split.inverse-sampling.rate | Int | No | 1000 | The inverse of the sampling rate used in the sample sharding strategy. For example, if this value is set to 1000, it means a 1/1000 sampling rate is applied during the sampling process. This option provides flexibility in controlling the granularity of the sampling, thus affecting the final number of shards. It's especially useful when dealing with very large datasets where a lower sampling rate is preferred. The default value is 1000. |
| common-options | | No | - | Source plugin common parameters, please refer to [Source Common Options](../common-options/source-common-options.md) for details |

### Tips
Expand Down
9 changes: 9 additions & 0 deletions docs/zh/connectors/source/Kingbase.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,15 @@ import ChangeLog from '../changelog/connector-jdbc.md';
| partition_upper_bound | BigDecimal | 否 | - | partition_column 的最大值用于扫描,如果未设置,SeaTunnel 将查询数据库获取最大值。 |
| partition_num | Int | 否 | job parallelism | 分割数量,仅支持正整数。默认值是任务并行度。 |
| fetch_size | Int | 否 | 0 | 对于返回大量对象的查询,您可以配置查询中使用的行提取大小,以通过减少满足选择条件所需的数据库命中次数来提高性能。零表示使用 jdbc 默认值。 |
| use_regex | Boolean | 否 | false | 控制表路径的正则表达式匹配。当设置为true时,table_path 将被视为正则表达式模式。当设置为false或未指定时,table_path 将被视为精确路径(不进行正则匹配)。 |
| table_path | String | 否 | - | 表的完整路径,您可以使用此配置代替 `query`。<br/>示例:<br/>"testdb.table1" |
| table_list | Array | 否 | - | 要读取的表的列表,您可以使用此配置代替 `table_path`,示例如下: ```[{ table_path = "testdb.table1"}, {table_path = "testdb.table2", query = "select * id, name from testdb.table2"}]``` |
| where_condition | String | 否 | - | 所有表/查询的通用行过滤条件,必须以 `where` 开头。例如 `where id > 100`。 |
| split.size | Int | 否 | 8096 | 表的分割大小(行数),当读取表时,捕获的表会被分割成多个分片。 |
| split.even-distribution.factor.lower-bound | Double | 否 | 0.05 | 分片键分布因子的下限。该因子用于判断表数据的分布是否均匀。如果计算得到的分布因子大于或等于该下限(即,(MAX(id) - MIN(id) + 1) / 行数),则会对表的分片进行优化,以确保数据的均匀分布。反之,如果分布因子较低,则表数据将被视为分布不均匀。如果估算的分片数量超过 `sample-sharding.threshold` 所指定的值,则会采用基于采样的分片策略。默认值为 0.05。 |
| split.even-distribution.factor.upper-bound | Double | 否 | 100 | 分片键分布因子的上限。该因子用于判断表数据的分布是否均匀。如果计算得到的分布因子小于或等于该上限(即,(MAX(id) - MIN(id) + 1) / 行数),则会对表的分片进行优化,以确保数据的均匀分布。反之,如果分布因子较大,则表数据将被视为分布不均匀,并且如果估算的分片数量超过 `sample-sharding.threshold` 所指定的值,则会采用基于采样的分片策略。默认值为 100.0。 |
| split.sample-sharding.threshold | Int | 否 | 10000 | 此配置指定了触发样本分片策略的估算分片数阈值。当分布因子超出由 `chunk-key.even-distribution.factor.upper-bound` 和 `chunk-key.even-distribution.factor.lower-bound` 指定的范围,并且估算的分片数量(计算方法为大致行数 / 分片大小)超过此阈值时,将使用样本分片策略。此配置有助于更高效地处理大型数据集。默认值为 1000 个分片。 |
| split.inverse-sampling.rate | Int | 否 | 1000 | 样本分片策略中使用的采样率的倒数。例如,如果该值设置为 1000,则表示在采样过程中应用 1/1000 的采样率。此选项提供了灵活性,可以控制采样的粒度,从而影响最终的分片数量。特别适用于处理非常大的数据集,在这种情况下通常会选择较低的采样率。默认值为 1000。 |
| common-options | | 否 | - | 源插件通用参数,请参考 [源通用选项](../common-options/source-common-options.md) 详见。 |

### 提示
Expand Down
13 changes: 13 additions & 0 deletions seatunnel-connectors-v2/connector-jdbc/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -419,6 +419,19 @@
<type>test-jar</type>
<scope>test</scope>
</dependency>

<!-- Testcontainers for unit tests -->
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>junit-jupiter</artifactId>
<version>${testcontainer.version}</version>
<scope>test</scope>
</dependency>
</dependencies>

</project>
Loading