oblogproxy同步失败

【 使用环境 】测试环境
【 OB or 其他组件 】OB,obdbproxy
【 使用版本 】obceanbase ce 4.1 oblogproxy 1.1.3 for 4x
【问题描述】清晰明确描述问题
【复现路径】问题出现前后相关操作
【问题现象及影响】

【附件】
log.zip (3.5 KB)

1 个赞

fink cdc 版本17.1

1 个赞

试下这个测试包,使用方法在 readme 里,看看实际上有没有收到 heartbeat 类型的 log message。

https://github.com/oceanbase/oblogclient/releases/download/logclient-1.0.7/oblogclient-demo.zip

1 个赞

[root@localhost oblogclient-demo]# java -jar oblogclient-demo-0.0.1-SNAPSHOT.jar

. ____ _ __ _ _
/\ / __ _ () __ __ _ \ \ \
( ( )_
_ | '_ | '| | ’ / ` | \ \ \
\/ )| |)| | | | | || (| | ) ) ) )
’ |
| .__|| ||| |_, | / / / /
=========|
|==============|/=////
:: Spring Boot :: (v2.7.5)

2023-10-16 10:43:30.696 INFO 11205 — [ main] c.o.o.OblogclientDemoApplication : Starting OblogclientDemoApplication v0.0.1-SNAPSHOT using Java 11-ea on localhost.localdomain with PID 11205 (/root/oblogclient-demo/oblogclient-demo-0.0.1-SNAPSHOT.jar started by root in /root/oblogclient-demo)
2023-10-16 10:43:30.698 INFO 11205 — [ main] c.o.o.OblogclientDemoApplication : No active profile set, falling back to 1 default profile: “default”
2023-10-16 10:43:32.343 INFO 11205 — [ Thread-0] c.o.c.client.connection.ClientStream : Try to reconnect
2023-10-16 10:43:32.829 INFO 11205 — [ Thread-0] c.o.c.client.connection.ClientStream : Reconnect successfully
2023-10-16 10:43:32.830 INFO 11205 — [rker-1-thread-1] c.o.c.client.connection.ClientHandler : ClientId: 10.229.150.42_11205_1697467412: rootserver_list=127.0.0.1:2882:2881, cluster_user=root@obmysql, cluster_password=******, tb_white_list=obmysql.test_ob_to_mysql.tbl1, tb_black_list=|, start_timestamp=0, timezone=+8:00, working_mode=storage connecting LogProxy: 127.0.0.1:2983
2023-10-16 10:43:33.269 INFO 11205 — [rker-1-thread-1] c.o.c.client.connection.ClientHandler : Connected to LogProxyServer, ip:127.0.0.1, version:0bb7761d00aa8fdb0d6beb5740129f791ff35bd7
2023-10-16 10:43:42.797 INFO 11205 — [ Thread-0] com.oceanbase.oblogclient.Client : LogMessage received: type:HEARTBEAT
record_id:144115188075855872
db:null
tb:null
serverId:null
checkpoint:320219@1697467413
primary_value:
unique_keys:

2023-10-16 10:43:43.735 INFO 11205 — [ Thread-0] com.oceanbase.oblogclient.Client : LogMessage received: type:HEARTBEAT
record_id:144115188075855872
db:null
tb:null
serverId:null
checkpoint:420982@1697467423
primary_value:
unique_keys:

2023-10-16 10:43:44.740 INFO 11205 — [ Thread-0] com.oceanbase.oblogclient.Client : LogMessage received: type:HEARTBEAT
record_id:144115188075855872
db:null
tb:null
serverId:null
checkpoint:435325@1697467424
primary_value:
unique_keys:

2023-10-16 10:43:45.754 INFO 11205 — [ Thread-0] com.oceanbase.oblogclient.Client : LogMessage received: type:HEARTBEAT
record_id:144115188075855872
db:null
tb:null
serverId:null
checkpoint:471530@1697467425
primary_value:
unique_keys:

2023-10-16 10:43:46.756 INFO 11205 — [ Thread-0] com.oceanbase.oblogclient.Client : LogMessage received: type:HEARTBEAT
record_id:144115188075855872
db:null
tb:null
serverId:null
checkpoint:465177@1697467426
primary_value:
unique_keys:

看起来是正常的,用相同的配置启动 flink cdc 试试呢

老师你好,我用相同的配置用flink 去连接,报错如下:
可能是flink版本的问题吗,flink版本用的是1.16的

Flink SQL> SET execution.checkpointing.interval = 3s;

[INFO] Session property has been set.

Flink SQL> set table.local-time-zone = Asia/Shanghai;

[INFO] Session property has been set.

Flink SQL> CREATE TABLE ob_tbl1 (

col1 INT PRIMARY KEY ,
col2 VARCHAR(20),
col3 INT)
WITH ('connector' = 'oceanbase-cdc',
'scan.startup.mode' = 'initial',
'tenant-name' = 'obmysql',
'username' = 'root',
'password' = '123456',
'database-name' = 'test_ob_to_mysql',
'table-name' = 'tbl1',
'hostname' = '127.0.0.1',
'port' = '2881',
'rootserver-list' = '127.0.0.1:2882:2881',
'logproxy.host' = '127.0.0.1',
'logproxy.port' = '2983');

[INFO] Execute statement succeed.

Flink SQL> set sql-client.execution.result-mode=tableau;

[INFO] Session property has been set.

Flink SQL> select * from ob_tbl1;
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.flink.api.java.ClosureCleaner (file:/root/flink-1.16.2/lib/flink-dist-1.16.2.jar) to field java.lang.String.value
WARNING: Please consider reporting this to the maintainers of org.apache.flink.api.java.ClosureCleaner
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
±—±------------±-------------------------------±------------+
| op | col1 | col2 | col3 |
±—±------------±-------------------------------±------------+
^CQuery terminated, received a total of 0 row
----到这里就hang住了
下面是日志:
I20231016 13:16:15.392269 11165 arranger.cpp:93] ObConfig from peer: id:72058142479482888, fd:8, addr:16777343, port:45482 after resolve: cluster_id:,cluster_password:db1x@NJ+1,cluster_url:,cluster_user:root,first_start_timestamp:0,first_start_timestamp_us:0,id:,rootserver_list:127.0.0.1:2882:2881,sys_password:,sys_user:,tb_white_list:obmysql.test_ob_to_mysql.tbl1,
I20231016 13:16:15.392297 11165 ob_access.cpp:208] About to auth user: root for observer: 127.0.0.1:2881
I20231016 13:16:15.392396 11165 io.cpp:119] Connect to server success after poll. host=127.0.0.1,port=2881
I20231016 13:16:15.392401 11165 mysql_protocol.cpp:51] Connect to server success: 127.0.0.1:2881, user: sys_user001@sys
I20231016 13:16:15.394443 11165 mysql_protocol.cpp:82] Receive handshake packet from server: 127.0.0.1:2881, user: sys_user001@sys
I20231016 13:16:15.394455 11165 ob_mysql_packet.cpp:256] Observer version: 5.7.25
I20231016 13:16:15.394459 11165 ob_mysql_packet.cpp:264] Connection id: 3221494959
I20231016 13:16:15.394466 11165 ob_mysql_packet.cpp:355] Auth plugin name: mysql_native_password
I20231016 13:16:15.394477 11165 ob_mysql_packet.cpp:589] Handshake response packet len: 91
I20231016 13:16:15.394834 11165 mysql_protocol.cpp:122] Auth user success of server: 127.0.0.1:2881, user: sys_user001@sys
I20231016 13:16:15.394847 11165 ob_access.cpp:222] About to auth tenant:obmysql of user:root
I20231016 13:16:15.394855 11165 mysql_protocol.cpp:214] Query obmysql SQL:SELECT server.svr_ip, server.inner_port, server.zone, tenant.tenant_id, tenant.tenant_name FROM oceanbase.__all_resource_pool AS pool, oceanbase.__all_unit AS unit, oceanbase.__all_server AS server, oceanbase.__all_tenant AS tenant WHERE tenant.tenant_id=pool.tenant_id AND unit.resource_pool_id=pool.resource_pool_id AND unit.svr_ip=server.svr_ip AND unit.svr_port=server.svr_port AND tenant.tenant_name=‘obmysql’
I20231016 13:16:15.436364 11165 io.cpp:119] Connect to server success after poll. host=127.0.0.1,port=2881
I20231016 13:16:15.436388 11165 mysql_protocol.cpp:51] Connect to server success: 127.0.0.1:2881, user: root@obmysql
I20231016 13:16:15.436475 11165 mysql_protocol.cpp:82] Receive handshake packet from server: 127.0.0.1:2881, user: root@obmysql
I20231016 13:16:15.436482 11165 ob_mysql_packet.cpp:256] Observer version: 5.7.25
I20231016 13:16:15.436486 11165 ob_mysql_packet.cpp:264] Connection id: 3221494960
I20231016 13:16:15.436492 11165 ob_mysql_packet.cpp:355] Auth plugin name: mysql_native_password
I20231016 13:16:15.436503 11165 ob_mysql_packet.cpp:589] Handshake response packet len: 88
I20231016 13:16:15.436857 11165 mysql_protocol.cpp:122] Auth user success of server: 127.0.0.1:2881, user: root@obmysql
I20231016 13:16:15.436867 11165 mysql_protocol.cpp:214] Query obmysql SQL:show tenant
I20231016 13:16:15.477499 11165 mysql_protocol.cpp:214] Query obmysql SQL:SELECT upper(privilege_type) AS priv FROM information_schema.user_privileges WHERE privilege_type=‘SELECT’ AND grantee LIKE “‘root’@%” UNION SELECT upper(privilege_type) AS priv FROM information_schema.schema_privileges WHERE privilege_type=‘SELECT’ AND grantee LIKE “‘root’@%” AND table_schema=‘test_ob_to_mysql’ UNION SELECT upper(privilege_type) AS priv FROM information_schema.table_privileges WHERE privilege_type=‘SELECT’ AND grantee LIKE “‘root’@%” AND table_schema=‘test_ob_to_mysql’ AND table_name=‘tbl1’
I20231016 13:16:15.517871 11165 io.cpp:119] Connect to server success after poll. host=127.0.0.1,port=2881
I20231016 13:16:15.517894 11165 mysql_protocol.cpp:51] Connect to server success: 127.0.0.1:2881, user: sys_user001@sys
I20231016 13:16:15.518348 11165 mysql_protocol.cpp:82] Receive handshake packet from server: 127.0.0.1:2881, user: sys_user001@sys
I20231016 13:16:15.518359 11165 ob_mysql_packet.cpp:256] Observer version: 5.7.25
I20231016 13:16:15.518362 11165 ob_mysql_packet.cpp:264] Connection id: 3221494961
I20231016 13:16:15.518368 11165 ob_mysql_packet.cpp:355] Auth plugin name: mysql_native_password
I20231016 13:16:15.518380 11165 ob_mysql_packet.cpp:589] Handshake response packet len: 91
I20231016 13:16:15.518816 11165 mysql_protocol.cpp:122] Auth user success of server: 127.0.0.1:2881, user: sys_user001@sys
I20231016 13:16:15.518827 11165 mysql_protocol.cpp:214] Query obmysql SQL:SELECT svr_min_log_timestamp FROM oceanbase.__all_virtual_server_clog_stat WHERE zone_status=‘ACTIVE’;
I20231016 13:16:15.559207 11165 ob_mysql_packet.cpp:220] Error packet: [31487][#42S02] Table ‘oceanbase.__all_virtual_server_clog_stat’ doesn’t exist
E20231016 13:16:15.559226 11165 mysql_protocol.cpp:239] Failed to query observer:Table ‘oceanbase.__all_virtual_server_clog_stat’ doesn’t exist, unexpected column count: 0
E20231016 13:16:15.559248 11165 clog_meta_routine.cpp:45] Failed to check the existence of svr_min_log_timestamp column in __all_virtual_server_clog_stat, disable clog check
I20231016 13:16:15.559294 11165 arranger.cpp:223] Client connecting: type:0, id:10.229.150.42_3918_1697476562obmysql.test_ob_to_mysql.tbl1, ip:10.229.150.42, version:1.0.1, configuration:tb_white_list=obmysql.test_ob_to_mysql.tbl1 cluster_user=root rootserver_list=127.0.0.1:2882:2881 first_start_timestamp=0 cluster_password=BF32248FCC3E15EA3AF93A36518B3165F1FB9A13 , pid:0, peer:fd:8, register_time:1697476575, enable_monitor:0, packet_version:2,
W20231016 13:16:15.559316 11165 arranger.cpp:228] Duplication exist clientId: 10.229.150.42_3918_1697476562obmysql.test_ob_to_mysql.tbl1, close last one: 72058142459953160 with pid: 4740
I20231016 13:16:15.559355 11165 comm.cpp:330] Try close Channel of peer: id:72058142479482888, fd:8, addr:16777343, port:45482
I20231016 13:16:15.559373 11165 channel.h:46] Closed fd: 8
W20231016 13:16:19.062232 11165 arranger.cpp:327] Exited oblogreader of pid: 4740 with clientId: 10.229.150.42_3918_1697476562obmysql.test_ob_to_mysql.tbl1 of peer:id:72058142459953160, fd:8, addr:16777343, port:45184
W20231016 13:16:19.062279 11165 arranger.cpp:342] Failed to fetch peer info of fd:8, errno:9, error:Bad file descriptor
W20231016 13:16:19.062290 11165 arranger.cpp:349] Try to shutdown fd: 8
W20231016 13:16:19.062295 11165 arranger.cpp:351] Shutdown fd: 8

username 应该填 root@obmysql。

另外我看日志里有报 Duplication exist clientId,您那边的环境是不是有多个任务同时订阅同一个租户的增量数据?因为目前的 client id 生成是时间戳+租户+线程 id,同时启动多个客户端的话可能会重复,如果有这种需要的话,需要给他们指定不同的 logproxy.client.id。

用户名换成root@obmysql也是报同样的错误,我试过不通过的验证会有auth 失败的关键字,这个执行的日志是能看到已经连上数据库了,但是不知道是哪一步出错导致了查不了数据

flinkcdc 报错日志,是版本不匹配吗?这个版本应该怎么对应起来? ERROR com.oceanbase.clogproxy.client.connection.ClientHandler [] - Exception occurred ClientId: 10.229.150.42_24423_1697541041obmysql.test_ob_to_mysql.tbl1: rootserver_list=127.0.0.1:2882:2881, cluster_user=root@obmysql, cluster_password=******, tb_white_list=obmysql.test_ob_to_mysql.tbl1, start_timestamp=0, with LogProxy: 127.0.0.1:2983
net.jpountz.lz4.LZ4Exception: Error decoding offset 75 of input buffer

用的 flink cdc 的 jar 包版本是多少呢?从 tb_white_list 看应该是老版本的,升级到最新的 2.4.1 试试

cdc jar包替换成2.41.后报错信息变了:

[1] → ConstraintEnforcer[2] → Sink: Collect table sink (1/1)#3 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fe
2023-10-17 11:34:18,266 INFO org.apache.flink.runtime.taskexecutor.TaskExecutor [] - Un-registering task andution state FAILED to JobManager for task Source: ob_tbl1[1] → ConstraintEnforcer[2] → Sink: Collect table sink (1/1)9eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_3.
2023-10-17 11:34:19,287 INFO org.apache.flink.runtime.taskexecutor.slot.TaskSlotTableImpl [] - Activate slot 14ea41a1bbcc3.
2023-10-17 11:34:19,288 INFO org.apache.flink.runtime.taskexecutor.TaskExecutor [] - Received task Source: oaintEnforcer[2] → Sink: Collect table sink (1/1)#4 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_lot with allocation id 14ea41a1b8ee01f37624c2ea1176bcc3.
2023-10-17 11:34:19,316 INFO org.apache.flink.runtime.taskmanager.Task [] - Source: ob_tbl1[1] → C] → Sink: Collect table sink (1/1)#4 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_4) switched LOYING.
2023-10-17 11:34:19,317 INFO org.apache.flink.runtime.taskmanager.Task [] - Loading JAR files for t[1] → ConstraintEnforcer[2] → Sink: Collect table sink (1/1)#4 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852feDEPLOYING].
2023-10-17 11:34:19,318 INFO org.apache.flink.streaming.runtime.tasks.StreamTask [] - No state backend has beg default (HashMap) org.apache.flink.runtime.state.hashmap.HashMapStateBackend@1abfa38
2023-10-17 11:34:19,318 INFO org.apache.flink.runtime.state.StateBackendLoader [] - State backend loader lond as HashMapStateBackend
2023-10-17 11:34:19,318 INFO org.apache.flink.streaming.runtime.tasks.StreamTask [] - Checkpoint storage is s
2023-10-17 11:34:19,318 INFO org.apache.flink.runtime.taskmanager.Task [] - Source: ob_tbl1[1] → C] → Sink: Collect table sink (1/1)#4 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_4) switched NITIALIZING.
2023-10-17 11:34:19,334 INFO org.apache.flink.streaming.api.operators.collect.CollectSinkFunction [] - Initializing coth offset = 0, buffered results bytes = 0
2023-10-17 11:34:19,337 INFO org.apache.flink.streaming.api.operators.collect.CollectSinkFunction [] - Collect sink seddress = localhost/127.0.0.1:34302
2023-10-17 11:34:19,337 INFO com.ververica.cdc.connectors.oceanbase.source.OceanBaseRichSourceFunction [] - initialize
2023-10-17 11:34:19,343 INFO org.apache.flink.runtime.taskmanager.Task [] - Source: ob_tbl1[1] → C] → Sink: Collect table sink (1/1)#4 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_4) switched o RUNNING.
2023-10-17 11:34:19,390 INFO org.apache.flink.streaming.api.operators.collect.CollectSinkFunction [] - Coordinator con
2023-10-17 11:34:19,390 INFO org.apache.flink.streaming.api.operators.collect.CollectSinkFunction [] - Invalid request= , offset = 0, while expected version = a405ff09-1984-44ab-8d4f-51d4b2053ff5, offset = 0
2023-10-17 11:34:19,392 INFO com.ververica.cdc.connectors.oceanbase.source.OceanBaseRichSourceFunction [] - Start to iist
2023-10-17 11:34:19,396 WARN org.apache.flink.runtime.taskmanager.Task [] - Source: ob_tbl1[1] → C] → Sink: Collect table sink (1/1)#4 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_4) switched LED with failure cause: java.lang.NoSuchMethodError: io.debezium.jdbc.JdbcConnection.(Lio/debezium/jdbc/JdbcConfium/jdbc/JdbcConnection$ConnectionFactory;Ljava/lang/String;Ljava/lang/String;)V
at com.ververica.cdc.connectors.oceanbase.source.OceanBaseConnection.(OceanBaseConnection.java:56)
at com.ververica.cdc.connectors.oceanbase.source.OceanBaseRichSourceFunction.getSnapshotConnection(OceanBaseRica:190)
at com.ververica.cdc.connectors.oceanbase.source.OceanBaseRichSourceFunction.initTableWhiteList(OceanBaseRichSo24)
at com.ververica.cdc.connectors.oceanbase.source.OceanBaseRichSourceFunction.run(OceanBaseRichSourceFunction.ja
at org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:110)
at org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:67)
at org.apache.flink.streaming.runtime.tasks.SourceStreamTask$LegacySourceFunctionThread.run(SourceStreamTask.ja

2023-10-17 11:34:19,396 INFO org.apache.flink.runtime.taskmanager.Task [] - Freeing task resources [1] → ConstraintEnforcer[2] → Sink: Collect table sink (1/1)#4 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fe
2023-10-17 11:34:19,397 INFO org.apache.flink.runtime.taskexecutor.TaskExecutor [] - Un-registering task andution state FAILED to JobManager for task Source: ob_tbl1[1] → ConstraintEnforcer[2] → Sink: Collect table sink (1/1)9eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_4.
2023-10-17 11:34:20,413 INFO org.apache.flink.runtime.taskexecutor.slot.TaskSlotTableImpl [] - Activate slot 14ea41a1bbcc3.
2023-10-17 11:34:20,414 INFO org.apache.flink.runtime.taskexecutor.TaskExecutor [] - Received task Source: oaintEnforcer[2] → Sink: Collect table sink (1/1)#5 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_lot with allocation id 14ea41a1b8ee01f37624c2ea1176bcc3.
2023-10-17 11:34:20,460 INFO org.apache.flink.runtime.taskmanager.Task [] - Source: ob_tbl1[1] → C] → Sink: Collect table sink (1/1)#5 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_5) switched LOYING.
2023-10-17 11:34:20,469 INFO org.apache.flink.runtime.taskmanager.Task [] - Loading JAR files for t[1] → ConstraintEnforcer[2] → Sink: Collect table sink (1/1)#5 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852feDEPLOYING].
2023-10-17 11:34:20,469 INFO org.apache.flink.streaming.runtime.tasks.StreamTask [] - No state backend has beg default (HashMap) org.apache.flink.runtime.state.hashmap.HashMapStateBackend@26c83bd3
2023-10-17 11:34:20,469 INFO org.apache.flink.runtime.state.StateBackendLoader [] - State backend loader lond as HashMapStateBackend
2023-10-17 11:34:20,469 INFO org.apache.flink.streaming.runtime.tasks.StreamTask [] - Checkpoint storage is s
2023-10-17 11:34:20,470 INFO org.apache.flink.runtime.taskmanager.Task [] - Source: ob_tbl1[1] → C] → Sink: Collect table sink (1/1)#5 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_5) switched NITIALIZING.
2023-10-17 11:34:20,491 INFO org.apache.flink.streaming.api.operators.collect.CollectSinkFunction [] - Initializing coth offset = 0, buffered results bytes = 0
2023-10-17 11:34:20,499 INFO org.apache.flink.streaming.api.operators.collect.CollectSinkFunction [] - Collect sink seddress = localhost/127.0.0.1:24953
2023-10-17 11:34:20,499 INFO com.ververica.cdc.connectors.oceanbase.source.OceanBaseRichSourceFunction [] - initialize
2023-10-17 11:34:20,504 INFO org.apache.flink.runtime.taskmanager.Task [] - Source: ob_tbl1[1] → C] → Sink: Collect table sink (1/1)#5 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_5) switched o RUNNING.
2023-10-17 11:34:20,513 INFO com.ververica.cdc.connectors.oceanbase.source.OceanBaseRichSourceFunction [] - Start to iist
2023-10-17 11:34:20,516 WARN org.apache.flink.runtime.taskmanager.Task [] - Source: ob_tbl1[1] → C] → Sink: Collect table sink (1/1)#5 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_5) switched LED with failure cause: java.lang.NoSuchMethodError: io.debezium.jdbc.JdbcConnection.(Lio/debezium/jdbc/JdbcConfium/jdbc/JdbcConnection$ConnectionFactory;Ljava/lang/String;Ljava/lang/String;)V
at com.ververica.cdc.connectors.oceanbase.source.OceanBaseConnection.(OceanBaseConnection.java:56)
at com.ververica.cdc.connectors.oceanbase.source.OceanBaseRichSourceFunction.getSnapshotConnection(OceanBaseRica:190)
at com.ververica.cdc.connectors.oceanbase.source.OceanBaseRichSourceFunction.initTableWhiteList(OceanBaseRichSo24)
at com.ververica.cdc.connectors.oceanbase.source.OceanBaseRichSourceFunction.run(OceanBaseRichSourceFunction.ja
at org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:110)
at org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:67)
at org.apache.flink.streaming.runtime.tasks.SourceStreamTask$LegacySourceFunctionThread.run(SourceStreamTask.ja

2023-10-17 11:34:20,517 INFO org.apache.flink.runtime.taskmanager.Task [] - Freeing task resources [1] → ConstraintEnforcer[2] → Sink: Collect table sink (1/1)#5 (e8000938395607399eee6eaf80ab7507_cbc357ccb763df2852fe
2023-10-17 11:34:20,517 INFO org.apache.flink.runtime.taskexecutor.TaskExecutor [] - Un-registering task andution state FAILED to JobManager for task Source: ob_tbl1[1] → ConstraintEnforcer[2] → Sink: Collect table sink (1/1)9eee6eaf80ab7507_cbc357ccb763df2852fee8c4fc7d55f2_0_5.

这个报错来看,如果你用的是名字里不带 sql 的 jar 包的话,需要先换成这个 flink-sql-connector-oceanbase-cdc-2.4.1.jar

如果用的是这个 jar 包的话,那么有可能是其他 jar 包跟它有依赖冲突,需要清理掉其他不相干的 jar 包或者旧版的 jar 包。

1 个赞

非常感谢,已解决