confignode server rpc address must be 0.0.0.0?
- Dominant language
- Java
- Stars
- 6.4k
- Forks
- 1.2k
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 115
Description
**Describe the bug**
Configuring internal_address as the host ip program cannot run,and if the configuration ip is 0.0.0.0, when the service is the leader, the datanode cannot join the cluster.
**To Reproduce**
Steps to reproduce the behavior:
1. confignode config
internal_address=192.168.1.41
target_config_nodes=192.168.1.41:22277,192.168.1.42:22277,192.168.1.43:22277
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**

2022-09-02 08:11:44,289 [pool-4-IoTDB-ConfigNodeRPC-Client-6] INFO o.a.i.c.s.t.ConfigNodeRPCServiceProcessor:150 - Execute RegisterDatanodeRequest TDataNodeRegisterReq(dataNodeConfiguration:TDataNodeConfiguration(location:TDataNodeLocation(dataNodeId:-1, clientRpcEndPoint:TEndPoint(ip:192.168.1.42, port:6667), internalEndPoint:TEndPoint(ip:192.168.1.42, port:9003), mPPDataExchangeEndPoint:TEndPoint(ip:192.168.1.42, port:8777), dataRegionConsensusEndPoint:TEndPoint(ip:192.168.1.42, port:40010), schemaRegionConsensusEndPoint:TEndPoint(ip:192.168.1.42, port:50010)), resource:TNodeResource(cpuCoreNum:4, maxMemory:419430400))) with result TDataNodeRegisterResp(status:TSStatus(code:707, message:The current ConfigNode is not leader, please redirect to a new ConfigNode., redirectNode:TEndPoint(ip:0.0.0.0, port:22277)), configNodeList:[TConfigNodeLocation(configNodeId:0, internalEndPoint:TEndPoint(ip:0.0.0.0, port:22277), consensusEndPoint:TEndPoint(ip:0.0.0.0, port:22278)), TConfigNodeLocation(configNodeId:1, internalEndPoint:TEndPoint(ip:192.168.1.42, port:22277), consensusEndPoint:TEndPoint(ip:192.168.1.42, port:22278)), TConfigNodeLocation(configNodeId:2, internalEndPoint:TEndPoint(ip:192.168.1.43, port:22277), consensusEndPoint:TEndPoint(ip:192.168.1.43, port:22278))])
Contributor guide
Research direction
Reproduce the cluster with internal_address set to 192.168.1.41 and then 0.0.0.0, using the ConfigNodeRPCServiceProcessor log as the entry point. Trace how the ConfigNode redirect and configNodeList addresses are produced, and consider the issue complete when the documented configuration lets the leader redirect a datanode using a reachable address.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- databases, distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100