biedongbin commented on issue #7986:
URL:
https://github.com/apache/incubator-seata/issues/7986#issuecomment-3870643882
问题找到了, 有点坑。。。。
nacos 2.1.1的bug, nacos 主动推送的rpc 消息内部 丢失了 clusters,正常的微服务那套集群模式 用不到
clusters 所以一切正常
seata 这边使用到了 clusters ,地址缓存目标key 为 group_name@@server_name@@cluster_name
然后就对不上了。。
查了内存里面发现类似如下的数据,所以就坑爹了, 但是客户端定时Job主动轮训去查的逻辑还没定位到,猜测是类似的情况
```
arthas@1]$ vmtool --action getInstances --className
com.alibaba.nacos.client.naming.cache.ServiceInfoHolder --express
'instances[1].getServiceInfoMap' -x 3
@ConcurrentHashMap[
@String[DEFAULT_GROUP@@seata-server@@default-group]:@ServiceInfo[
jsonFromServer=@String[{"name":"seata-server","groupName":"DEFAULT_GROUP","clusters":"default-group","cacheMillis":10000,"hosts":[{"instanceId":"100.77.106.222#10222#default-group#DEFAULT_GROUP@@seata-server","ip":"100.77.106.222","port":10222,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"default-group","serviceName":"DEFAULT_GROUP@@seata-server","metadata":{},"ipDeleteTimeout":30000,"instanceHeartBeatTimeOut":15000,"instanceHeartBeatInterval":5000,"instanceIdGenerator":"simple"},{"instanceId":"100.111.206.134#10222#default-group#DEFAULT_GROUP@@seata-server","ip":"100.111.206.134","port":10222,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"default-group","serviceName":"DEFAULT_GROUP@@seata-server","metadata":{},"ipDeleteTimeout":30000,"instanceHeartBeatTimeOut":15000,"instanceHeartBeatInterval":5000,"instanceIdGenerator":"simple"}],"lastRefTime":1770621517835,"checksum":"","allIPs":false,"reachProtectionThreshold":fa
lse,"valid":true}],
EMPTY=@String[],
ALL_IPS=@String[000--00-ALL_IPS--00--000],
SPLITER=@String[@@],
DEFAULT_CHARSET=@String[UTF-8],
name=@String[seata-server],
groupName=@String[DEFAULT_GROUP],
clusters=@String[default-group],
cacheMillis=@Long[10000],
hosts=@ArrayList[
@Instance[Instance{instanceId='100.77.106.222#10222#default-group#DEFAULT_GROUP@@seata-server',
ip='100.77.106.222', port=10222, weight=1.0, healthy=true, enabled=true,
ephemeral=true, clusterName='default-group',
serviceName='DEFAULT_GROUP@@seata-server', metadata={}}],
@Instance[Instance{instanceId='100.111.206.134#10222#default-group#DEFAULT_GROUP@@seata-server',
ip='100.111.206.134', port=10222, weight=1.0, healthy=true, enabled=true,
ephemeral=true, clusterName='default-group',
serviceName='DEFAULT_GROUP@@seata-server', metadata={}}],
],
lastRefTime=@Long[1770621517835],
checksum=@String[],
allIPs=@Boolean[false],
reachProtectionThreshold=@Boolean[false],
],
@String[DEFAULT_GROUP@@seata-server]:@ServiceInfo[
jsonFromServer=@String[{"name":"seata-server","groupName":"DEFAULT_GROUP","clusters":"","cacheMillis":10000,"hosts":[{"instanceId":"100.111.206.134#10222#default-group#DEFAULT_GROUP@@seata-server","ip":"100.111.206.134","port":10222,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"default-group","serviceName":"DEFAULT_GROUP@@seata-server","metadata":{},"ipDeleteTimeout":30000,"instanceHeartBeatTimeOut":15000,"instanceHeartBeatInterval":5000,"instanceIdGenerator":"simple"}],"lastRefTime":1770621778959,"checksum":"","allIPs":false,"reachProtectionThreshold":false,"valid":true}],
EMPTY=@String[],
ALL_IPS=@String[000--00-ALL_IPS--00--000],
SPLITER=@String[@@],
DEFAULT_CHARSET=@String[UTF-8],
name=@String[seata-server],
groupName=@String[DEFAULT_GROUP],
clusters=@String[],
cacheMillis=@Long[10000],
hosts=@ArrayList[
@Instance[Instance{instanceId='100.111.206.134#10222#default-group#DEFAULT_GROUP@@seata-server',
ip='100.111.206.134', port=10222, weight=1.0, healthy=true, enabled=true,
ephemeral=true, clusterName='default-group',
serviceName='DEFAULT_GROUP@@seata-server', metadata={}}],
],
lastRefTime=@Long[1770621778959],
checksum=@String[],
allIPs=@Boolean[false],
reachProtectionThreshold=@Boolean[false],
],
]
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]