Devesh Kumar Singh created HDDS-13335:
-----------------------------------------

             Summary: Ozone Recon - Implement and adopt lightweight proto for 
Recon listKeys API
                 Key: HDDS-13335
                 URL: https://issues.apache.org/jira/browse/HDDS-13335
             Project: Apache Ozone
          Issue Type: Task
          Components: Ozone Recon
    Affects Versions: 2.0.0
            Reporter: Devesh Kumar Singh
            Assignee: Devesh Kumar Singh


Recon's listKeys API ({*}/api/v1/keys/listKeys{*}) uses full KeyInfo proto 
where lot of other key proto fields are not desired and needed. Some of them 
are like 
{code:java}
KeyLocationList,  FileEncryptionInfoProto,  OzoneAclInfo,  FileChecksumProto 
etc  {code}
In case of large keys or Multi part upload keys, key locations list can be huge 
and can create performance impact for some clients calling the listKeys API. So 
suggested and proposed light weight proto is:
{code:java}
message KeyInfoProtoLight {
required string volumeName = 1;
required string bucketName = 2;
required string keyName = 3;
required uint64 dataSize = 4;
required hadoop.hdds.ReplicationType type = 5;
optional hadoop.hdds.ReplicationFactor factor = 6;
required uint64 creationTime = 8;
required uint64 modificationTime = 9;
optional uint64 objectID = 14;
optional uint64 updateID = 15;
optional uint64 parentID = 16;
optional hadoop.hdds.ECReplicationConfig ecReplicationConfig = 17;
optional bool isFile = 19;
}{code}
Above proto is light weight compared to keyinfo proto and skipped not needed 
fields.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to