Ethan Rose created HDDS-13101:
---------------------------------

             Summary: Duplicate information in datanode list output
                 Key: HDDS-13101
                 URL: https://issues.apache.org/jira/browse/HDDS-13101
             Project: Apache Ozone
          Issue Type: Sub-task
            Reporter: Ethan Rose


Each datanode shown in {{ozone admin datanode list --json}} contains lots of 
duplicate information. This makes the list output verbose and hard to read when 
there are lots of nodes. We should include only minimal information about each 
node in the list output, save more verbose info for {{ozone admin datanode 
info}}, and not have duplicate information for in any command output. Here is 
the output for one node:

{code}
[ {
  "datanodeDetails" : {
    "level" : 3,
    "cost" : 0,
    "id" : {
      "uuid" : "f4e6316f-a5a4-47d4-9bd7-c47253c23d6e",
      "id" : "f4e6316f-a5a4-47d4-9bd7-c47253c23d6e",
      "byteString" : {
        "validUtf8" : true,
        "empty" : false
      }
    },
    "ipAddress" : "172.20.0.6",
    "hostName" : "ozone-datanode-1.ozone_default",
    "ports" : [ {
      "name" : "HTTP",
      "value" : 9882
    }, {
      "name" : "CLIENT_RPC",
      "value" : 19864
    }, {
      "name" : "REPLICATION",
      "value" : 9886
    }, {
      "name" : "RATIS",
      "value" : 9858
    }, {
      "name" : "RATIS_ADMIN",
      "value" : 9857
    }, {
      "name" : "RATIS_SERVER",
      "value" : 9856
    }, {
      "name" : "RATIS_DATASTREAM",
      "value" : 9855
    }, {
      "name" : "STANDALONE",
      "value" : 9859
    } ],
    "setupTime" : 0,
    "persistedOpState" : "IN_SERVICE",
    "persistedOpStateExpiryEpochSec" : 0,
    "initialVersion" : 0,
    "currentVersion" : 2,
    "uuid" : "f4e6316f-a5a4-47d4-9bd7-c47253c23d6e",
    "uuidString" : "f4e6316f-a5a4-47d4-9bd7-c47253c23d6e",
    "ipAddressAsByteString" : {
      "string" : "172.20.0.6",
      "bytes" : {
        "validUtf8" : true,
        "empty" : false
      }
    },
    "hostNameAsByteString" : {
      "string" : "ozone-datanode-1.ozone_default",
      "bytes" : {
        "validUtf8" : true,
        "empty" : false
      }
    },
    "ratisPort" : {
      "name" : "RATIS",
      "value" : 9858
    },
    "standalonePort" : {
      "name" : "STANDALONE",
      "value" : 9859
    },
    "decommissioned" : false,
    "maintenance" : false,
    "networkLocation" : "/default-rack",
    "networkName" : "f4e6316f-a5a4-47d4-9bd7-c47253c23d6e",
    "networkLocationAsByteString" : {
      "string" : "/default-rack",
      "bytes" : {
        "validUtf8" : true,
        "empty" : false
      }
    },
    "networkNameAsByteString" : {
      "string" : "f4e6316f-a5a4-47d4-9bd7-c47253c23d6e",
      "bytes" : {
        "validUtf8" : true,
        "empty" : false
      }
    },
    "networkFullPath" : "/default-rack/f4e6316f-a5a4-47d4-9bd7-c47253c23d6e",
    "numOfLeaves" : 1
  },
  "healthState" : "HEALTHY",
  "opState" : "IN_SERVICE"
} ]
{code}

Some of the issues here are:
* {{initialVersion}} is for testing only
* ID and UUID is duplicated four times in various formats
* IP and hostnames are duplicated
* Ratis and standalone ports are duplicated
* Operational state is duplicated as {{opState}} and {{persistedOpState}}
* SCM doesn't populate the value of {{setupTime}}, only datanodes set this when 
they start, so it is always 0.
* Level and cost should be moved to a dedicated topology section because the 
terms are ambiguous on their own.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@ozone.apache.org
For additional commands, e-mail: issues-h...@ozone.apache.org

Reply via email to