You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@iotdb.apache.org by "changxue (Jira)" <ji...@apache.org> on 2023/01/06 09:38:00 UTC

[jira] [Created] (IOTDB-5381) [datanode]datanode would use the environment variable of IOTDB_HOME, rather than the directory where the start-datanode.sh is

changxue created IOTDB-5381:
-------------------------------

             Summary: [datanode]datanode would use the environment variable of IOTDB_HOME, rather than the directory where the start-datanode.sh is
                 Key: IOTDB-5381
                 URL: https://issues.apache.org/jira/browse/IOTDB-5381
             Project: Apache IoTDB
          Issue Type: Bug
            Reporter: changxue
            Assignee: Haonan Hou
         Attachments: image-2023-01-06-17-25-12-894.png, image-2023-01-06-17-27-25-078.png

datanode would use the environment variable of IOTDB_HOME, rather than the directory where the start-datanode.sh is.

reproduction:
1. start 3C3D cluster with nodes 44, 45, 46
2. stop confignode and datanode of node 44
3. start a 1C1D in another directory with the default configurations, directory is different from $IOTDB_HOME.

actual result:
1. start 1C1D , but the logs of datanode write to $IOTDB_HOME/logs, rather than the directory where the start-datanode.sh is.
 
!image-2023-01-06-17-25-12-894.png|width=600! 
log_datanode_error.log
{code}
2023-01-06 17:15:19,324 [main] ERROR o.a.i.db.service.DataNode:255 - Cannot pull system configurations from ConfigNode-leader after 10 retries
2023-01-06 17:15:19,329 [main] ERROR o.a.i.db.service.DataNode:177 - Fail to start server
org.apache.iotdb.commons.exception.StartupException: Cannot pull system configurations from ConfigNode-leader
        at org.apache.iotdb.db.service.DataNode.pullAndCheckSystemConfigurations(DataNode.java:258)
        at org.apache.iotdb.db.service.DataNode.doAddNode(DataNode.java:154)
        at org.apache.iotdb.db.service.DataNodeServerCommandLine.run(DataNodeServerCommandLine.java:79)
        at org.apache.iotdb.commons.ServerCommandLine.doMain(ServerCommandLine.java:58)
        at org.apache.iotdb.db.service.DataNode.main(DataNode.java:141)
{code}

log_datanode_warn.log
{code}
023-01-06 17:14:54,315 [main] WARN  o.a.i.db.service.DataNode:237 - Cannot pull system configurations from ConfigNode-leader, because: Fail to connect to any config node. Please check status of ConfigNodes
2023-01-06 17:14:59,316 [main] WARN  o.a.i.d.c.ConfigNodeClient:268 - The current node may have been down TEndPoint(ip:iotdb-44, port:10710),try next node
{code}

注意IP, 1C1D 我使用的是默认配置,所以它的IP应该是127.0.0.1,为什么会是iotdb-44内,因为它使用的是 $IOTDB_HOME路径下的配置,日志也写在了$IOTDB_HOME路径下。这是不对的。应该使用我启动命令所在的文件夹。
ps: confignode没有这个问题。


2. start-cli.sh -h iotdb-45 -e "show cluster", the result is correct.
 !image-2023-01-06-17-27-25-078.png|width=600! 





--
This message was sent by Atlassian Jira
(v8.20.10#820010)