apache / apache/iotdb

confignode server rpc address must be 0.0.0.0?

Open
#7,229 1 comment 0 reactions 0 assignees View on GitHub
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**
![企业微信截图_16621101962616](https://user-images.githubusercontent.com/28997868/188107709-d6ace90c-d41c-4c3c-8112-4a60edce655c.png)

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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.