gabse 8a Dblink数据推送,透明网关出现连接异常情况解决办法

Dblink数据推送,透明网关出现连接异常情况

#用例:insert into sub10@link1 select * from sub10;
#透明网关:Gateway_8.5.1.2_build4.19.1
#本地:
create table /*+ distribution(1) / sub10 (
s_suppkey bigint,
s_name char(25),
s_address varchar(40),
s_nationkey bigint,
s_phone char(15),
s_acctbal decimal(15,2),
s_comment varchar(101)
) distributed by (‘s_suppkey’);
load data infile ‘ftp://gbase:gbase@10.10.10.131/tpch10s/supplier.tbl’ into table sub10 fields terminated by ‘|’;
#远端:953.27.15
create table /
+ distribution(1) */ sub10 (
s_suppkey bigint,
s_name char(25),
s_address varchar(40),
s_nationkey bigint,
s_phone char(15),
s_acctbal decimal(15,2),
s_comment varchar(101)
) distributed by (‘s_suppkey’);

#执行数据推送:
gbase> insert into sub10@link1 select * from sub10;
ERROR 1105 (HY000): errorCode: 0, errorMsg: Communications link failure

The last packet successfully received from the server was 15 milliseconds ago. The last packet sent successfully to the server was 5,919,246 milliseconds ago.

#gbaseGateway.log:
2023-10-19 15:25:30,938 DEBUG [pool-2-thread-36] logic.DataTransfer transDataToRmtDb (DataTransfer.java:895) - Thread ID = 130: 第1次提交 10000行数据!,
2023-10-19 17:04:09,054 DEBUG [pool-2-thread-36] logic.DataTransfer transDataToRmtDb (DataTransfer.java:934) - Thread ID = 130: 第1次 10000行数据迁移!,
2023-10-19 17:04:09,125 DEBUG [pool-2-thread-36] gatewayServer.ServerSocketThread removeIntoServerThread (ServerSocketThread.java:91) - remove intoserver thread: sessionid=29,requestIP=10.10.55.73,threadid=130-1697700329439
2023-10-19 17:04:09,125 DEBUG [pool-2-thread-36] gatewayServer.ServerSocketThread removeIntoServerThread (ServerSocketThread.java:95) - current thread count0
2023-10-19 17:04:09,126 ERROR [pool-2-thread-36] gatewayServer.SocketThreadForRequest run (SocketThreadForRequest.java:268) - Thread ID = 130-1697700329439: null,
com.gbase.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet successfully received from the server was 15 milliseconds ago. The last packet sent successfully to the server was 5,919,246 milliseconds ago.
…………

###解决方法:
数据推送过程中需要一直保持源端和本地的连接状态。当推送时间超过参数gcluster_send_client_data_timeout,导致本地集群的推送连接断开。
修改参数gcluster_send_client_data_timeout能够解决问题。
gcluster_send_client_data_timeout参数为集群向客户端发送结果集数据时的超时参数,取值范围[0,100000],单位秒,默认为30秒。当参数设置为0时表示不设置超时,结果集发送无限等待,只有发送成功或失败才返回。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值