暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

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

ben0124 2024-04-30
295


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时表示不设置超时,结果集发送无限等待,只有发送成功或失败才返回。

 

 

 

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论