| ClientNamenodeProtocolProtos |  | 0% | | n/a | 4 | 4 | 3 | 3 | 4 | 4 | 1 | 1 |
| DataTransferProtos.OpWriteBlockProto.Builder |  | 0% |  | 0% | 354 | 354 | 864 | 864 | 145 | 145 | 1 | 1 |
| DatanodeProtocolProtos.HeartbeatRequestProto.Builder |  | 0% |  | 0% | 298 | 298 | 706 | 706 | 126 | 126 | 1 | 1 |
| HdfsProtos.HdfsFileStatusProto.Builder |  | 0% |  | 0% | 309 | 309 | 715 | 715 | 125 | 125 | 1 | 1 |
| HdfsProtos.LocatedBlockProto.Builder |  | 0% |  | 0% | 284 | 284 | 705 | 705 | 121 | 121 | 1 | 1 |
| DatanodeProtocolProtos.BlockCommandProto.Builder |  | 0% |  | 0% | 267 | 267 | 654 | 654 | 113 | 113 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeCommandProto.Builder |  | 0% |  | 0% | 290 | 290 | 631 | 631 | 99 | 99 | 1 | 1 |
| InotifyProtos.MetadataUpdateEventProto.Builder |  | 0% |  | 0% | 260 | 260 | 630 | 630 | 111 | 111 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetAdditionalDatanodeRequestProto.Builder |  | 0% |  | 0% | 237 | 237 | 580 | 580 | 103 | 103 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportListingProto.Builder |  | 0% |  | 0% | 232 | 232 | 550 | 550 | 97 | 97 | 1 | 1 |
| DataTransferProtos.OpBlockGroupChecksumProto.Builder |  | 0% |  | 0% | 232 | 232 | 539 | 539 | 92 | 92 | 1 | 1 |
| HdfsProtos.HdfsFileStatusProto |  | 0% |  | 0% | 251 | 251 | 442 | 442 | 77 | 77 | 1 | 1 |
| HdfsProtos.DatanodeInfoProto.Builder |  | 0% |  | 0% | 223 | 223 | 530 | 530 | 106 | 106 | 1 | 1 |
| ErasureCodingProtos.BlockECReconstructionInfoProto.Builder |  | 0% |  | 0% | 235 | 235 | 514 | 514 | 85 | 85 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateRequestProto.Builder |  | 0% |  | 0% | 213 | 213 | 520 | 520 | 90 | 90 | 1 | 1 |
| ClientNamenodeProtocolProtos.ClientNamenodeProtocol.Stub |  | 0% | | n/a | 113 | 113 | 0 | 0 | 113 | 113 | 1 | 1 |
| DataTransferProtos.OpWriteBlockProto |  | 0% |  | 0% | 218 | 218 | 388 | 388 | 78 | 78 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddBlockRequestProto.Builder |  | 0% |  | 0% | 195 | 195 | 490 | 490 | 87 | 87 | 1 | 1 |
| HdfsProtos.DatanodeInfoProto |  | 0% |  | 0% | 220 | 220 | 397 | 397 | 72 | 72 | 1 | 1 |
| HdfsProtos |  | 0% | | n/a | 4 | 4 | 119 | 119 | 4 | 4 | 1 | 1 |
| HdfsProtos.LocatedBlocksProto.Builder |  | 0% |  | 0% | 206 | 206 | 462 | 462 | 83 | 83 | 1 | 1 |
| DatanodeProtocolProtos.HeartbeatResponseProto.Builder |  | 0% |  | 0% | 195 | 195 | 438 | 438 | 79 | 79 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdatePipelineRequestProto.Builder |  | 0% |  | 0% | 182 | 182 | 0 | 0 | 78 | 78 | 1 | 1 |
| InotifyProtos.CreateEventProto.Builder |  | 0% |  | 0% | 179 | 179 | 430 | 430 | 80 | 80 | 1 | 1 |
| DatanodeProtocolProtos.CommitBlockSynchronizationRequestProto.Builder |  | 0% |  | 0% | 171 | 171 | 403 | 403 | 79 | 79 | 1 | 1 |
| ClientNamenodeProtocolProtos.ClientNamenodeProtocol.BlockingStub |  | 0% | | n/a | 112 | 112 | 0 | 0 | 112 | 112 | 1 | 1 |
| HdfsProtos.BlockTokenSecretProto.Builder |  | 0% |  | 0% | 152 | 152 | 405 | 405 | 77 | 77 | 1 | 1 |
| InotifyProtos.EventsListProto.Builder |  | 0% |  | 0% | 164 | 164 | 385 | 385 | 75 | 75 | 1 | 1 |
| ClientNamenodeProtocolProtos.ClientNamenodeProtocol |  | 0% |  | 0% | 346 | 346 | 0 | 0 | 10 | 10 | 1 | 1 |
| DataTransferProtos.OpTransferBlockProto.Builder |  | 0% |  | 0% | 155 | 155 | 384 | 384 | 71 | 71 | 1 | 1 |
| DataTransferProtos.DataTransferEncryptorMessageProto.Builder |  | 0% |  | 0% | 161 | 161 | 375 | 375 | 71 | 71 | 1 | 1 |
| DatanodeProtocolProtos.BlockReportRequestProto.Builder |  | 0% |  | 0% | 164 | 164 | 376 | 376 | 68 | 68 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateRequestProto |  | 0% |  | 0% | 169 | 169 | 320 | 320 | 61 | 61 | 1 | 1 |
| HdfsProtos.ContentSummaryProto.Builder |  | 0% |  | 0% | 164 | 164 | 372 | 372 | 78 | 78 | 1 | 1 |
| AclProtos.AclStatusProto.Builder |  | 0% |  | 0% | 158 | 158 | 372 | 372 | 69 | 69 | 1 | 1 |
| HdfsServerProtos.BlockWithLocationsProto.Builder |  | 0% |  | 0% | 145 | 145 | 365 | 365 | 73 | 73 | 1 | 1 |
| InotifyProtos.CreateEventProto |  | 0% |  | 0% | 166 | 166 | 314 | 314 | 59 | 59 | 1 | 1 |
| ClientNamenodeProtocolProtos.ClientNamenodeProtocol.new BlockingService() {...} |  | 0% |  | 0% | 341 | 341 | 0 | 0 | 5 | 5 | 1 | 1 |
| InotifyProtos.MetadataUpdateEventProto |  | 0% |  | 0% | 163 | 163 | 298 | 298 | 64 | 64 | 1 | 1 |
| HdfsProtos.ContentSummaryProto |  | 0% |  | 0% | 163 | 163 | 293 | 293 | 58 | 58 | 1 | 1 |
| HdfsProtos.SnapshotInfoProto.Builder |  | 0% |  | 0% | 143 | 143 | 349 | 349 | 62 | 62 | 1 | 1 |
| EncryptionZonesProtos.ZoneReencryptionStatusProto.Builder |  | 0% |  | 0% | 142 | 142 | 340 | 340 | 68 | 68 | 1 | 1 |
| HdfsProtos.LocatedBlockProto |  | 0% |  | 0% | 142 | 142 | 266 | 266 | 64 | 64 | 1 | 1 |
| HdfsServerProtos.ExportedBlockKeysProto.Builder |  | 0% |  | 0% | 144 | 144 | 327 | 327 | 65 | 65 | 1 | 1 |
| EncryptionZonesProtos.ZoneReencryptionStatusProto |  | 0% |  | 0% | 151 | 151 | 290 | 290 | 55 | 55 | 1 | 1 |
| DataTransferProtos.BlockOpResponseProto.Builder |  | 0% |  | 0% | 144 | 144 | 329 | 329 | 61 | 61 | 1 | 1 |
| HdfsProtos.StorageReportProto.Builder |  | 0% |  | 0% | 142 | 142 | 328 | 328 | 68 | 68 | 1 | 1 |
| HdfsProtos.BlockStoragePolicyProto.Builder |  | 0% |  | 0% | 145 | 145 | 322 | 322 | 60 | 60 | 1 | 1 |
| HdfsServerProtos.NamespaceInfoProto.Builder |  | 0% |  | 0% | 139 | 139 | 329 | 329 | 62 | 62 | 1 | 1 |
| DatanodeProtocolProtos.HeartbeatRequestProto |  | 0% |  | 0% | 151 | 151 | 252 | 252 | 65 | 65 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportProto.Builder |  | 0% |  | 0% | 132 | 132 | 322 | 322 | 61 | 61 | 1 | 1 |
| HdfsProtos.FsServerDefaultsProto |  | 0% |  | 0% | 149 | 149 | 266 | 266 | 55 | 55 | 1 | 1 |
| HdfsServerProtos.RecoveringBlockProto.Builder |  | 0% |  | 0% | 143 | 143 | 307 | 307 | 58 | 58 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeRegistrationProto.Builder |  | 0% |  | 0% | 141 | 141 | 311 | 311 | 56 | 56 | 1 | 1 |
| DatanodeProtocolProtos.BlockReceivedAndDeletedRequestProto.Builder |  | 0% |  | 0% | 133 | 133 | 308 | 308 | 59 | 59 | 1 | 1 |
| DataTransferProtos.OpReplaceBlockProto.Builder |  | 0% |  | 0% | 136 | 136 | 312 | 312 | 57 | 57 | 1 | 1 |
| DatanodeProtocolProtos.StorageReceivedDeletedBlocksProto.Builder |  | 0% |  | 0% | 133 | 133 | 307 | 307 | 59 | 59 | 1 | 1 |
| HdfsProtos.FsServerDefaultsProto.Builder |  | 0% |  | 0% | 133 | 133 | 307 | 307 | 68 | 68 | 1 | 1 |
| HdfsProtos.BlockTokenSecretProto |  | 0% |  | 0% | 124 | 124 | 242 | 242 | 56 | 56 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeCommandProto |  | 0% |  | 0% | 161 | 161 | 234 | 234 | 58 | 58 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetAdditionalDatanodeRequestProto |  | 0% |  | 0% | 131 | 131 | 246 | 246 | 59 | 59 | 1 | 1 |
| HdfsProtos.BatchedDirectoryListingProto.Builder |  | 0% |  | 0% | 126 | 126 | 284 | 284 | 57 | 57 | 1 | 1 |
| HdfsProtos.StorageReportProto |  | 0% |  | 0% | 135 | 135 | 243 | 243 | 53 | 53 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListOpenFilesResponseProto.Builder |  | 0% |  | 0% | 113 | 113 | 0 | 0 | 55 | 55 | 1 | 1 |
| HdfsProtos.ECSchemaProto.Builder |  | 0% |  | 0% | 118 | 118 | 276 | 276 | 57 | 57 | 1 | 1 |
| ErasureCodingProtos.BlockECReconstructionInfoProto |  | 0% |  | 0% | 141 | 141 | 222 | 222 | 54 | 54 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsStatsResponseProto |  | 0% |  | 0% | 127 | 127 | 229 | 229 | 50 | 50 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddBlockRequestProto |  | 0% |  | 0% | 117 | 117 | 223 | 223 | 55 | 55 | 1 | 1 |
| HdfsProtos.SnapshotInfoProto |  | 0% |  | 0% | 124 | 124 | 248 | 248 | 50 | 50 | 1 | 1 |
| ClientNamenodeProtocolProtos.DatanodeStorageReportProto.Builder |  | 0% |  | 0% | 117 | 117 | 264 | 264 | 53 | 53 | 1 | 1 |
| AliasMapProtocolProtos.ListResponseProto.Builder |  | 0% |  | 0% | 117 | 117 | 263 | 263 | 53 | 53 | 1 | 1 |
| HdfsServerProtos.NamespaceInfoProto |  | 0% |  | 0% | 125 | 125 | 234 | 234 | 50 | 50 | 1 | 1 |
| DataTransferProtos.BaseHeaderProto.Builder |  | 0% |  | 0% | 123 | 123 | 262 | 262 | 50 | 50 | 1 | 1 |
| HdfsProtos.DatanodeIDProto.Builder |  | 0% |  | 0% | 113 | 113 | 270 | 270 | 56 | 56 | 1 | 1 |
| ClientNamenodeProtocolProtos.MkdirsRequestProto.Builder |  | 0% |  | 0% | 119 | 119 | 262 | 262 | 51 | 51 | 1 | 1 |
| HdfsProtos.DatanodeIDProto |  | 0% |  | 0% | 121 | 121 | 232 | 232 | 49 | 49 | 1 | 1 |
| DataTransferProtos.OpReadBlockProto.Builder |  | 0% |  | 0% | 118 | 118 | 256 | 256 | 53 | 53 | 1 | 1 |
| ClientNamenodeProtocolProtos.CachePoolInfoProto.Builder |  | 0% |  | 0% | 107 | 107 | 0 | 0 | 56 | 56 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportListingRequestProto.Builder |  | 0% |  | 0% | 111 | 111 | 260 | 260 | 50 | 50 | 1 | 1 |
| DataTransferProtos.OpBlockGroupChecksumProto |  | 0% |  | 0% | 122 | 122 | 203 | 203 | 54 | 54 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsReplicatedBlockStatsResponseProto |  | 0% |  | 0% | 118 | 118 | 213 | 213 | 48 | 48 | 1 | 1 |
| ClientNamenodeProtocolProtos.CachePoolInfoProto |  | 0% |  | 0% | 115 | 115 | 0 | 0 | 49 | 49 | 1 | 1 |
| HdfsProtos.ReencryptionInfoProto |  | 0% |  | 0% | 116 | 116 | 220 | 220 | 48 | 48 | 1 | 1 |
| HdfsProtos.FileEncryptionInfoProto.Builder |  | 0% |  | 0% | 106 | 106 | 250 | 250 | 50 | 50 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveInfoProto.Builder |  | 0% |  | 0% | 109 | 109 | 0 | 0 | 52 | 52 | 1 | 1 |
| HdfsProtos.LocatedBlocksProto |  | 0% |  | 0% | 123 | 123 | 201 | 201 | 52 | 52 | 1 | 1 |
| DatanodeProtocolProtos.CommitBlockSynchronizationRequestProto |  | 0% |  | 0% | 113 | 113 | 204 | 204 | 52 | 52 | 1 | 1 |
| HdfsProtos.DatanodeVolumeInfoProto |  | 0% |  | 0% | 115 | 115 | 213 | 213 | 47 | 47 | 1 | 1 |
| DatanodeProtocolProtos.StorageBlockReportProto.Builder |  | 0% |  | 0% | 101 | 101 | 245 | 245 | 52 | 52 | 1 | 1 |
| HdfsServerProtos.BlockWithLocationsProto |  | 0% |  | 0% | 104 | 104 | 191 | 191 | 52 | 52 | 1 | 1 |
| HdfsProtos.ReencryptionInfoProto.Builder |  | 0% |  | 0% | 105 | 105 | 245 | 245 | 54 | 54 | 1 | 1 |
| HdfsServerProtos.NamenodeRegistrationProto.Builder |  | 0% |  | 0% | 106 | 106 | 245 | 245 | 48 | 48 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBatchedListingResponseProto.Builder |  | 0% |  | 0% | 103 | 103 | 234 | 234 | 51 | 51 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsStatsResponseProto.Builder |  | 0% |  | 0% | 107 | 107 | 237 | 237 | 57 | 57 | 1 | 1 |
| DatanodeProtocolProtos |  | 0% | | n/a | 4 | 4 | 80 | 80 | 4 | 4 | 1 | 1 |
| DataTransferProtos.OpRequestShortCircuitAccessProto.Builder |  | 0% |  | 0% | 111 | 111 | 237 | 237 | 49 | 49 | 1 | 1 |
| HdfsProtos.ErasureCodingPolicyProto.Builder |  | 0% |  | 0% | 106 | 106 | 238 | 238 | 50 | 50 | 1 | 1 |
| AclProtos.SetAclRequestProto.Builder |  | 0% |  | 0% | 100 | 100 | 234 | 234 | 49 | 49 | 1 | 1 |
| AclProtos.ModifyAclEntriesRequestProto.Builder |  | 0% |  | 0% | 100 | 100 | 234 | 234 | 49 | 49 | 1 | 1 |
| EditLogProtos.AclEditLogProto.Builder |  | 0% |  | 0% | 100 | 100 | 234 | 234 | 49 | 49 | 1 | 1 |
| XAttrProtos.GetXAttrsRequestProto.Builder |  | 0% |  | 0% | 100 | 100 | 234 | 234 | 49 | 49 | 1 | 1 |
| HdfsProtos.FileEncryptionInfoProto |  | 0% |  | 0% | 110 | 110 | 207 | 207 | 46 | 46 | 1 | 1 |
| AclProtos.RemoveAclEntriesRequestProto.Builder |  | 0% |  | 0% | 100 | 100 | 234 | 234 | 49 | 49 | 1 | 1 |
| EditLogProtos.XAttrEditLogProto.Builder |  | 0% |  | 0% | 99 | 99 | 232 | 232 | 49 | 49 | 1 | 1 |
| ReconfigurationProtocolProtos.GetReconfigurationStatusResponseProto.Builder |  | 0% |  | 0% | 101 | 101 | 230 | 230 | 51 | 51 | 1 | 1 |
| DatanodeProtocolProtos.BlockCommandProto |  | 0% |  | 0% | 105 | 105 | 190 | 190 | 57 | 57 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSymlinkRequestProto.Builder |  | 0% |  | 0% | 104 | 104 | 0 | 0 | 48 | 48 | 1 | 1 |
| HdfsProtos.DatanodeVolumeInfoProto.Builder |  | 0% |  | 0% | 103 | 103 | 235 | 235 | 52 | 52 | 1 | 1 |
| DataTransferProtos |  | 0% | | n/a | 4 | 4 | 70 | 70 | 4 | 4 | 1 | 1 |
| DataTransferProtos.BlockOpResponseProto |  | 0% |  | 0% | 114 | 114 | 197 | 197 | 48 | 48 | 1 | 1 |
| ClientNamenodeProtocolProtos.AbandonBlockRequestProto.Builder |  | 0% |  | 0% | 103 | 103 | 236 | 236 | 48 | 48 | 1 | 1 |
| ClientNamenodeProtocolProtos.CompleteRequestProto.Builder |  | 0% |  | 0% | 103 | 103 | 235 | 235 | 48 | 48 | 1 | 1 |
| HdfsProtos.DataEncryptionKeyProto |  | 0% |  | 0% | 107 | 107 | 203 | 203 | 46 | 46 | 1 | 1 |
| HdfsProtos.DataEncryptionKeyProto.Builder |  | 0% |  | 0% | 99 | 99 | 230 | 230 | 50 | 50 | 1 | 1 |
| HdfsProtos.ZoneEncryptionInfoProto.Builder |  | 0% |  | 0% | 103 | 103 | 232 | 232 | 46 | 46 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsECBlockGroupStatsResponseProto |  | 0% |  | 0% | 108 | 108 | 194 | 194 | 46 | 46 | 1 | 1 |
| DataTransferProtos.DataTransferEncryptorMessageProto |  | 0% |  | 0% | 107 | 107 | 186 | 186 | 49 | 49 | 1 | 1 |
| ClientNamenodeProtocolProtos.ClientNamenodeProtocol.new ClientNamenodeProtocolProtos.ClientNamenodeProtocol() {...} |  | 0% | | n/a | 112 | 112 | 0 | 0 | 112 | 112 | 1 | 1 |
| ClientDatanodeProtocolProtos.SubmitDiskBalancerPlanRequestProto.Builder |  | 0% |  | 0% | 94 | 94 | 226 | 226 | 48 | 48 | 1 | 1 |
| ReconfigurationProtocolProtos.GetReconfigurationStatusConfigChangeProto.Builder |  | 0% |  | 0% | 92 | 92 | 228 | 228 | 46 | 46 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsReplicatedBlockStatsResponseProto.Builder |  | 0% |  | 0% | 99 | 99 | 218 | 218 | 53 | 53 | 1 | 1 |
| EncryptionZonesProtos.EncryptionZoneProto.Builder |  | 0% |  | 0% | 95 | 95 | 225 | 225 | 46 | 46 | 1 | 1 |
| DataTransferProtos.OpBlockChecksumResponseProto.Builder |  | 0% |  | 0% | 100 | 100 | 218 | 218 | 48 | 48 | 1 | 1 |
| DatanodeProtocolProtos.HeartbeatResponseProto |  | 0% |  | 0% | 111 | 111 | 178 | 178 | 50 | 50 | 1 | 1 |
| DatanodeProtocolProtos.CacheReportRequestProto.Builder |  | 0% |  | 0% | 94 | 94 | 224 | 224 | 46 | 46 | 1 | 1 |
| NamenodeProtocolProtos.GetBlocksRequestProto.Builder |  | 0% |  | 0% | 99 | 99 | 217 | 217 | 48 | 48 | 1 | 1 |
| AclProtos.AclStatusProto |  | 0% |  | 0% | 103 | 103 | 189 | 189 | 48 | 48 | 1 | 1 |
| HdfsProtos.DirectoryListingProto.Builder |  | 0% |  | 0% | 93 | 93 | 211 | 211 | 47 | 47 | 1 | 1 |
| EncryptionZonesProtos.ListReencryptionStatusResponseProto.Builder |  | 0% |  | 0% | 93 | 93 | 211 | 211 | 47 | 47 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCachePoolsResponseProto.Builder |  | 0% |  | 0% | 93 | 93 | 0 | 0 | 47 | 47 | 1 | 1 |
| InotifyProtos.EventBatchProto.Builder |  | 0% |  | 0% | 93 | 93 | 211 | 211 | 47 | 47 | 1 | 1 |
| JournalProtocolProtos.JournalRequestProto.Builder |  | 0% |  | 0% | 100 | 100 | 215 | 215 | 48 | 48 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCacheDirectivesResponseProto.Builder |  | 0% |  | 0% | 93 | 93 | 0 | 0 | 47 | 47 | 1 | 1 |
| EncryptionZonesProtos.ListEncryptionZonesResponseProto.Builder |  | 0% |  | 0% | 93 | 93 | 211 | 211 | 47 | 47 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdatePipelineRequestProto |  | 0% |  | 0% | 101 | 101 | 0 | 0 | 50 | 50 | 1 | 1 |
| ClientDatanodeProtocolProtos.SubmitDiskBalancerPlanRequestProto |  | 0% |  | 0% | 100 | 100 | 195 | 195 | 45 | 45 | 1 | 1 |
| DataTransferProtos.OpReplaceBlockProto |  | 0% |  | 0% | 105 | 105 | 186 | 186 | 46 | 46 | 1 | 1 |
| HdfsServerProtos.RemoteEditLogManifestProto.Builder |  | 0% |  | 0% | 92 | 92 | 209 | 209 | 47 | 47 | 1 | 1 |
| EncryptionZonesProtos.EncryptionZoneProto |  | 0% |  | 0% | 100 | 100 | 188 | 188 | 44 | 44 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBlockLocalPathInfoResponseProto.Builder |  | 0% |  | 0% | 95 | 95 | 217 | 217 | 44 | 44 | 1 | 1 |
| HdfsServerProtos.CheckpointSignatureProto.Builder |  | 0% |  | 0% | 97 | 97 | 215 | 215 | 46 | 46 | 1 | 1 |
| HdfsProtos.QuotaUsageProto.Builder |  | 0% |  | 0% | 99 | 99 | 212 | 212 | 48 | 48 | 1 | 1 |
| DataTransferProtos.PipelineAckProto.Builder |  | 0% |  | 0% | 83 | 83 | 214 | 214 | 47 | 47 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportListingProto |  | 0% |  | 0% | 97 | 97 | 165 | 165 | 52 | 52 | 1 | 1 |
| ReconfigurationProtocolProtos.GetReconfigurationStatusConfigChangeProto |  | 0% |  | 0% | 94 | 94 | 189 | 189 | 44 | 44 | 1 | 1 |
| ClientNamenodeProtocolProtos.OpenFilesBatchResponseProto.Builder |  | 0% |  | 0% | 87 | 87 | 0 | 0 | 44 | 44 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportProto |  | 0% |  | 0% | 93 | 93 | 183 | 183 | 46 | 46 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveInfoProto |  | 0% |  | 0% | 98 | 98 | 0 | 0 | 45 | 45 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportListingRequestProto |  | 0% |  | 0% | 96 | 96 | 182 | 182 | 44 | 44 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsECBlockGroupStatsResponseProto.Builder |  | 0% |  | 0% | 90 | 90 | 197 | 197 | 49 | 49 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBlockLocalPathInfoRequestProto.Builder |  | 0% |  | 0% | 94 | 94 | 198 | 198 | 41 | 41 | 1 | 1 |
| DatanodeProtocolProtos.ReceivedDeletedBlockInfoProto.Builder |  | 0% |  | 0% | 90 | 90 | 201 | 201 | 42 | 42 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveEntryProto.Builder |  | 0% |  | 0% | 94 | 94 | 0 | 0 | 41 | 41 | 1 | 1 |
| NamenodeProtocolProtos.EndCheckpointRequestProto.Builder |  | 0% |  | 0% | 94 | 94 | 198 | 198 | 41 | 41 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmResponseProto.Builder |  | 0% |  | 0% | 90 | 90 | 200 | 200 | 42 | 42 | 1 | 1 |
| HdfsProtos.BlockStoragePolicyProto |  | 0% |  | 0% | 101 | 101 | 165 | 165 | 46 | 46 | 1 | 1 |
| ClientNamenodeProtocolProtos.AppendResponseProto.Builder |  | 0% |  | 0% | 94 | 94 | 196 | 196 | 41 | 41 | 1 | 1 |
| AliasMapProtocolProtos.KeyValueProto.Builder |  | 0% |  | 0% | 94 | 94 | 196 | 196 | 41 | 41 | 1 | 1 |
| ClientDatanodeProtocolProtos.QueryPlanStatusResponseProto.Builder |  | 0% |  | 0% | 83 | 83 | 201 | 201 | 44 | 44 | 1 | 1 |
| InotifyProtos.EventsListProto |  | 0% |  | 0% | 92 | 92 | 164 | 164 | 48 | 48 | 1 | 1 |
| ClientNamenodeProtocolProtos.CachePoolEntryProto.Builder |  | 0% |  | 0% | 93 | 93 | 0 | 0 | 41 | 41 | 1 | 1 |
| ClientNamenodeProtocolProtos.OpenFilesBatchResponseProto |  | 0% |  | 0% | 92 | 92 | 0 | 0 | 43 | 43 | 1 | 1 |
| HdfsServerProtos.ExportedBlockKeysProto |  | 0% |  | 0% | 95 | 95 | 165 | 165 | 46 | 46 | 1 | 1 |
| DataTransferProtos.ReleaseShortCircuitAccessRequestProto.Builder |  | 0% |  | 0% | 92 | 92 | 194 | 194 | 41 | 41 | 1 | 1 |
| DataTransferProtos.OpBlockChecksumProto.Builder |  | 0% |  | 0% | 92 | 92 | 194 | 194 | 41 | 41 | 1 | 1 |
| HdfsProtos.SnapshotStatusProto.Builder |  | 0% |  | 0% | 91 | 91 | 194 | 194 | 44 | 44 | 1 | 1 |
| HdfsServerProtos.RecoveringBlockProto |  | 0% |  | 0% | 101 | 101 | 161 | 161 | 45 | 45 | 1 | 1 |
| HdfsProtos.SnapshottableDirectoryStatusProto.Builder |  | 0% |  | 0% | 91 | 91 | 194 | 194 | 44 | 44 | 1 | 1 |
| HdfsProtos.ErasureCodingPolicyProto |  | 0% |  | 0% | 96 | 96 | 164 | 164 | 44 | 44 | 1 | 1 |
| ErasureCodingProtos.AddErasureCodingPoliciesResponseProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| HdfsProtos.DatanodeInfosProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePoliciesResponseProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| HdfsProtos.SnapshottableDirectoryListingProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| ClientNamenodeProtocolProtos.ReportBadBlocksRequestProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| XAttrProtos.ListXAttrsResponseProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| HdfsProtos.SnapshotListingProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetVolumeReportResponseProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeStorageReportResponseProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| HdfsServerProtos.BlocksWithLocationsProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| DatanodeProtocolProtos.ReportBadBlocksRequestProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPoliciesResponseProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingCodecsResponseProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| ErasureCodingProtos.AddErasureCodingPoliciesRequestProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| DatanodeProtocolProtos.BlockECReconstructionCommandProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| HdfsProtos.StorageTypeQuotaInfosProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeReportResponseProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| XAttrProtos.GetXAttrsResponseProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSlowDatanodeReportResponseProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| DatanodeProtocolProtos.BlockRecoveryCommandProto.Builder |  | 0% |  | 0% | 84 | 84 | 188 | 188 | 43 | 43 | 1 | 1 |
| NamenodeProtocolProtos.ErrorReportRequestProto.Builder |  | 0% |  | 0% | 88 | 88 | 194 | 194 | 42 | 42 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeInfoProto.Builder |  | 0% |  | 0% | 90 | 90 | 0 | 0 | 44 | 44 | 1 | 1 |
| DatanodeProtocolProtos.ErrorReportRequestProto.Builder |  | 0% |  | 0% | 88 | 88 | 194 | 194 | 42 | 42 | 1 | 1 |
| JournalProtocolProtos.JournalRequestProto |  | 0% |  | 0% | 94 | 94 | 163 | 163 | 43 | 43 | 1 | 1 |
| InterDatanodeProtocolProtos.UpdateReplicaUnderRecoveryRequestProto.Builder |  | 0% |  | 0% | 89 | 89 | 190 | 190 | 44 | 44 | 1 | 1 |
| HdfsProtos.AddErasureCodingPolicyResponseProto.Builder |  | 0% |  | 0% | 87 | 87 | 192 | 192 | 42 | 42 | 1 | 1 |
| HdfsServerProtos.NamenodeRegistrationProto |  | 0% |  | 0% | 92 | 92 | 168 | 168 | 43 | 43 | 1 | 1 |
| JournalProtocolProtos.FenceRequestProto.Builder |  | 0% |  | 0% | 87 | 87 | 192 | 192 | 42 | 42 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSymlinkRequestProto |  | 0% |  | 0% | 92 | 92 | 0 | 0 | 43 | 43 | 1 | 1 |
| DatanodeProtocolProtos.SlowPeerReportProto |  | 0% |  | 0% | 89 | 89 | 164 | 164 | 43 | 43 | 1 | 1 |
| XAttrProtos.SetXAttrRequestProto.Builder |  | 0% |  | 0% | 87 | 87 | 191 | 191 | 42 | 42 | 1 | 1 |
| HdfsProtos.QuotaUsageProto |  | 0% |  | 0% | 94 | 94 | 162 | 162 | 43 | 43 | 1 | 1 |
| DataTransferProtos.OpReadBlockProto |  | 0% |  | 0% | 95 | 95 | 158 | 158 | 44 | 44 | 1 | 1 |
| ClientNamenodeProtocolProtos.AbandonBlockRequestProto |  | 0% |  | 0% | 91 | 91 | 168 | 168 | 43 | 43 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeRegistrationProto |  | 0% |  | 0% | 96 | 96 | 162 | 162 | 44 | 44 | 1 | 1 |
| DatanodeProtocolProtos.BlockReportRequestProto |  | 0% |  | 0% | 93 | 93 | 159 | 159 | 46 | 46 | 1 | 1 |
| ClientDatanodeProtocolProtos.QueryPlanStatusResponseProto |  | 0% |  | 0% | 88 | 88 | 169 | 169 | 43 | 43 | 1 | 1 |
| NamenodeProtocolProtos.GetBlocksRequestProto |  | 0% |  | 0% | 92 | 92 | 156 | 156 | 43 | 43 | 1 | 1 |
| ClientNamenodeProtocolProtos.CompleteRequestProto |  | 0% |  | 0% | 91 | 91 | 166 | 166 | 43 | 43 | 1 | 1 |
| DataTransferProtos.OpBlockChecksumResponseProto |  | 0% |  | 0% | 92 | 92 | 154 | 154 | 43 | 43 | 1 | 1 |
| AclProtos.AclEntryProto.Builder |  | 0% |  | 0% | 81 | 81 | 188 | 188 | 40 | 40 | 1 | 1 |
| ClientNamenodeProtocolProtos.CachePoolStatsProto |  | 0% |  | 0% | 90 | 90 | 0 | 0 | 42 | 42 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveStatsProto |  | 0% |  | 0% | 90 | 90 | 0 | 0 | 42 | 42 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListOpenFilesRequestProto.Builder |  | 0% |  | 0% | 75 | 75 | 0 | 0 | 41 | 41 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportListingEntryProto |  | 0% |  | 0% | 88 | 88 | 156 | 156 | 42 | 42 | 1 | 1 |
| DataTransferProtos.OpTransferBlockProto |  | 0% |  | 0% | 80 | 80 | 145 | 145 | 47 | 47 | 1 | 1 |
| ClientNamenodeProtocolProtos.Rename2RequestProto |  | 0% |  | 0% | 87 | 87 | 166 | 166 | 42 | 42 | 1 | 1 |
| DataTransferProtos.PacketHeaderProto |  | 0% |  | 0% | 89 | 89 | 158 | 158 | 42 | 42 | 1 | 1 |
| HdfsProtos.CipherOptionProto |  | 0% |  | 0% | 87 | 87 | 150 | 150 | 42 | 42 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportRequestProto.Builder |  | 0% |  | 0% | 78 | 78 | 188 | 188 | 40 | 40 | 1 | 1 |
| ClientNamenodeProtocolProtos.FsyncRequestProto |  | 0% |  | 0% | 86 | 86 | 0 | 0 | 42 | 42 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameSnapshotRequestProto.Builder |  | 0% |  | 0% | 78 | 78 | 0 | 0 | 40 | 40 | 1 | 1 |
| HdfsProtos.ZoneEncryptionInfoProto |  | 0% |  | 0% | 90 | 90 | 156 | 156 | 42 | 42 | 1 | 1 |
| ClientNamenodeProtocolProtos.MkdirsRequestProto |  | 0% |  | 0% | 92 | 92 | 158 | 158 | 43 | 43 | 1 | 1 |
| ClientNamenodeProtocolProtos.FsyncRequestProto.Builder |  | 0% |  | 0% | 78 | 78 | 0 | 0 | 42 | 42 | 1 | 1 |
| ClientNamenodeProtocolProtos.Rename2RequestProto.Builder |  | 0% |  | 0% | 79 | 79 | 184 | 184 | 42 | 42 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetOwnerRequestProto.Builder |  | 0% |  | 0% | 76 | 76 | 184 | 184 | 40 | 40 | 1 | 1 |
| DatanodeProtocolProtos.StorageBlockReportProto |  | 0% |  | 0% | 79 | 79 | 151 | 151 | 43 | 43 | 1 | 1 |
| HdfsProtos.ECSchemaProto |  | 0% |  | 0% | 85 | 85 | 155 | 155 | 44 | 44 | 1 | 1 |
| HdfsServerProtos.CheckpointSignatureProto |  | 0% |  | 0% | 88 | 88 | 158 | 158 | 42 | 42 | 1 | 1 |
| AclProtos.AclEntryProto |  | 0% |  | 0% | 86 | 86 | 153 | 153 | 41 | 41 | 1 | 1 |
| HdfsProtos.CipherOptionProto.Builder |  | 0% |  | 0% | 78 | 78 | 170 | 170 | 42 | 42 | 1 | 1 |
| HdfsServerProtos.NamenodeCommandProto.Builder |  | 0% |  | 0% | 84 | 84 | 179 | 179 | 40 | 40 | 1 | 1 |
| InterDatanodeProtocolProtos.InitReplicaRecoveryResponseProto.Builder |  | 0% |  | 0% | 83 | 83 | 177 | 177 | 40 | 40 | 1 | 1 |
| DatanodeProtocolProtos.BlockIdCommandProto.Builder |  | 0% |  | 0% | 73 | 73 | 181 | 181 | 40 | 40 | 1 | 1 |
| DataTransferProtos.PipelineAckProto |  | 0% |  | 0% | 75 | 75 | 147 | 147 | 42 | 42 | 1 | 1 |
| HdfsProtos.ProvidedStorageLocationProto |  | 0% |  | 0% | 84 | 84 | 156 | 156 | 41 | 41 | 1 | 1 |
| DatanodeProtocolProtos.SlowPeerReportProto.Builder |  | 0% |  | 0% | 77 | 77 | 174 | 174 | 44 | 44 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetQuotaRequestProto |  | 0% |  | 0% | 84 | 84 | 0 | 0 | 41 | 41 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameSnapshotRequestProto |  | 0% |  | 0% | 82 | 82 | 0 | 0 | 41 | 41 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportRequestProto |  | 0% |  | 0% | 82 | 82 | 163 | 163 | 41 | 41 | 1 | 1 |
| HdfsServerProtos.StorageInfoProto |  | 0% |  | 0% | 84 | 84 | 154 | 154 | 41 | 41 | 1 | 1 |
| HdfsProtos.ExtendedBlockProto |  | 0% |  | 0% | 83 | 83 | 153 | 153 | 41 | 41 | 1 | 1 |
| JournalProtocolProtos.StartLogSegmentRequestProto.Builder |  | 0% |  | 0% | 81 | 81 | 171 | 171 | 40 | 40 | 1 | 1 |
| DataTransferProtos.ClientOperationHeaderProto.Builder |  | 0% |  | 0% | 79 | 79 | 173 | 173 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetPermissionRequestProto.Builder |  | 0% |  | 0% | 79 | 79 | 173 | 173 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdateBlockForPipelineRequestProto.Builder |  | 0% |  | 0% | 79 | 79 | 0 | 0 | 38 | 38 | 1 | 1 |
| XAttrProtos.RemoveXAttrRequestProto.Builder |  | 0% |  | 0% | 79 | 79 | 172 | 172 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetOwnerRequestProto |  | 0% |  | 0% | 80 | 80 | 157 | 157 | 41 | 41 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetQuotaRequestProto.Builder |  | 0% |  | 0% | 75 | 75 | 0 | 0 | 40 | 40 | 1 | 1 |
| DatanodeProtocolProtos.SlowDiskReportProto |  | 0% |  | 0% | 80 | 80 | 147 | 147 | 41 | 41 | 1 | 1 |
| HdfsProtos.SnapshotStatusProto |  | 0% |  | 0% | 84 | 84 | 144 | 144 | 41 | 41 | 1 | 1 |
| DataTransferProtos.OpRequestShortCircuitAccessProto |  | 0% |  | 0% | 87 | 87 | 141 | 141 | 42 | 42 | 1 | 1 |
| HdfsProtos.SnapshottableDirectoryStatusProto |  | 0% |  | 0% | 84 | 84 | 143 | 143 | 41 | 41 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeInfoProto |  | 0% |  | 0% | 84 | 84 | 77 | 77 | 41 | 41 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmRequestProto.Builder |  | 0% |  | 0% | 77 | 77 | 169 | 169 | 38 | 38 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBlockLocalPathInfoResponseProto |  | 0% |  | 0% | 82 | 82 | 152 | 152 | 41 | 41 | 1 | 1 |
| DatanodeProtocolProtos.CacheReportRequestProto |  | 0% |  | 0% | 77 | 77 | 148 | 148 | 41 | 41 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportListingEntryProto.Builder |  | 0% |  | 0% | 75 | 75 | 161 | 161 | 42 | 42 | 1 | 1 |
| InterDatanodeProtocolProtos.UpdateReplicaUnderRecoveryRequestProto |  | 0% |  | 0% | 83 | 83 | 142 | 142 | 41 | 41 | 1 | 1 |
| HdfsProtos.ProvidedStorageLocationProto.Builder |  | 0% |  | 0% | 74 | 74 | 165 | 165 | 40 | 40 | 1 | 1 |
| DatanodeProtocolProtos.BlockIdCommandProto |  | 0% |  | 0% | 74 | 74 | 146 | 146 | 40 | 40 | 1 | 1 |
| InotifyProtos.RenameEventProto |  | 0% |  | 0% | 78 | 78 | 150 | 150 | 40 | 40 | 1 | 1 |
| HdfsProtos.DatanodeLocalInfoProto |  | 0% |  | 0% | 78 | 78 | 150 | 150 | 40 | 40 | 1 | 1 |
| ClientNamenodeProtocolProtos.TruncateRequestProto |  | 0% |  | 0% | 78 | 78 | 150 | 150 | 40 | 40 | 1 | 1 |
| DatanodeProtocolProtos.BlockReceivedAndDeletedRequestProto |  | 0% |  | 0% | 79 | 79 | 140 | 140 | 43 | 43 | 1 | 1 |
| InotifyProtos.RenameEventProto.Builder |  | 0% |  | 0% | 71 | 71 | 165 | 165 | 38 | 38 | 1 | 1 |
| HdfsProtos.DatanodeLocalInfoProto.Builder |  | 0% |  | 0% | 71 | 71 | 165 | 165 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.TruncateRequestProto.Builder |  | 0% |  | 0% | 71 | 71 | 165 | 165 | 38 | 38 | 1 | 1 |
| HdfsServerProtos.StorageInfoProto.Builder |  | 0% |  | 0% | 73 | 73 | 163 | 163 | 40 | 40 | 1 | 1 |
| DatanodeProtocolProtos.StorageReceivedDeletedBlocksProto |  | 0% |  | 0% | 79 | 79 | 138 | 138 | 43 | 43 | 1 | 1 |
| ClientNamenodeProtocolProtos.AppendRequestProto |  | 0% |  | 0% | 77 | 77 | 146 | 146 | 40 | 40 | 1 | 1 |
| ClientNamenodeProtocolProtos.CachePoolStatsProto.Builder |  | 0% |  | 0% | 74 | 74 | 0 | 0 | 41 | 41 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveStatsProto.Builder |  | 0% |  | 0% | 74 | 74 | 0 | 0 | 41 | 41 | 1 | 1 |
| DatanodeProtocolProtos.BlockReportContextProto |  | 0% |  | 0% | 79 | 79 | 138 | 138 | 40 | 40 | 1 | 1 |
| ClientNamenodeProtocolProtos.AppendRequestProto.Builder |  | 0% |  | 0% | 70 | 70 | 163 | 163 | 38 | 38 | 1 | 1 |
| HdfsProtos.ExtendedBlockProto.Builder |  | 0% |  | 0% | 72 | 72 | 161 | 161 | 40 | 40 | 1 | 1 |
| DataTransferProtos.PacketHeaderProto.Builder |  | 0% |  | 0% | 73 | 73 | 157 | 157 | 41 | 41 | 1 | 1 |
| DatanodeProtocolProtos.ReceivedDeletedBlockInfoProto |  | 0% |  | 0% | 78 | 78 | 136 | 136 | 40 | 40 | 1 | 1 |
| DatanodeProtocolProtos.SlowDiskReportProto.Builder |  | 0% |  | 0% | 69 | 69 | 155 | 155 | 40 | 40 | 1 | 1 |
| NamenodeProtocolProtos.ErrorReportRequestProto |  | 0% |  | 0% | 78 | 78 | 138 | 138 | 40 | 40 | 1 | 1 |
| DatanodeProtocolProtos.ErrorReportRequestProto |  | 0% |  | 0% | 78 | 78 | 138 | 138 | 40 | 40 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListOpenFilesRequestProto |  | 0% |  | 0% | 70 | 70 | 0 | 0 | 40 | 40 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBatchedListingRequestProto.Builder |  | 0% |  | 0% | 67 | 67 | 155 | 155 | 40 | 40 | 1 | 1 |
| HdfsProtos.DatanodeStorageProto.Builder |  | 0% |  | 0% | 68 | 68 | 156 | 156 | 36 | 36 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmResponseProto |  | 0% |  | 0% | 78 | 78 | 134 | 134 | 40 | 40 | 1 | 1 |
| NamenodeProtocolProtos |  | 0% | | n/a | 4 | 4 | 72 | 72 | 4 | 4 | 1 | 1 |
| JournalProtocolProtos.FenceRequestProto |  | 0% |  | 0% | 77 | 77 | 136 | 136 | 40 | 40 | 1 | 1 |
| HdfsProtos.AddErasureCodingPolicyResponseProto |  | 0% |  | 0% | 77 | 77 | 136 | 136 | 40 | 40 | 1 | 1 |
| HdfsProtos.PerFileEncryptionInfoProto |  | 0% |  | 0% | 74 | 74 | 137 | 137 | 39 | 39 | 1 | 1 |
| XAttrProtos.XAttrProto |  | 0% |  | 0% | 74 | 74 | 134 | 134 | 39 | 39 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetListingRequestProto |  | 0% |  | 0% | 74 | 74 | 137 | 137 | 39 | 39 | 1 | 1 |
| XAttrProtos.SetXAttrRequestProto |  | 0% |  | 0% | 77 | 77 | 133 | 133 | 40 | 40 | 1 | 1 |
| HdfsProtos.DatanodeStorageProto |  | 0% |  | 0% | 74 | 74 | 131 | 131 | 39 | 39 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetTimesRequestProto |  | 0% |  | 0% | 74 | 74 | 0 | 0 | 39 | 39 | 1 | 1 |
| InotifyProtos.TruncateEventProto |  | 0% |  | 0% | 74 | 74 | 137 | 137 | 39 | 39 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBlockLocationsRequestProto |  | 0% |  | 0% | 74 | 74 | 137 | 137 | 39 | 39 | 1 | 1 |
| InotifyProtos.CloseEventProto |  | 0% |  | 0% | 74 | 74 | 137 | 137 | 39 | 39 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListOpenFilesResponseProto |  | 0% |  | 0% | 68 | 68 | 0 | 0 | 42 | 42 | 1 | 1 |
| DatanodeProtocolProtos.VolumeFailureSummaryProto.Builder |  | 0% |  | 0% | 66 | 66 | 153 | 153 | 40 | 40 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportEntryProto |  | 0% |  | 0% | 73 | 73 | 134 | 134 | 39 | 39 | 1 | 1 |
| ClientNamenodeProtocolProtos.ConcatRequestProto.Builder |  | 0% |  | 0% | 64 | 64 | 155 | 155 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenewLeaseRequestProto.Builder |  | 0% |  | 0% | 64 | 64 | 155 | 155 | 38 | 38 | 1 | 1 |
| HdfsProtos.CorruptFileBlocksProto.Builder |  | 0% |  | 0% | 64 | 64 | 155 | 155 | 38 | 38 | 1 | 1 |
| XAttrProtos.XAttrProto.Builder |  | 0% |  | 0% | 67 | 67 | 151 | 151 | 36 | 36 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmSlotProto.Builder |  | 0% |  | 0% | 72 | 72 | 150 | 150 | 36 | 36 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCacheDirectivesRequestProto.Builder |  | 0% |  | 0% | 72 | 72 | 0 | 0 | 36 | 36 | 1 | 1 |
| HdfsServerProtos.CheckpointCommandProto.Builder |  | 0% |  | 0% | 72 | 72 | 150 | 150 | 36 | 36 | 1 | 1 |
| DataTransferProtos.ReadOpChecksumInfoProto.Builder |  | 0% |  | 0% | 72 | 72 | 150 | 150 | 36 | 36 | 1 | 1 |
| HdfsProtos.BatchedDirectoryListingProto |  | 0% |  | 0% | 75 | 75 | 124 | 124 | 42 | 42 | 1 | 1 |
| ClientDatanodeProtocolProtos |  | 0% | | n/a | 4 | 4 | 70 | 70 | 4 | 4 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCacheDirectiveRequestProto.Builder |  | 0% |  | 0% | 71 | 71 | 0 | 0 | 36 | 36 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCacheDirectiveRequestProto.Builder |  | 0% |  | 0% | 71 | 71 | 0 | 0 | 36 | 36 | 1 | 1 |
| DataTransferProtos.BaseHeaderProto |  | 0% |  | 0% | 80 | 80 | 122 | 122 | 41 | 41 | 1 | 1 |
| HdfsProtos.PerFileEncryptionInfoProto.Builder |  | 0% |  | 0% | 66 | 66 | 146 | 146 | 36 | 36 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBatchedListingResponseProto |  | 0% |  | 0% | 71 | 71 | 125 | 125 | 41 | 41 | 1 | 1 |
| JournalProtocolProtos.JournalInfoProto |  | 0% |  | 0% | 72 | 72 | 129 | 129 | 39 | 39 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportEntryProto.Builder |  | 0% |  | 0% | 65 | 65 | 144 | 144 | 36 | 36 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBatchedListingRequestProto |  | 0% |  | 0% | 68 | 68 | 125 | 125 | 40 | 40 | 1 | 1 |
| HdfsServerProtos.NamenodeCommandProto |  | 0% |  | 0% | 75 | 75 | 123 | 123 | 39 | 39 | 1 | 1 |
| HdfsProtos.HdfsPathHandleProto |  | 0% |  | 0% | 71 | 71 | 128 | 128 | 39 | 39 | 1 | 1 |
| JournalProtocolProtos.StartLogSegmentRequestProto |  | 0% |  | 0% | 74 | 74 | 126 | 126 | 39 | 39 | 1 | 1 |
| DatanodeProtocolProtos.VolumeFailureSummaryProto |  | 0% |  | 0% | 68 | 68 | 125 | 125 | 40 | 40 | 1 | 1 |
| ReconfigurationProtocolProtos.GetReconfigurationStatusResponseProto |  | 0% |  | 0% | 70 | 70 | 122 | 122 | 41 | 41 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetListingRequestProto.Builder |  | 0% |  | 0% | 65 | 65 | 144 | 144 | 36 | 36 | 1 | 1 |
| InterDatanodeProtocolProtos.InitReplicaRecoveryResponseProto |  | 0% |  | 0% | 74 | 74 | 121 | 121 | 39 | 39 | 1 | 1 |
| HdfsProtos.BatchedListingKeyProto |  | 0% |  | 0% | 70 | 70 | 123 | 123 | 38 | 38 | 1 | 1 |
| HdfsProtos.StorageTypeQuotaInfoProto |  | 0% |  | 0% | 70 | 70 | 121 | 121 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteSnapshotRequestProto |  | 0% |  | 0% | 68 | 68 | 0 | 0 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.RecoverLeaseRequestProto |  | 0% |  | 0% | 68 | 68 | 131 | 131 | 38 | 38 | 1 | 1 |
| ErasureCodingProtos.CodecProto |  | 0% |  | 0% | 68 | 68 | 131 | 131 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameRequestProto |  | 0% |  | 0% | 68 | 68 | 131 | 131 | 38 | 38 | 1 | 1 |
| HdfsProtos.ECSchemaOptionEntryProto |  | 0% |  | 0% | 68 | 68 | 131 | 131 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetStoragePolicyRequestProto |  | 0% |  | 0% | 68 | 68 | 131 | 131 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteSnapshotRequestProto.Builder |  | 0% |  | 0% | 62 | 62 | 0 | 0 | 34 | 34 | 1 | 1 |
| ErasureCodingProtos.CodecProto.Builder |  | 0% |  | 0% | 62 | 62 | 144 | 144 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.RecoverLeaseRequestProto.Builder |  | 0% |  | 0% | 62 | 62 | 144 | 144 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameRequestProto.Builder |  | 0% |  | 0% | 62 | 62 | 144 | 144 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetStoragePolicyRequestProto.Builder |  | 0% |  | 0% | 62 | 62 | 144 | 144 | 34 | 34 | 1 | 1 |
| InotifyProtos.CloseEventProto.Builder |  | 0% |  | 0% | 64 | 64 | 142 | 142 | 36 | 36 | 1 | 1 |
| InotifyProtos.TruncateEventProto.Builder |  | 0% |  | 0% | 64 | 64 | 142 | 142 | 36 | 36 | 1 | 1 |
| HdfsProtos.ECSchemaOptionEntryProto.Builder |  | 0% |  | 0% | 62 | 62 | 144 | 144 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBlockLocationsRequestProto.Builder |  | 0% |  | 0% | 64 | 64 | 142 | 142 | 36 | 36 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetTimesRequestProto.Builder |  | 0% |  | 0% | 64 | 64 | 0 | 0 | 36 | 36 | 1 | 1 |
| EncryptionZonesProtos.CreateEncryptionZoneRequestProto.Builder |  | 0% |  | 0% | 61 | 61 | 142 | 142 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCorruptFileBlocksRequestProto.Builder |  | 0% |  | 0% | 61 | 61 | 0 | 0 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSnapshotRequestProto.Builder |  | 0% |  | 0% | 61 | 61 | 0 | 0 | 34 | 34 | 1 | 1 |
| ErasureCodingProtos.SetErasureCodingPolicyRequestProto.Builder |  | 0% |  | 0% | 61 | 61 | 142 | 142 | 34 | 34 | 1 | 1 |
| HdfsProtos.RemoteExceptionProto.Builder |  | 0% |  | 0% | 61 | 61 | 142 | 142 | 34 | 34 | 1 | 1 |
| HdfsServerProtos.BlockKeyProto |  | 0% |  | 0% | 69 | 69 | 120 | 120 | 38 | 38 | 1 | 1 |
| HdfsProtos.BlockProto |  | 0% |  | 0% | 69 | 69 | 121 | 121 | 38 | 38 | 1 | 1 |
| EncryptionZonesProtos.CreateEncryptionZoneRequestProto |  | 0% |  | 0% | 67 | 67 | 128 | 128 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCorruptFileBlocksRequestProto |  | 0% |  | 0% | 67 | 67 | 0 | 0 | 38 | 38 | 1 | 1 |
| HdfsServerProtos.RemoteEditLogProto |  | 0% |  | 0% | 69 | 69 | 121 | 121 | 38 | 38 | 1 | 1 |
| ErasureCodingProtos.SetErasureCodingPolicyRequestProto |  | 0% |  | 0% | 67 | 67 | 128 | 128 | 38 | 38 | 1 | 1 |
| HdfsProtos.RemoteExceptionProto |  | 0% |  | 0% | 67 | 67 | 128 | 128 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSnapshotRequestProto |  | 0% |  | 0% | 67 | 67 | 0 | 0 | 38 | 38 | 1 | 1 |
| DatanodeProtocolProtos.BlockReportContextProto.Builder |  | 0% |  | 0% | 64 | 64 | 136 | 136 | 37 | 37 | 1 | 1 |
| JournalProtocolProtos.JournalInfoProto.Builder |  | 0% |  | 0% | 62 | 62 | 138 | 138 | 36 | 36 | 1 | 1 |
| HdfsProtos.HdfsPathHandleProto.Builder |  | 0% |  | 0% | 61 | 61 | 136 | 136 | 36 | 36 | 1 | 1 |
| AclProtos.SetAclRequestProto |  | 0% |  | 0% | 65 | 65 | 119 | 119 | 40 | 40 | 1 | 1 |
| XAttrProtos.GetXAttrsRequestProto |  | 0% |  | 0% | 65 | 65 | 119 | 119 | 40 | 40 | 1 | 1 |
| EditLogProtos.AclEditLogProto |  | 0% |  | 0% | 65 | 65 | 119 | 119 | 40 | 40 | 1 | 1 |
| DataTransferProtos.DataTransferTraceInfoProto |  | 0% |  | 0% | 67 | 67 | 115 | 115 | 38 | 38 | 1 | 1 |
| AclProtos.RemoveAclEntriesRequestProto |  | 0% |  | 0% | 65 | 65 | 119 | 119 | 40 | 40 | 1 | 1 |
| AclProtos.ModifyAclEntriesRequestProto |  | 0% |  | 0% | 65 | 65 | 119 | 119 | 40 | 40 | 1 | 1 |
| JournalProtocolProtos.FenceResponseProto |  | 0% |  | 0% | 67 | 67 | 115 | 115 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetPermissionRequestProto |  | 0% |  | 0% | 68 | 68 | 120 | 120 | 38 | 38 | 1 | 1 |
| DataTransferProtos.ClientOperationHeaderProto |  | 0% |  | 0% | 68 | 68 | 120 | 120 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdateBlockForPipelineRequestProto |  | 0% |  | 0% | 68 | 68 | 0 | 0 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenewLeaseRequestProto |  | 0% |  | 0% | 62 | 62 | 119 | 119 | 39 | 39 | 1 | 1 |
| ClientNamenodeProtocolProtos.ConcatRequestProto |  | 0% |  | 0% | 62 | 62 | 119 | 119 | 39 | 39 | 1 | 1 |
| HdfsProtos.CorruptFileBlocksProto |  | 0% |  | 0% | 62 | 62 | 119 | 119 | 39 | 39 | 1 | 1 |
| EditLogProtos.XAttrEditLogProto |  | 0% |  | 0% | 64 | 64 | 116 | 116 | 40 | 40 | 1 | 1 |
| HdfsServerProtos |  | 0% | | n/a | 4 | 4 | 44 | 44 | 4 | 4 | 1 | 1 |
| XAttrProtos.RemoveXAttrRequestProto |  | 0% |  | 0% | 68 | 68 | 118 | 118 | 38 | 38 | 1 | 1 |
| EncryptionZonesProtos.ReencryptEncryptionZoneRequestProto |  | 0% |  | 0% | 65 | 65 | 118 | 118 | 37 | 37 | 1 | 1 |
| ClientNamenodeProtocolProtos.CheckAccessRequestProto |  | 0% |  | 0% | 65 | 65 | 0 | 0 | 37 | 37 | 1 | 1 |
| DataTransferProtos.HandshakeSecretProto |  | 0% |  | 0% | 64 | 64 | 118 | 118 | 37 | 37 | 1 | 1 |
| InotifyProtos.UnlinkEventProto |  | 0% |  | 0% | 64 | 64 | 118 | 118 | 37 | 37 | 1 | 1 |
| DataTransferProtos.ReleaseShortCircuitAccessResponseProto |  | 0% |  | 0% | 64 | 64 | 115 | 115 | 37 | 37 | 1 | 1 |
| HdfsProtos.ECTopologyVerifierResultProto |  | 0% |  | 0% | 64 | 64 | 118 | 118 | 37 | 37 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteRequestProto |  | 0% |  | 0% | 64 | 64 | 118 | 118 | 37 | 37 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmRequestProto |  | 0% |  | 0% | 66 | 66 | 114 | 114 | 38 | 38 | 1 | 1 |
| ClientDatanodeProtocolProtos.DeleteBlockPoolRequestProto |  | 0% |  | 0% | 64 | 64 | 118 | 118 | 37 | 37 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetReplicationRequestProto |  | 0% |  | 0% | 64 | 64 | 117 | 117 | 37 | 37 | 1 | 1 |
| DataTransferProtos.OpCopyBlockProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| DatanodeProtocolProtos.RegisterDatanodeResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| HdfsServerProtos.VersionResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddBlockResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| DatanodeProtocolProtos.KeyUpdateCommandProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetDatanodeInfoResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.StartCheckpointResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCorruptFileBlocksResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetQuotaUsageResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.RegisterResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdateBlockForPipelineResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetAdditionalDatanodeResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetContentSummaryResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 32 | 32 | 1 | 1 |
| ErasureCodingProtos.GetECTopologyResultForPoliciesResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.RegisterRequestProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| AclProtos.GetAclStatusResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportListingResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.RollEditLogResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| InterDatanodeProtocolProtos.InitReplicaRecoveryRequestProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| AliasMapProtocolProtos.ReadRequestProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| DatanodeProtocolProtos.RegisterDatanodeRequestProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.GetEditLogManifestResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.GetBlocksResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEditsFromTxidResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetReplicaVisibleLengthRequestProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetServerDefaultsResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.StartCheckpointRequestProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePolicyResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| AliasMapProtocolProtos.WriteRequestProto.Builder |  | 0% |  | 0% | 63 | 63 | 129 | 129 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.DatanodeStorageReportProto |  | 0% |  | 0% | 65 | 65 | 108 | 108 | 40 | 40 | 1 | 1 |
| NamenodeProtocolProtos.GetBlockKeysResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotListingResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| AliasMapProtocolProtos.ReadResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| EncryptionZonesProtos.GetEZForPathResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| DatanodeProtocolProtos.CacheReportResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPolicyResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDataEncryptionKeyResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 32 | 32 | 1 | 1 |
| DatanodeProtocolProtos.BlockReportResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| AliasMapProtocolProtos.ListRequestProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileLinkInfoResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBlockLocationsResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshottableDirListingResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetListingResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 128 | 128 | 32 | 32 | 1 | 1 |
| EncryptionZonesProtos.ReencryptEncryptionZoneRequestProto.Builder |  | 0% |  | 0% | 58 | 58 | 130 | 130 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileInfoResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.CheckAccessRequestProto.Builder |  | 0% |  | 0% | 58 | 58 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLocatedFileInfoResponseProto.Builder |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.EndCheckpointRequestProto |  | 0% |  | 0% | 68 | 68 | 109 | 109 | 38 | 38 | 1 | 1 |
| AliasMapProtocolProtos.ListResponseProto |  | 0% |  | 0% | 65 | 65 | 106 | 106 | 40 | 40 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCachePoolRequestProto.Builder |  | 0% |  | 0% | 62 | 62 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.TriggerBlockReportRequestProto |  | 0% |  | 0% | 63 | 63 | 115 | 115 | 37 | 37 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCachePoolRequestProto.Builder |  | 0% |  | 0% | 62 | 62 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveEntryProto |  | 0% |  | 0% | 68 | 68 | 0 | 0 | 38 | 38 | 1 | 1 |
| HdfsProtos.RollingUpgradeStatusProto |  | 0% |  | 0% | 63 | 63 | 115 | 115 | 37 | 37 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBlockLocalPathInfoRequestProto |  | 0% |  | 0% | 68 | 68 | 109 | 109 | 38 | 38 | 1 | 1 |
| InotifyProtos.AppendEventProto |  | 0% |  | 0% | 63 | 63 | 115 | 115 | 37 | 37 | 1 | 1 |
| HdfsProtos.StorageTypeQuotaInfoProto.Builder |  | 0% |  | 0% | 59 | 59 | 126 | 126 | 34 | 34 | 1 | 1 |
| DataTransferProtos.ReleaseShortCircuitAccessResponseProto.Builder |  | 0% |  | 0% | 57 | 57 | 128 | 128 | 32 | 32 | 1 | 1 |
| HdfsProtos.BatchedListingKeyProto.Builder |  | 0% |  | 0% | 59 | 59 | 123 | 123 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLocatedFileInfoRequestProto |  | 0% |  | 0% | 62 | 62 | 0 | 0 | 37 | 37 | 1 | 1 |
| ClientNamenodeProtocolProtos.CachePoolEntryProto |  | 0% |  | 0% | 67 | 67 | 0 | 0 | 38 | 38 | 1 | 1 |
| ClientNamenodeProtocolProtos.AppendResponseProto |  | 0% |  | 0% | 68 | 68 | 105 | 105 | 38 | 38 | 1 | 1 |
| AliasMapProtocolProtos.KeyValueProto |  | 0% |  | 0% | 68 | 68 | 105 | 105 | 38 | 38 | 1 | 1 |
| InotifyProtos.EventBatchProto |  | 0% |  | 0% | 61 | 61 | 106 | 106 | 39 | 39 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCachePoolsResponseProto |  | 0% |  | 0% | 61 | 61 | 0 | 0 | 39 | 39 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCacheDirectivesResponseProto |  | 0% |  | 0% | 61 | 61 | 0 | 0 | 39 | 39 | 1 | 1 |
| EncryptionZonesProtos.ListReencryptionStatusResponseProto |  | 0% |  | 0% | 61 | 61 | 106 | 106 | 39 | 39 | 1 | 1 |
| EncryptionZonesProtos.ListEncryptionZonesResponseProto |  | 0% |  | 0% | 61 | 61 | 106 | 106 | 39 | 39 | 1 | 1 |
| HdfsProtos.DirectoryListingProto |  | 0% |  | 0% | 61 | 61 | 105 | 105 | 39 | 39 | 1 | 1 |
| DataTransferProtos.HandshakeSecretProto.Builder |  | 0% |  | 0% | 56 | 56 | 123 | 123 | 32 | 32 | 1 | 1 |
| HdfsProtos.RouterFederatedStateProto.Builder |  | 0% |  | 0% | 58 | 58 | 115 | 115 | 36 | 36 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCacheDirectivesRequestProto |  | 0% |  | 0% | 64 | 64 | 0 | 0 | 37 | 37 | 1 | 1 |
| DataTransferProtos.ReadOpChecksumInfoProto |  | 0% |  | 0% | 64 | 64 | 107 | 107 | 37 | 37 | 1 | 1 |
| HdfsServerProtos.CheckpointCommandProto |  | 0% |  | 0% | 64 | 64 | 107 | 107 | 37 | 37 | 1 | 1 |
| DataTransferProtos.ReleaseShortCircuitAccessRequestProto |  | 0% |  | 0% | 66 | 66 | 103 | 103 | 38 | 38 | 1 | 1 |
| DataTransferProtos.OpBlockChecksumProto |  | 0% |  | 0% | 66 | 66 | 103 | 103 | 38 | 38 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmSlotProto |  | 0% |  | 0% | 64 | 64 | 106 | 106 | 37 | 37 | 1 | 1 |
| HdfsServerProtos.RemoteEditLogManifestProto |  | 0% |  | 0% | 60 | 60 | 103 | 103 | 39 | 39 | 1 | 1 |
| HdfsServerProtos.BlockKeyProto.Builder |  | 0% |  | 0% | 57 | 57 | 119 | 119 | 34 | 34 | 1 | 1 |
| InotifyProtos.EventProto |  | 0% |  | 0% | 61 | 61 | 105 | 105 | 36 | 36 | 1 | 1 |
| ErasureCodingProtos |  | 0% | | n/a | 4 | 4 | 54 | 54 | 4 | 4 | 1 | 1 |
| HdfsServerProtos.NNHAStatusHeartbeatProto |  | 0% |  | 0% | 61 | 61 | 105 | 105 | 36 | 36 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCacheDirectiveRequestProto |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 37 | 37 | 1 | 1 |
| HdfsProtos.StorageTypesProto.Builder |  | 0% |  | 0% | 51 | 51 | 121 | 121 | 31 | 31 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCacheDirectiveRequestProto |  | 0% |  | 0% | 63 | 63 | 0 | 0 | 37 | 37 | 1 | 1 |
| DataTransferProtos.ChecksumProto |  | 0% |  | 0% | 61 | 61 | 104 | 104 | 36 | 36 | 1 | 1 |
| HdfsProtos.ECTopologyVerifierResultProto.Builder |  | 0% |  | 0% | 55 | 55 | 121 | 121 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.DeleteBlockPoolRequestProto.Builder |  | 0% |  | 0% | 55 | 55 | 121 | 121 | 32 | 32 | 1 | 1 |
| InotifyProtos.UnlinkEventProto.Builder |  | 0% |  | 0% | 55 | 55 | 121 | 121 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetReplicationRequestProto.Builder |  | 0% |  | 0% | 55 | 55 | 121 | 121 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteRequestProto.Builder |  | 0% |  | 0% | 55 | 55 | 121 | 121 | 32 | 32 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportCursorProto |  | 0% |  | 0% | 60 | 60 | 105 | 105 | 36 | 36 | 1 | 1 |
| DataTransferProtos.DataTransferTraceInfoProto.Builder |  | 0% |  | 0% | 55 | 55 | 115 | 115 | 34 | 34 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmIdProto |  | 0% |  | 0% | 60 | 60 | 105 | 105 | 36 | 36 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveInfoExpirationProto |  | 0% |  | 0% | 60 | 60 | 0 | 0 | 36 | 36 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetSafeModeRequestProto |  | 0% |  | 0% | 60 | 60 | 102 | 102 | 36 | 36 | 1 | 1 |
| ClientDatanodeProtocolProtos.TriggerBlockReportRequestProto.Builder |  | 0% |  | 0% | 54 | 54 | 119 | 119 | 32 | 32 | 1 | 1 |
| InotifyProtos.AppendEventProto.Builder |  | 0% |  | 0% | 54 | 54 | 119 | 119 | 32 | 32 | 1 | 1 |
| HdfsProtos.RollingUpgradeStatusProto.Builder |  | 0% |  | 0% | 54 | 54 | 119 | 119 | 32 | 32 | 1 | 1 |
| HdfsProtos.BlockProto.Builder |  | 0% |  | 0% | 55 | 55 | 115 | 115 | 33 | 33 | 1 | 1 |
| HdfsServerProtos.RemoteEditLogProto.Builder |  | 0% |  | 0% | 55 | 55 | 115 | 115 | 33 | 33 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLocatedFileInfoRequestProto.Builder |  | 0% |  | 0% | 53 | 53 | 0 | 0 | 32 | 32 | 1 | 1 |
| HdfsProtos.RouterFederatedStateProto |  | 0% |  | 0% | 58 | 58 | 104 | 104 | 40 | 40 | 1 | 1 |
| HdfsProtos.BlockChecksumOptionsProto |  | 0% |  | 0% | 59 | 59 | 99 | 99 | 36 | 36 | 1 | 1 |
| JournalProtocolProtos.FenceResponseProto.Builder |  | 0% |  | 0% | 53 | 53 | 111 | 111 | 33 | 33 | 1 | 1 |
| ClientNamenodeProtocolProtos.SaveNamespaceRequestProto |  | 0% |  | 0% | 58 | 58 | 99 | 99 | 36 | 36 | 1 | 1 |
| DataTransferProtos.CachingStrategyProto |  | 0% |  | 0% | 58 | 58 | 99 | 99 | 36 | 36 | 1 | 1 |
| InotifyProtos.EventProto.Builder |  | 0% |  | 0% | 52 | 52 | 109 | 109 | 30 | 30 | 1 | 1 |
| ReconfigurationProtocolProtos.ListReconfigurablePropertiesResponseProto.Builder |  | 0% |  | 0% | 48 | 48 | 109 | 109 | 32 | 32 | 1 | 1 |
| HdfsProtos.StorageUuidsProto.Builder |  | 0% |  | 0% | 48 | 48 | 109 | 109 | 32 | 32 | 1 | 1 |
| ErasureCodingProtos.GetECTopologyResultForPoliciesRequestProto.Builder |  | 0% |  | 0% | 48 | 48 | 109 | 109 | 32 | 32 | 1 | 1 |
| HdfsServerProtos.NNHAStatusHeartbeatProto.Builder |  | 0% |  | 0% | 51 | 51 | 107 | 107 | 30 | 30 | 1 | 1 |
| DataTransferProtos.ChecksumProto.Builder |  | 0% |  | 0% | 51 | 51 | 107 | 107 | 30 | 30 | 1 | 1 |
| ErasureCodingProtos.RemoveErasureCodingPolicyRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.AllowSnapshotRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotListingRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| DataTransferProtos.OpCustomProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| AliasMapProtocolProtos.BlockPoolResponseProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLinkTargetRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| XAttrProtos.ListXAttrsRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.RestoreFailedStorageRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPolicyRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| AclProtos.RemoveAclRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ErasureCodingProtos.EnableErasureCodingPolicyRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCachePoolsRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetPreferredBlockSizeRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetContentSummaryRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientDatanodeProtocolProtos.CancelPlanRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.IsFileClosedRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSnapshotResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.MetaSaveRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetQuotaUsageRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientDatanodeProtocolProtos.DiskBalancerSettingRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ErasureCodingProtos.UnsetErasureCodingPolicyRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCachePoolRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| AclProtos.RemoveDefaultAclRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| NamenodeProtocolProtos.GetFilePathResponseProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.DisallowSnapshotRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| AclProtos.GetAclStatusRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileLinkInfoRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePolicyRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| EncryptionZonesProtos.GetEZForPathRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.UnsetStoragePolicyRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.SatisfyStoragePolicyRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientDatanodeProtocolProtos.DiskBalancerSettingResponseProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| DatanodeProtocolProtos.FinalizeCommandProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileInfoRequestProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ErasureCodingProtos.DisableErasureCodingPolicyRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentNameNodeFileTxIdRequestProto |  | 0% |  | 0% | 54 | 54 | 99 | 99 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetSafeModeRequestProto.Builder |  | 0% |  | 0% | 50 | 50 | 105 | 105 | 30 | 30 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEnclosingRootResponseProto |  | 0% |  | 0% | 53 | 53 | 96 | 96 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEnclosingRootRequestProto |  | 0% |  | 0% | 53 | 53 | 96 | 96 | 35 | 35 | 1 | 1 |
| InterDatanodeProtocolProtos.UpdateReplicaUnderRecoveryResponseProto |  | 0% |  | 0% | 53 | 53 | 96 | 96 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLinkTargetResponseProto |  | 0% |  | 0% | 53 | 53 | 0 | 0 | 35 | 35 | 1 | 1 |
| HdfsProtos.BlockChecksumOptionsProto.Builder |  | 0% |  | 0% | 49 | 49 | 103 | 103 | 30 | 30 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportCursorProto.Builder |  | 0% |  | 0% | 49 | 49 | 101 | 101 | 30 | 30 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSlowDatanodeReportResponseProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| ErasureCodingProtos.AddErasureCodingPoliciesRequestProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| ErasureCodingProtos.AddErasureCodingPoliciesResponseProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| DatanodeProtocolProtos.BlockECReconstructionCommandProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeReportResponseProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPoliciesResponseProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| XAttrProtos.GetXAttrsResponseProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| HdfsProtos.SnapshottableDirectoryListingProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingCodecsResponseProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| ClientNamenodeProtocolProtos.ReportBadBlocksRequestProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| HdfsProtos.SnapshotListingProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| DatanodeProtocolProtos.BlockRecoveryCommandProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| InotifyProtos |  | 0% | | n/a | 4 | 4 | 32 | 32 | 4 | 4 | 1 | 1 |
| DatanodeProtocolProtos.ReportBadBlocksRequestProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| HdfsServerProtos.BlocksWithLocationsProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| XAttrProtos.ListXAttrsResponseProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetVolumeReportResponseProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| HdfsProtos.DatanodeInfosProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePoliciesResponseProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| HdfsProtos.StorageTypeQuotaInfosProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeStorageReportResponseProto |  | 0% |  | 0% | 51 | 51 | 87 | 87 | 37 | 37 | 1 | 1 |
| HdfsProtos.StorageTypesProto |  | 0% |  | 0% | 47 | 47 | 84 | 84 | 35 | 35 | 1 | 1 |
| NamenodeProtocolProtos.RollEditLogResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| DataTransferProtos.OpCopyBlockProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| AliasMapProtocolProtos.WriteRequestProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| DatanodeProtocolProtos.RegisterDatanodeResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEditsFromTxidResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetServerDefaultsResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| DatanodeProtocolProtos.KeyUpdateCommandProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| NamenodeProtocolProtos.GetBlocksResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetContentSummaryResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddBlockResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| NamenodeProtocolProtos.RegisterResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| AclProtos.GetAclStatusResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePolicyResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetAdditionalDatanodeResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| HdfsServerProtos.VersionResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| AliasMapProtocolProtos.ReadRequestProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCorruptFileBlocksResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| InterDatanodeProtocolProtos.InitReplicaRecoveryRequestProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| NamenodeProtocolProtos.RegisterRequestProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| NamenodeProtocolProtos.GetEditLogManifestResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetQuotaUsageResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| DatanodeProtocolProtos.RegisterDatanodeRequestProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ErasureCodingProtos.GetECTopologyResultForPoliciesResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportListingResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetDatanodeInfoResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetReplicaVisibleLengthRequestProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| NamenodeProtocolProtos.StartCheckpointRequestProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdateBlockForPipelineResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| NamenodeProtocolProtos.StartCheckpointResponseProto |  | 0% |  | 0% | 54 | 54 | 88 | 88 | 35 | 35 | 1 | 1 |
| ErasureCodingProtos.GetECTopologyResultForPoliciesRequestProto |  | 0% |  | 0% | 48 | 48 | 87 | 87 | 36 | 36 | 1 | 1 |
| HdfsProtos.StorageUuidsProto |  | 0% |  | 0% | 48 | 48 | 87 | 87 | 36 | 36 | 1 | 1 |
| ReconfigurationProtocolProtos.ListReconfigurablePropertiesResponseProto |  | 0% |  | 0% | 48 | 48 | 87 | 87 | 36 | 36 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDataEncryptionKeyResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshottableDirListingResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPolicyResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| EncryptionZonesProtos.GetEZForPathResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| AliasMapProtocolProtos.ListRequestProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| DatanodeProtocolProtos.CacheReportResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBlockLocationsResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotListingResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileInfoResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetListingResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| AliasMapProtocolProtos.ReadResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| NamenodeProtocolProtos.GetBlockKeysResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| DatanodeProtocolProtos.BlockReportResponseProto |  | 0% |  | 0% | 54 | 54 | 86 | 86 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLocatedFileInfoResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileLinkInfoResponseProto |  | 0% |  | 0% | 54 | 54 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCachePoolRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCachePoolsRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.AllowSnapshotRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ClientDatanodeProtocolProtos.DiskBalancerSettingResponseProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.SatisfyStoragePolicyRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ClientDatanodeProtocolProtos.DiskBalancerSettingRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileInfoRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ErasureCodingProtos.EnableErasureCodingPolicyRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentNameNodeFileTxIdRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetContentSummaryRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| DataTransferProtos.OpCustomProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileLinkInfoRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.IsFileClosedRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| EncryptionZonesProtos.GetEZForPathRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetPreferredBlockSizeRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| AclProtos.RemoveAclRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ErasureCodingProtos.UnsetErasureCodingPolicyRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ErasureCodingProtos.DisableErasureCodingPolicyRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| DatanodeProtocolProtos.FinalizeCommandProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.DisallowSnapshotRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.RestoreFailedStorageRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| XAttrProtos.ListXAttrsRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| AclProtos.GetAclStatusRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.MetaSaveRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLinkTargetRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotListingRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetQuotaUsageRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.UnsetStoragePolicyRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPolicyRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| AclProtos.RemoveDefaultAclRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| NamenodeProtocolProtos.GetFilePathResponseProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ErasureCodingProtos.RemoveErasureCodingPolicyRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePolicyRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSnapshotResponseProto.Builder |  | 0% |  | 0% | 46 | 46 | 0 | 0 | 28 | 28 | 1 | 1 |
| ClientDatanodeProtocolProtos.CancelPlanRequestProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| AliasMapProtocolProtos.BlockPoolResponseProto.Builder |  | 0% |  | 0% | 46 | 46 | 100 | 100 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeStorageReportRequestProto |  | 0% |  | 0% | 51 | 51 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.HAServiceStateResponseProto |  | 0% |  | 0% | 51 | 51 | 0 | 0 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeReportRequestProto |  | 0% |  | 0% | 51 | 51 | 86 | 86 | 34 | 34 | 1 | 1 |
| DataTransferProtos.DNTransferAckProto |  | 0% |  | 0% | 51 | 51 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeRequestProto |  | 0% |  | 0% | 51 | 51 | 86 | 86 | 34 | 34 | 1 | 1 |
| DataTransferProtos.ClientReadStatusProto |  | 0% |  | 0% | 51 | 51 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveInfoExpirationProto.Builder |  | 0% |  | 0% | 47 | 47 | 0 | 0 | 29 | 29 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCachePoolRequestProto |  | 0% |  | 0% | 53 | 53 | 0 | 0 | 35 | 35 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCachePoolRequestProto |  | 0% |  | 0% | 53 | 53 | 0 | 0 | 35 | 35 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmIdProto.Builder |  | 0% |  | 0% | 47 | 47 | 96 | 96 | 29 | 29 | 1 | 1 |
| InterDatanodeProtocolProtos.UpdateReplicaUnderRecoveryResponseProto.Builder |  | 0% |  | 0% | 45 | 45 | 98 | 98 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEnclosingRootRequestProto.Builder |  | 0% |  | 0% | 45 | 45 | 98 | 98 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEnclosingRootResponseProto.Builder |  | 0% |  | 0% | 45 | 45 | 98 | 98 | 28 | 28 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLinkTargetResponseProto.Builder |  | 0% |  | 0% | 45 | 45 | 0 | 0 | 28 | 28 | 1 | 1 |
| DatanodeProtocolProtos.BalancerBandwidthCommandProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetReplicaVisibleLengthResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCacheDirectiveRequestProto |  | 0% |  | 0% | 50 | 50 | 0 | 0 | 34 | 34 | 1 | 1 |
| NamenodeProtocolProtos.GetEditLogManifestRequestProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetPreferredBlockSizeResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollEditsResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentCheckpointTxIdResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| NamenodeProtocolProtos.GetFilePathRequestProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCacheDirectiveResponseProto |  | 0% |  | 0% | 50 | 50 | 0 | 0 | 34 | 34 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBalancerBandwidthResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetBalancerBandwidthRequestProto |  | 0% |  | 0% | 50 | 50 | 0 | 0 | 34 | 34 | 1 | 1 |
| EncryptionZonesProtos.ListEncryptionZonesRequestProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEditsFromTxidRequestProto |  | 0% |  | 0% | 50 | 50 | 0 | 0 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetCurrentEditLogTxidResponseProto |  | 0% |  | 0% | 50 | 50 | 0 | 0 | 34 | 34 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentNameNodeFileTxIdResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| NamenodeProtocolProtos.GetTransactionIdResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| EncryptionZonesProtos.ListReencryptionStatusRequestProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientDatanodeProtocolProtos.ShutdownDatanodeRequestProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.RecoverLeaseResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| NamenodeProtocolProtos.IsUpgradeFinalizedResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.MkdirsResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetSafeModeResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetReplicationResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.IsFileClosedResponseProto |  | 0% |  | 0% | 50 | 50 | 0 | 0 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.TruncateResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.RestoreFailedStorageResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpgradeStatusResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| NamenodeProtocolProtos.IsRollingUpgradeResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.CompleteResponseProto |  | 0% |  | 0% | 50 | 50 | 86 | 86 | 34 | 34 | 1 | 1 |
| AclProtos.FsPermissionProto |  | 0% |  | 0% | 50 | 50 | 85 | 85 | 34 | 34 | 1 | 1 |
| ClientNamenodeProtocolProtos.SaveNamespaceRequestProto.Builder |  | 0% |  | 0% | 45 | 45 | 92 | 92 | 29 | 29 | 1 | 1 |
| DataTransferProtos.CachingStrategyProto.Builder |  | 0% |  | 0% | 45 | 45 | 92 | 92 | 29 | 29 | 1 | 1 |
| ClientNamenodeProtocolProtos.SaveNamespaceResponseProto |  | 0% |  | 0% | 49 | 49 | 84 | 84 | 34 | 34 | 1 | 1 |
| NamenodeProtocolProtos.GetNextSPSPathResponseProto |  | 0% |  | 0% | 49 | 49 | 83 | 83 | 34 | 34 | 1 | 1 |
| AclProtos |  | 0% | | n/a | 4 | 4 | 38 | 38 | 4 | 4 | 1 | 1 |
| EncryptionZonesProtos |  | 0% | | n/a | 4 | 4 | 34 | 34 | 4 | 4 | 1 | 1 |
| ClientDatanodeProtocolProtos.ClientDatanodeProtocolService |  | 0% |  | 0% | 64 | 64 | 104 | 104 | 10 | 10 | 1 | 1 |
| DataTransferProtos.DNTransferAckProto.Builder |  | 0% |  | 0% | 42 | 42 | 86 | 86 | 26 | 26 | 1 | 1 |
| DataTransferProtos.ClientReadStatusProto.Builder |  | 0% |  | 0% | 42 | 42 | 86 | 86 | 26 | 26 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeRequestProto.Builder |  | 0% |  | 0% | 42 | 42 | 86 | 86 | 26 | 26 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeReportRequestProto.Builder |  | 0% |  | 0% | 42 | 42 | 86 | 86 | 26 | 26 | 1 | 1 |
| ClientDatanodeProtocolProtos.ClientDatanodeProtocolService.Stub |  | 0% | | n/a | 19 | 19 | 106 | 106 | 19 | 19 | 1 | 1 |
| ClientNamenodeProtocolProtos.HAServiceStateResponseProto.Builder |  | 0% |  | 0% | 42 | 42 | 0 | 0 | 26 | 26 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeStorageReportRequestProto.Builder |  | 0% |  | 0% | 42 | 42 | 86 | 86 | 26 | 26 | 1 | 1 |
| NamenodeProtocolProtos.NamenodeProtocolService |  | 0% |  | 0% | 58 | 58 | 94 | 94 | 10 | 10 | 1 | 1 |
| ClientNamenodeProtocolProtos.SaveNamespaceResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 76 | 76 | 26 | 26 | 1 | 1 |
| RouterProtocolProtos.RouterAdminProtocolService |  | 0% |  | 0% | 55 | 55 | 89 | 89 | 10 | 10 | 1 | 1 |
| NamenodeProtocolProtos.NamenodeProtocolService.Stub |  | 0% | | n/a | 17 | 17 | 94 | 94 | 17 | 17 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpgradeStatusResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEditsFromTxidRequestProto.Builder |  | 0% |  | 0% | 38 | 38 | 0 | 0 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetReplicationResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientDatanodeProtocolProtos.ShutdownDatanodeRequestProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| EncryptionZonesProtos.ListEncryptionZonesRequestProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.RestoreFailedStorageResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| NamenodeProtocolProtos.GetFilePathRequestProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.MkdirsResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.CompleteResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.TruncateResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| NamenodeProtocolProtos.GetTransactionIdResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentNameNodeFileTxIdResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetCurrentEditLogTxidResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 0 | 0 | 25 | 25 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetReplicaVisibleLengthResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetPreferredBlockSizeResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| DatanodeProtocolProtos.BalancerBandwidthCommandProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCacheDirectiveResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 0 | 0 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.RecoverLeaseResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| NamenodeProtocolProtos.GetEditLogManifestRequestProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetBalancerBandwidthRequestProto.Builder |  | 0% |  | 0% | 38 | 38 | 0 | 0 | 25 | 25 | 1 | 1 |
| AclProtos.FsPermissionProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentCheckpointTxIdResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollEditsResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetSafeModeResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientDatanodeProtocolProtos.ClientDatanodeProtocolService.new BlockingService() {...} |  | 0% |  | 0% | 59 | 59 | 65 | 65 | 5 | 5 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCacheDirectiveRequestProto.Builder |  | 0% |  | 0% | 38 | 38 | 0 | 0 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.IsFileClosedResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 0 | 0 | 25 | 25 | 1 | 1 |
| NamenodeProtocolProtos.IsRollingUpgradeResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBalancerBandwidthResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| NamenodeProtocolProtos.IsUpgradeFinalizedResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| EncryptionZonesProtos.ListReencryptionStatusRequestProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameResponseProto.Builder |  | 0% |  | 0% | 38 | 38 | 75 | 75 | 25 | 25 | 1 | 1 |
| NamenodeProtocolProtos.GetNextSPSPathResponseProto.Builder |  | 0% |  | 0% | 37 | 37 | 73 | 73 | 25 | 25 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetQuotaResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.IsRollingUpgradeRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetVolumeReportRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| HdfsServerProtos.VersionRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.CheckAccessResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| AclProtos.RemoveAclResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSymlinkResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCachePoolResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.HAServiceStateRequestProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| JournalProtocolProtos.JournalResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.FsyncResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| XAttrProtos.RemoveXAttrResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetStoragePolicyResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| DatanodeProtocolProtos.CommitBlockSynchronizationResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.FinalizeUpgradeRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.RollEditLogRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.ConcatResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.EvictWritersRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCachePoolResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshottableDirListingRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| EncryptionZonesProtos.ReencryptEncryptionZoneResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.EndCheckpointResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| JournalProtocolProtos.StartLogSegmentResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.MsyncRequestProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.AllowSnapshotResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| AclProtos.ModifyAclEntriesResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.SubmitDiskBalancerPlanResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.GetNextSPSPathRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.ShutdownDatanodeResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenewLeaseResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetDatanodeInfoRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsStatusRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ReconfigurationProtocolProtos.GetReconfigurationStatusRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ErasureCodingProtos.UnsetErasureCodingPolicyResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsECBlockGroupStatsRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| AclProtos.RemoveAclEntriesResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSlowDatanodeReportRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| XAttrProtos.SetXAttrResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.ErrorReportResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ReconfigurationProtocolProtos.StartReconfigurationRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ReconfigurationProtocolProtos.ListReconfigurablePropertiesRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| AliasMapProtocolProtos.WriteResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCacheDirectiveResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetOwnerResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetServerDefaultsRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePoliciesRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ErasureCodingProtos.EnableErasureCodingPolicyResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCacheDirectiveResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| DatanodeProtocolProtos.BlockReceivedAndDeletedResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBalancerBandwidthRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingCodecsRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.MetaSaveResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteSnapshotResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetBalancerBandwidthResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPoliciesRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameSnapshotResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ErasureCodingProtos.DisableErasureCodingPolicyResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.EvictWritersResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCachePoolResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.QueryPlanStatusRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.Rename2ResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.DeleteBlockPoolResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| AliasMapProtocolProtos.BlockPoolRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.SatisfyStoragePolicyResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.GetTransactionIdRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| DatanodeProtocolProtos.RegisterCommandProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdatePipelineResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ReconfigurationProtocolProtos.StartReconfigurationResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.UnsetStoragePolicyResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ErasureCodingProtos.RemoveErasureCodingPolicyResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.FinalizeUpgradeResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.MsyncResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.ReportBadBlocksResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.RefreshNamenodesResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.IsUpgradeFinalizedRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ErasureCodingProtos.SetErasureCodingPolicyResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.GetBlockKeysRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| AclProtos.SetAclResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetPermissionResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.RefreshNodesRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.RefreshNamenodesRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| RouterProtocolProtos.RouterAdminProtocolService.Stub |  | 0% | | n/a | 16 | 16 | 88 | 88 | 16 | 16 | 1 | 1 |
| DatanodeProtocolProtos.ErrorReportResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| AclProtos.RemoveDefaultAclResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.RefreshNodesResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDataEncryptionKeyRequestProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| DatanodeLifelineProtocolProtos.LifelineResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| DatanodeProtocolProtos.ReportBadBlocksResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsReplicatedBlockStatsRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpgradeStatusRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.CancelPlanResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetTimesResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollEditsRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.DisallowSnapshotResponseProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentCheckpointTxIdRequestProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| EncryptionZonesProtos.CreateEncryptionZoneResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.AbandonBlockResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.TriggerBlockReportResponseProto |  | 0% |  | 0% | 40 | 40 | 67 | 67 | 32 | 32 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetCurrentEditLogTxidRequestProto |  | 0% |  | 0% | 40 | 40 | 0 | 0 | 32 | 32 | 1 | 1 |
| ClientDatanodeProtocolProtos.ClientDatanodeProtocolService.BlockingStub |  | 0% | | n/a | 18 | 18 | 54 | 54 | 18 | 18 | 1 | 1 |
| NamenodeProtocolProtos.NamenodeProtocolService.new BlockingService() {...} |  | 0% |  | 0% | 53 | 53 | 59 | 59 | 5 | 5 | 1 | 1 |
| RouterProtocolProtos.RouterAdminProtocolService.new BlockingService() {...} |  | 0% |  | 0% | 50 | 50 | 56 | 56 | 5 | 5 | 1 | 1 |
| NamenodeProtocolProtos.NamenodeProtocolService.BlockingStub |  | 0% | | n/a | 16 | 16 | 48 | 48 | 16 | 16 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeProtocolService |  | 0% |  | 0% | 40 | 40 | 64 | 64 | 10 | 10 | 1 | 1 |
| JournalProtocolProtos |  | 0% | | n/a | 4 | 4 | 26 | 26 | 4 | 4 | 1 | 1 |
| XAttrProtos |  | 0% | | n/a | 4 | 4 | 26 | 26 | 4 | 4 | 1 | 1 |
| RouterProtocolProtos.RouterAdminProtocolService.BlockingStub |  | 0% | | n/a | 15 | 15 | 45 | 45 | 15 | 15 | 1 | 1 |
| DataTransferProtos.Status |  | 0% |  | 0% | 25 | 25 | 45 | 45 | 10 | 10 | 1 | 1 |
| AliasMapProtocolProtos |  | 0% | | n/a | 4 | 4 | 28 | 28 | 4 | 4 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeProtocolService.new BlockingService() {...} |  | 0% |  | 0% | 35 | 35 | 41 | 41 | 5 | 5 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeProtocolService.Stub |  | 0% | | n/a | 11 | 11 | 58 | 58 | 11 | 11 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCachePoolResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPoliciesRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.ConcatResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| XAttrProtos.SetXAttrResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCachePoolResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| DatanodeProtocolProtos.BlockReceivedAndDeletedResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| NamenodeProtocolProtos.IsUpgradeFinalizedRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ErasureCodingProtos.UnsetErasureCodingPolicyResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSlowDatanodeReportRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetServerDefaultsRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.SatisfyStoragePolicyResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.RefreshNamenodesRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdatePipelineResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| HdfsServerProtos.VersionRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| JournalProtocolProtos.JournalResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.AbandonBlockResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingCodecsRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.AllowSnapshotResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ErasureCodingProtos.DisableErasureCodingPolicyResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteSnapshotResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSymlinkResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.FinalizeUpgradeRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| NamenodeProtocolProtos.EndCheckpointResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| AclProtos.SetAclResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeCommandProto.Type |  | 0% |  | 0% | 21 | 21 | 37 | 37 | 10 | 10 | 1 | 1 |
| ClientNamenodeProtocolProtos.RefreshNodesRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.RefreshNodesResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| AclProtos.RemoveAclResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.UnsetStoragePolicyResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.DisallowSnapshotResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenewLeaseResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ReconfigurationProtocolProtos.StartReconfigurationRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.CheckAccessResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.SubmitDiskBalancerPlanResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsReplicatedBlockStatsRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| DatanodeProtocolProtos.RegisterCommandProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpgradeStatusRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ErasureCodingProtos.RemoveErasureCodingPolicyResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.TriggerBlockReportResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetOwnerResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.FsyncResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ReconfigurationProtocolProtos.GetReconfigurationStatusRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.MetaSaveResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.EvictWritersRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ReconfigurationProtocolProtos.StartReconfigurationResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetDatanodeInfoRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetTimesResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCacheDirectiveResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.ReportBadBlocksResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| DatanodeLifelineProtocolProtos.LifelineResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ErasureCodingProtos.SetErasureCodingPolicyResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| AclProtos.ModifyAclEntriesResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollEditsRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetPermissionResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| NamenodeProtocolProtos.RollEditLogRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentCheckpointTxIdRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| DatanodeProtocolProtos.ErrorReportResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| AclProtos.RemoveAclEntriesResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.FinalizeUpgradeResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| AliasMapProtocolProtos.BlockPoolRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshottableDirListingRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ErasureCodingProtos.EnableErasureCodingPolicyResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.CancelPlanResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.HAServiceStateRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetQuotaResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| NamenodeProtocolProtos.GetNextSPSPathRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.ShutdownDatanodeResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDataEncryptionKeyRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| XAttrProtos.RemoveXAttrResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| NamenodeProtocolProtos.GetBlockKeysRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.DeleteBlockPoolResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| DatanodeProtocolProtos.CommitBlockSynchronizationResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetVolumeReportRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsECBlockGroupStatsRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.QueryPlanStatusRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| NamenodeProtocolProtos.GetTransactionIdRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetStoragePolicyResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsStatusRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePoliciesRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| DatanodeProtocolProtos.ReportBadBlocksResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| NamenodeProtocolProtos.IsRollingUpgradeRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.EvictWritersResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.MsyncResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| AliasMapProtocolProtos.WriteResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.MsyncRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| JournalProtocolProtos.StartLogSegmentResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameSnapshotResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| NamenodeProtocolProtos.ErrorReportResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| EncryptionZonesProtos.ReencryptEncryptionZoneResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.Rename2ResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBalancerBandwidthRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| AclProtos.RemoveDefaultAclResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetBalancerBandwidthResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetCurrentEditLogTxidRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCacheDirectiveResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| ClientDatanodeProtocolProtos.RefreshNamenodesResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ReconfigurationProtocolProtos.ListReconfigurablePropertiesRequestProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCachePoolResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 0 | 0 | 20 | 20 | 1 | 1 |
| EncryptionZonesProtos.CreateEncryptionZoneResponseProto.Builder |  | 0% |  | 0% | 27 | 27 | 48 | 48 | 20 | 20 | 1 | 1 |
| ReconfigurationProtocolProtos |  | 0% | | n/a | 4 | 4 | 22 | 22 | 4 | 4 | 1 | 1 |
| DataTransferProtos.OpWriteBlockProto.BlockConstructionStage |  | 0% |  | 0% | 20 | 20 | 35 | 35 | 10 | 10 | 1 | 1 |
| AliasMapProtocolProtos.AliasMapProtocolService |  | 0% |  | 0% | 25 | 25 | 39 | 39 | 10 | 10 | 1 | 1 |
| AclProtos.AclEntryProto.FsActionProto |  | 0% |  | 0% | 19 | 19 | 33 | 33 | 10 | 10 | 1 | 1 |
| ClientDatanodeProtocolProtos.ClientDatanodeProtocolService.new ClientDatanodeProtocolProtos.ClientDatanodeProtocolService() {...} |  | 0% | | n/a | 18 | 18 | 35 | 35 | 18 | 18 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeProtocolService.BlockingStub |  | 0% | | n/a | 10 | 10 | 30 | 30 | 10 | 10 | 1 | 1 |
| InotifyProtos.EventType |  | 0% |  | 0% | 18 | 18 | 31 | 31 | 10 | 10 | 1 | 1 |
| InterDatanodeProtocolProtos |  | 0% | | n/a | 4 | 4 | 20 | 20 | 4 | 4 | 1 | 1 |
| JournalProtocolProtos.JournalProtocolService |  | 0% |  | 0% | 22 | 22 | 34 | 34 | 10 | 10 | 1 | 1 |
| ReconfigurationProtocolProtos.ReconfigurationProtocolService |  | 0% |  | 0% | 22 | 22 | 34 | 34 | 10 | 10 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateFlagProto |  | 0% |  | 0% | 17 | 17 | 29 | 29 | 10 | 10 | 1 | 1 |
| ClientNamenodeProtocolProtos.DatanodeReportTypeProto |  | 0% |  | 0% | 17 | 17 | 29 | 29 | 10 | 10 | 1 | 1 |
| InotifyProtos.MetadataUpdateType |  | 0% |  | 0% | 17 | 17 | 29 | 29 | 10 | 10 | 1 | 1 |
| HdfsProtos.StorageTypeProto |  | 0% |  | 0% | 17 | 17 | 29 | 29 | 10 | 10 | 1 | 1 |
| NamenodeProtocolProtos.NamenodeProtocolService.new NamenodeProtocolProtos.NamenodeProtocolService() {...} |  | 0% | | n/a | 16 | 16 | 31 | 31 | 16 | 16 | 1 | 1 |
| InterDatanodeProtocolProtos.InterDatanodeProtocolService |  | 0% |  | 0% | 19 | 19 | 29 | 29 | 10 | 10 | 1 | 1 |
| RouterProtocolProtos.RouterAdminProtocolService.new RouterProtocolProtos.RouterAdminProtocolService() {...} |  | 0% | | n/a | 15 | 15 | 29 | 29 | 15 | 15 | 1 | 1 |
| HdfsServerProtos.ReplicaStateProto |  | 0% |  | 0% | 16 | 16 | 27 | 27 | 10 | 10 | 1 | 1 |
| XAttrProtos.XAttrProto.XAttrNamespaceProto |  | 0% |  | 0% | 16 | 16 | 27 | 27 | 10 | 10 | 1 | 1 |
| AliasMapProtocolProtos.AliasMapProtocolService.new BlockingService() {...} |  | 0% |  | 0% | 20 | 20 | 26 | 26 | 5 | 5 | 1 | 1 |
| HdfsProtos.DatanodeInfoProto.AdminState |  | 0% |  | 0% | 16 | 16 | 27 | 27 | 10 | 10 | 1 | 1 |
| DatanodeLifelineProtocolProtos.DatanodeLifelineProtocolService |  | 0% |  | 0% | 16 | 16 | 24 | 24 | 10 | 10 | 1 | 1 |
| AclProtos.AclEntryProto.AclEntryTypeProto |  | 0% |  | 0% | 15 | 15 | 25 | 25 | 10 | 10 | 1 | 1 |
| ClientNamenodeProtocolProtos.SafeModeActionProto |  | 0% |  | 0% | 15 | 15 | 25 | 25 | 10 | 10 | 1 | 1 |
| HdfsProtos.AccessModeProto |  | 0% |  | 0% | 15 | 15 | 25 | 25 | 10 | 10 | 1 | 1 |
| DatanodeProtocolProtos.ErrorReportRequestProto.ErrorCode |  | 0% |  | 0% | 15 | 15 | 25 | 25 | 10 | 10 | 1 | 1 |
| HdfsProtos.HdfsFileStatusProto.Flags |  | 0% |  | 0% | 15 | 15 | 25 | 25 | 10 | 10 | 1 | 1 |
| ReconfigurationProtocolProtos.ReconfigurationProtocolService.new BlockingService() {...} |  | 0% |  | 0% | 17 | 17 | 23 | 23 | 5 | 5 | 1 | 1 |
| JournalProtocolProtos.JournalProtocolService.new BlockingService() {...} |  | 0% |  | 0% | 17 | 17 | 23 | 23 | 5 | 5 | 1 | 1 |
| InotifyProtos.INodeType |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| HdfsProtos.ErasureCodingPolicyState |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| HdfsProtos.CipherSuiteProto |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| HdfsServerProtos.NNHAStatusHeartbeatProto.State |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeActionProto |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| EncryptionZonesProtos.ReencryptionStateProto |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| HdfsProtos.HdfsFileStatusProto.FileType |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| DatanodeProtocolProtos.ReceivedDeletedBlockInfoProto.BlockStatus |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| HdfsServerProtos.NamenodeRegistrationProto.NamenodeRoleProto |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| DataTransferProtos.DataTransferEncryptorMessageProto.DataTransferEncryptorStatus |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| HdfsProtos.ChecksumTypeProto |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| DatanodeProtocolProtos.BlockCommandProto.Action |  | 0% |  | 0% | 14 | 14 | 23 | 23 | 10 | 10 | 1 | 1 |
| InterDatanodeProtocolProtos.InterDatanodeProtocolService.new BlockingService() {...} |  | 0% |  | 0% | 14 | 14 | 20 | 20 | 5 | 5 | 1 | 1 |
| ClientNamenodeProtocolProtos.OpenFilesTypeProto |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| HdfsProtos.DatanodeStorageProto.StorageState |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| HdfsProtos.BlockChecksumTypeProto |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| DatanodeProtocolProtos.BlockIdCommandProto.Action |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddBlockFlagProto |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| DataTransferProtos.ShortCircuitFdResponse |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| XAttrProtos.XAttrSetFlagProto |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| HdfsProtos.BlockTypeProto |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| HdfsProtos.CryptoProtocolVersionProto |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| HdfsServerProtos.NamenodeCommandProto.Type |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| EncryptionZonesProtos.ReencryptActionProto |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| AclProtos.AclEntryProto.AclEntryScopeProto |  | 0% |  | 0% | 13 | 13 | 21 | 21 | 10 | 10 | 1 | 1 |
| EditLogProtos |  | 0% | | n/a | 4 | 4 | 16 | 16 | 4 | 4 | 1 | 1 |
| AliasMapProtocolProtos.AliasMapProtocolService.Stub |  | 0% | | n/a | 6 | 6 | 28 | 28 | 6 | 6 | 1 | 1 |
| DatanodeLifelineProtocolProtos.DatanodeLifelineProtocolService.new BlockingService() {...} |  | 0% |  | 0% | 11 | 11 | 17 | 17 | 5 | 5 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeProtocolService.new DatanodeProtocolProtos.DatanodeProtocolService() {...} |  | 0% | | n/a | 10 | 10 | 19 | 19 | 10 | 10 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheFlagProto |  | 0% |  | 0% | 12 | 12 | 19 | 19 | 10 | 10 | 1 | 1 |
| AliasMapProtocolProtos.AliasMapProtocolService.BlockingStub |  | 0% | | n/a | 5 | 5 | 15 | 15 | 5 | 5 | 1 | 1 |
| JournalProtocolProtos.JournalProtocolService.Stub |  | 0% | | n/a | 5 | 5 | 22 | 22 | 5 | 5 | 1 | 1 |
| ReconfigurationProtocolProtos.ReconfigurationProtocolService.Stub |  | 0% | | n/a | 5 | 5 | 22 | 22 | 5 | 5 | 1 | 1 |
| JournalProtocolProtos.JournalProtocolService.BlockingStub |  | 0% | | n/a | 4 | 4 | 12 | 12 | 4 | 4 | 1 | 1 |
| ReconfigurationProtocolProtos.ReconfigurationProtocolService.BlockingStub |  | 0% | | n/a | 4 | 4 | 12 | 12 | 4 | 4 | 1 | 1 |
| InterDatanodeProtocolProtos.InterDatanodeProtocolService.Stub |  | 0% | | n/a | 4 | 4 | 16 | 16 | 4 | 4 | 1 | 1 |
| DatanodeLifelineProtocolProtos |  | 0% | | n/a | 4 | 4 | 12 | 12 | 4 | 4 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsStatusRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.ReencryptEncryptionZoneRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollEditsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.IsFileClosedRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.DatanodeStorageProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetSafeModeRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RecoverLeaseResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSlowDatanodeReportRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.CheckpointCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockReportResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCachePoolResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveStatsProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSymlinkRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.ErrorReportResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetDatanodeInfoResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpBlockGroupChecksumProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RestoreFailedStorageRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SaveNamespaceResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.DataEncryptionKeyProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.GetECTopologyResultForPoliciesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.HdfsFileStatusProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.MetaSaveRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsStatsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.FsPermissionProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetCurrentEditLogTxidRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.RemoveErasureCodingPolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpgradeStatusRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.VersionResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.NNHAStatusHeartbeatProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InotifyProtos.CreateEventProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AliasMapProtocolProtos.WriteRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSnapshotResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetListingRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.AclEntryProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AllowSnapshotRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.CommitBlockSynchronizationResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCachePoolsRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetServerDefaultsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.DisallowSnapshotResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetTimesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| XAttrProtos.XAttrProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetServerDefaultsRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetPreferredBlockSizeResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListOpenFilesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBlockLocationsRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.CommitBlockSynchronizationRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InotifyProtos.RenameEventProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.IsRollingUpgradeResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ReconfigurationProtocolProtos.StartReconfigurationResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotListingResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenewLeaseRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| XAttrProtos.ListXAttrsRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdateBlockForPipelineRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| InterDatanodeProtocolProtos.UpdateReplicaUnderRecoveryRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.PipelineAckProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.RemoveAclResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.RecoveringBlockProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.StorageReceivedDeletedBlocksProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveEntryProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBatchedListingRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.HeartbeatResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.BlockStoragePolicyProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.StorageReportProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenewLeaseResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockECReconstructionCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.BlockOpResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.SubmitDiskBalancerPlanRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetStoragePolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.DataTransferTraceInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.GetECTopologyResultForPoliciesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCachePoolRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPolicyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AliasMapProtocolProtos.WriteResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollEditsRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AliasMapProtocolProtos.ListResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InotifyProtos.AppendEventProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeStorageReportRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CachePoolInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.EnableErasureCodingPolicyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.BlockECReconstructionInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.GetEZForPathRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.ReportBadBlocksRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentCheckpointTxIdResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCachePoolsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.BlockProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetReplicaVisibleLengthResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetNextSPSPathRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.DatanodeStorageReportProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.RemoveAclEntriesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InterDatanodeProtocolProtos.InitReplicaRecoveryResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.MkdirsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetAdditionalDatanodeResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.CancelPlanRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetBalancerBandwidthRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CheckAccessRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotListingRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.ListEncryptionZonesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.CacheReportRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpCopyBlockProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.MsyncRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| EditLogProtos.AclEditLogProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBatchedListingResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpWriteBlockProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddBlockRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeRegistrationProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetQuotaUsageRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.TriggerBlockReportResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.SnapshotInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.SnapshotListingProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ReconfigurationProtocolProtos.ListReconfigurablePropertiesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpCustomProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeReportRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.ShutdownDatanodeRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetCurrentEditLogTxidResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.SnapshotStatusProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockReportRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.RollingUpgradeStatusProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpBlockChecksumProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCacheDirectiveResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetOwnerRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.DisableErasureCodingPolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| XAttrProtos.SetXAttrResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.FsyncResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdateBlockForPipelineResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ReconfigurationProtocolProtos.StartReconfigurationRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InotifyProtos.EventBatchProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCachePoolRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpRequestShortCircuitAccessProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.FileEncryptionInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.SetErasureCodingPolicyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ReconfigurationProtocolProtos.ListReconfigurablePropertiesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.DatanodeLocalInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBlockLocalPathInfoResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsECBlockGroupStatsRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetReplicaVisibleLengthRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.ECSchemaOptionEntryProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSymlinkResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportListingEntryProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBlockLocalPathInfoRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ReadOpChecksumInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AliasMapProtocolProtos.ReadResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.IsUpgradeFinalizedRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.RouterFederatedStateProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.FsServerDefaultsProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.DeleteBlockPoolResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.StartCheckpointRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeReportResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportCursorProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InterDatanodeProtocolProtos.UpdateReplicaUnderRecoveryResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportListingRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| JournalProtocolProtos.JournalResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.AddErasureCodingPoliciesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.DeleteBlockPoolRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockIdCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.AddErasureCodingPolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ReportBadBlocksResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.PacketHeaderProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetTransactionIdRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.RollEditLogResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ReportBadBlocksRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.KeyUpdateCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.DiskBalancerSettingRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.HandshakeSecretProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.SlowPeerReportProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBalancerBandwidthResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.CheckpointSignatureProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ReconfigurationProtocolProtos.GetReconfigurationStatusRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.GetAclStatusResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.BlockTokenSecretProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.UnsetStoragePolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsReplicatedBlockStatsRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.BlockKeyProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ReleaseShortCircuitAccessResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetBalancerBandwidthRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InotifyProtos.MetadataUpdateEventProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingCodecsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.EndCheckpointResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockReportContextProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameSnapshotResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.SubmitDiskBalancerPlanResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileInfoRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.NamenodeRegistrationProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.ShutdownDatanodeResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLinkTargetResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetVolumeReportRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| JournalProtocolProtos.FenceRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshottableDirListingRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.ExtendedBlockProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.BlockChecksumOptionsProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.RollEditLogRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCacheDirectiveResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdatePipelineRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.QueryPlanStatusResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AliasMapProtocolProtos.BlockPoolResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentCheckpointTxIdRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.DiskBalancerSettingResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.DirectoryListingProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| JournalProtocolProtos.FenceResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.MkdirsRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetPreferredBlockSizeRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePoliciesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetBlockLocationsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.LocatedBlocksProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.DisableErasureCodingPolicyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.RegisterDatanodeResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.Rename2RequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.RemoteEditLogManifestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.StorageInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.StorageTypeQuotaInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetContentSummaryResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpReplaceBlockProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshottableDirListingResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.ModifyAclEntriesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ChecksumProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.BlocksWithLocationsProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetBalancerBandwidthResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.QuotaUsageProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AliasMapProtocolProtos.ReadRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.SlowDiskReportProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetStoragePolicyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RecoverLeaseRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileLinkInfoResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| AclProtos.SetAclResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.DatanodeInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.ErrorReportResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InotifyProtos.EventsListProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.RemoteEditLogProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpTransferBlockProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDataEncryptionKeyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ModifyCacheDirectiveRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePoliciesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.HAServiceStateResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetPermissionResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.CodecProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| JournalProtocolProtos.JournalInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.AclStatusProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CachePoolStatsProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ReconfigurationProtocolProtos.GetReconfigurationStatusConfigChangeProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSlowDatanodeReportResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportListingResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockReceivedAndDeletedRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ConcatRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.ZoneEncryptionInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.IsUpgradeFinalizedResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.RemoveAclEntriesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetStoragePolicyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEnclosingRootRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.RemoteExceptionProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.GetEZForPathResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCacheDirectiveRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.SetErasureCodingPolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| EditLogProtos.XAttrEditLogProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.DNTransferAckProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.ModifyAclEntriesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEditsFromTxidRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheDirectiveInfoExpirationProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportListingProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingCodecsRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SaveNamespaceRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.TruncateResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.CachingStrategyProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetBlocksResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentNameNodeFileTxIdRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPoliciesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SatisfyStoragePolicyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddBlockResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetQuotaUsageResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.FinalizeCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.EvictWritersRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetReplicationRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDatanodeStorageReportResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.FinalizeUpgradeResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileLinkInfoRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| XAttrProtos.RemoveXAttrResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetQuotaRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.SnapshottableDirectoryListingProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.Rename2ResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ReleaseShortCircuitAccessRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetQuotaResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.CreateEncryptionZoneRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| XAttrProtos.GetXAttrsRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InotifyProtos.EventProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.GetErasureCodingPoliciesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.RegisterRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetNextSPSPathResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCachePoolResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockReceivedAndDeletedResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.NamespaceInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.MetaSaveResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CachePoolEntryProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ConcatResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| XAttrProtos.SetXAttrRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.UnsetErasureCodingPolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RefreshNodesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CheckAccessResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CompleteRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.TruncateRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockRecoveryCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.EnableErasureCodingPolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.RegisterCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.HdfsPathHandleProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.StorageUuidsProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AliasMapProtocolProtos.BlockPoolRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmSlotProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCorruptFileBlocksRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ClientReadStatusProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RestoreFailedStorageResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.RefreshNamenodesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.EndCheckpointRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.SetAclRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.TriggerBlockReportRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetTimesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCacheDirectiveResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.VolumeFailureSummaryProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetSnapshotDiffReportResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddCacheDirectiveRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BalancerBandwidthCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InterDatanodeProtocolProtos.InitReplicaRecoveryRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEnclosingRootResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetVolumeReportResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ClientOperationHeaderProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.ExportedBlockKeysProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RenameSnapshotRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| JournalProtocolProtos.StartLogSegmentResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.SnapshottableDirectoryStatusProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetTransactionIdResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.MsyncResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.QueryPlanStatusRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.ProvidedStorageLocationProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| XAttrProtos.RemoveXAttrRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InotifyProtos.UnlinkEventProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.ErrorReportRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeLifelineProtocolProtos.LifelineResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.PerFileEncryptionInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| InotifyProtos.CloseEventProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateSnapshotRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| AclProtos.RemoveDefaultAclRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCacheDirectivesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| InotifyProtos.TruncateEventProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.RemoveErasureCodingPolicyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetEditLogManifestRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetMostRecentNameNodeFileTxIdResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AllowSnapshotResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetBlockKeysResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.ReencryptEncryptionZoneResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.UnsetErasureCodingPolicyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCachePoolResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetOwnerResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpgradeStatusResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.BatchedListingKeyProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.OpenFilesBatchResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.ListReencryptionStatusResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.StartCheckpointResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpBlockChecksumResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.EvictWritersResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.RefreshNamenodesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.GetDatanodeInfoRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetContentSummaryRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DataTransferProtos.BaseHeaderProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AppendResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientDatanodeProtocolProtos.CancelPlanResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.UpdatePipelineResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetEditLogManifestResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.CreateEncryptionZoneResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCacheDirectivesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| AliasMapProtocolProtos.KeyValueProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.ReencryptionInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLocatedFileInfoResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsReplicatedBlockStatsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLocatedFileInfoRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.StorageTypesProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.BlockWithLocationsProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.HeartbeatRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteSnapshotResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| AclProtos.RemoveAclRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.GetAclStatusRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.DataTransferEncryptorMessageProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.ZoneReencryptionStatusProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.ErasureCodingPolicyProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AppendRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.ContentSummaryProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetSafeModeResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetReplicationResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.ECTopologyVerifierResultProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetBlockKeysRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpReadBlockProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.ErrorReportRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.StorageTypeQuotaInfosProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFileInfoResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.DatanodeIDProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AclProtos.RemoveDefaultAclResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AbandonBlockResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetAdditionalDatanodeRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.FinalizeUpgradeRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.ReceivedDeletedBlockInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.IsRollingUpgradeRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.FsyncRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.CacheReportResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ErasureCodingProtos.AddErasureCodingPoliciesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.DatanodeVolumeInfoProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.BatchedDirectoryListingProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListOpenFilesResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RefreshNodesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetDataEncryptionKeyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.DisallowSnapshotRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.RegisterResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.ListReencryptionStatusRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.CorruptFileBlocksProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetFilePathResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.StorageBlockReportProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetBlocksRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AbandonBlockRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| NamenodeProtocolProtos.GetFilePathRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RemoveCachePoolRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| JournalProtocolProtos.JournalRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetFsECBlockGroupStatsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteSnapshotRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.NamenodeCommandProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.VersionRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.LocatedBlockProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CompleteResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetLinkTargetRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.IsFileClosedResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| JournalProtocolProtos.StartLogSegmentRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.SnapshotDiffReportEntryProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmIdProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetEditsFromTxidResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.RegisterDatanodeRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.UnsetStoragePolicyRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| XAttrProtos.GetXAttrsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListCorruptFileBlocksResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.DatanodeInfosProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.HAServiceStateRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.GetListingResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AliasMapProtocolProtos.ListRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.ListEncryptionZonesRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.ReportBadBlocksResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SatisfyStoragePolicyResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ShortCircuitShmRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SetPermissionRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.ECSchemaProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| XAttrProtos.ListXAttrsResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ReconfigurationProtocolProtos.GetReconfigurationStatusResponseProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| HdfsProtos.CipherOptionProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.DeleteRequestProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.EncryptionZoneProto.new AbstractParser() {...} |  | 0% | | n/a | 2 | 2 | 12 | 12 | 2 | 2 | 1 | 1 |
| AliasMapProtocolProtos.AliasMapProtocolService.new AliasMapProtocolProtos.AliasMapProtocolService() {...} |  | 0% | | n/a | 5 | 5 | 9 | 9 | 5 | 5 | 1 | 1 |
| InterDatanodeProtocolProtos.InterDatanodeProtocolService.BlockingStub |  | 0% | | n/a | 3 | 3 | 9 | 9 | 3 | 3 | 1 | 1 |
| ReconfigurationProtocolProtos.ReconfigurationProtocolService.new ReconfigurationProtocolProtos.ReconfigurationProtocolService() {...} | | 0% | | n/a | 4 | 4 | 7 | 7 | 4 | 4 | 1 | 1 |
| JournalProtocolProtos.JournalProtocolService.new JournalProtocolProtos.JournalProtocolService() {...} | | 0% | | n/a | 4 | 4 | 7 | 7 | 4 | 4 | 1 | 1 |
| DatanodeLifelineProtocolProtos.DatanodeLifelineProtocolService.Stub | | 0% | | n/a | 3 | 3 | 10 | 10 | 3 | 3 | 1 | 1 |
| RouterProtocolProtos | | 0% | | n/a | 4 | 4 | 10 | 10 | 4 | 4 | 1 | 1 |
| InterDatanodeProtocolProtos.InterDatanodeProtocolService.new InterDatanodeProtocolProtos.InterDatanodeProtocolService() {...} | | 0% | | n/a | 3 | 3 | 5 | 5 | 3 | 3 | 1 | 1 |
| DatanodeLifelineProtocolProtos.DatanodeLifelineProtocolService.BlockingStub | | 0% | | n/a | 2 | 2 | 6 | 6 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListOpenFilesRequestProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 0 | 0 | 2 | 2 | 1 | 1 |
| DataTransferProtos.PipelineAckProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 3 | 3 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpWriteBlockProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 3 | 3 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddBlockRequestProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 3 | 3 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateRequestProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 3 | 3 | 2 | 2 | 1 | 1 |
| HdfsProtos.BlockTokenSecretProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 3 | 3 | 2 | 2 | 1 | 1 |
| HdfsProtos.BlockTokenSecretProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 3 | 3 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpTransferBlockProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 3 | 3 | 2 | 2 | 1 | 1 |
| HdfsProtos.StorageTypesProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 3 | 3 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.BlockWithLocationsProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 3 | 3 | 2 | 2 | 1 | 1 |
| DatanodeLifelineProtocolProtos.DatanodeLifelineProtocolService.new DatanodeLifelineProtocolProtos.DatanodeLifelineProtocolService() {...} | | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.ListOpenFilesResponseProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 0 | 0 | 2 | 2 | 1 | 1 |
| HdfsProtos.LocatedBlockProto.new Internal.ListAdapter.Converter() {...} | | 0% | | 0% | 3 | 3 | 3 | 3 | 2 | 2 | 1 | 1 |
| HdfsProtos.RouterFederatedStateProto.NamespaceStateIdsDefaultEntryHolder | | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 | 1 | 1 |
| ClientNamenodeProtocolProtos.DatanodeReportTypeProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.BlockTypeProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.ErrorReportRequestProto.ErrorCode.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CacheFlagProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| InotifyProtos.INodeType.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.ReencryptActionProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.NamenodeRegistrationProto.NamenodeRoleProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.CipherSuiteProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| InotifyProtos.MetadataUpdateType.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockIdCommandProto.Action.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| XAttrProtos.XAttrSetFlagProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.BlockCommandProto.Action.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.AddBlockFlagProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| DataTransferProtos.Status.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.DatanodeCommandProto.Type.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| DataTransferProtos.OpWriteBlockProto.BlockConstructionStage.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.HdfsFileStatusProto.FileType.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| EncryptionZonesProtos.ReencryptionStateProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.ChecksumTypeProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| DatanodeProtocolProtos.ReceivedDeletedBlockInfoProto.BlockStatus.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.DatanodeInfoProto.AdminState.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.CryptoProtocolVersionProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.ErasureCodingPolicyState.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.ReplicaStateProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.DatanodeStorageProto.StorageState.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.OpenFilesTypeProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.NNHAStatusHeartbeatProto.State.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| AclProtos.AclEntryProto.FsActionProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.SafeModeActionProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.CreateFlagProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.BlockChecksumTypeProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.AccessModeProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| DataTransferProtos.ShortCircuitFdResponse.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| AclProtos.AclEntryProto.AclEntryScopeProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsServerProtos.NamenodeCommandProto.Type.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| ClientNamenodeProtocolProtos.RollingUpgradeActionProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| XAttrProtos.XAttrProto.XAttrNamespaceProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.HdfsFileStatusProto.Flags.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| InotifyProtos.EventType.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| AclProtos.AclEntryProto.AclEntryTypeProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| DataTransferProtos.DataTransferEncryptorMessageProto.DataTransferEncryptorStatus.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| HdfsProtos.StorageTypeProto.new Internal.EnumLiteMap() {...} | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |