Get desktop application:
View/edit binary Protocol Buffers messages
* Protocol used from client to the Datanode. See the request and response for details of rpc call.
* Delete the block pool from the datanode.
* blockPool - block pool to be deleted force - if false, delete the block pool only if it is empty. if true, delete the block pool even if it has blocks.
* void response
(message has no fields)
* Retrieves the path names of the block file and metadata file stored on the local file system.
* Gets the file information where block and its metadata is stored block - block for which path information is being requested token - block token This message is deprecated in favor of file descriptor passing.
* block - block for which file path information is being returned localPath - file path where the block data is stored localMetaPath - file path where the block meta data is stored This message is deprecated in favor of file descriptor passing.
* Ping datanode for liveness and quick info
(message has no fields)
* Retrieve additional HDFS-specific metadata about a set of blocks stored on the local file system.
* Query for the disk locations of a number of blocks on this DN. blockPoolId - the pool to query blockIds - list of block IDs to query tokens - list of access tokens corresponding to list of block IDs
Removed: HDFS-3969 repeated ExtendedBlockProto blocks = 1;
* volumeIds - id of each volume, potentially multiple bytes volumeIndexes - for each block, an index into volumeIds specifying the volume on which it is located. If block is not present on any volume, index is set to MAX_INT.
* Returns the visible length of the replica
* block - block for which visible length is requested
* length - visible length of the block
* Refresh the list of federated namenodes from updated configuration. Adds new namenodes and stops the deleted namenodes.
* void request
(message has no fields)
* void response
(message has no fields)
* forUpgrade - if true, clients are advised to wait for restart and quick upgrade restart is instrumented. Otherwise, datanode does the regular shutdown.
(message has no fields)
void response
(message has no fields)
default as a bogus id
the set of datanodes to use for the block
bits set using CacheFlag
void response
(message has no fields)
(message has no fields)
default to GRANDFATHER_INODE_ID
void response
(message has no fields)
bits set using CreateFlag
Short: Only 16 bits used
void response
(message has no fields)
void response
(message has no fields)
(message has no fields)
no parameters
(message has no fields)
void response
(message has no fields)
void response
(message has no fields)
file name
range start offset
range length
no parameters
(message has no fields)
no input paramters
(message has no fields)
No parameters
(message has no fields)
no input parameters
(message has no fields)
void response
(message has no fields)
(message has no fields)
bits set using CacheFlag
(message has no fields)
void response
(message has no fields)
no parameters
(message has no fields)
void response
(message has no fields)
(message has no fields)
(message has no fields)
(message has no fields)
void response
(message has no fields)
(message has no fields)
void response
(message has no fields)
void response
(message has no fields)
void response
(message has no fields)
void response
(message has no fields)
no parameters
(message has no fields)
response
no parameters
(message has no fields)
void response
(message has no fields)
(message has no fields)
void response
(message has no fields)
void response
(message has no fields)
void response
(message has no fields)
void response
(message has no fields)
Short: Only 16 bits used
void response
(message has no fields)
void response
(message has no fields)
Used in: , , , ,
Used in:
Used in:
Used in:
Used in:
Used in: , , , ,
* Block access token information
Used in:
Key identifier
Expiry time in milliseconds
Key secret
* explanatory text which may be useful to log on the client side
* If the server chooses to agree to the request of a client for short-circuit access, it will send a response message with the relevant file descriptors attached. In the body of the message, this version number will be set to the specific version number of the block data that the client is about to read.
* Block information
Used in:
* Block and datanodes where is it located
Used in:
Block
Datanodes with replicas of the block
Storages with replicas of the block
* List of block with locations
Used in:
Used in:
Used in: , , ,
Used in:
Ignore pool resource limits
Used in:
Used in: , ,
Used in:
Used in: ,
* Command returned from primary to checkpointing namenode. This command has checkpoint signature that identifies checkpoint transaction and is needed for further communication related to checkpointing.
Used in:
Unique signature to identify checkpoint transation
If true, return transfer image to primary upon the completion of checkpoint
* Unique signature to identify checkpoint transactions.
Used in:
Used in: ,
* Checksum algorithms/types used in HDFS Make sure this enum's integer values match enum values' id properties defined in org.apache.hadoop.util.DataChecksum.Type
Used in: , ,
Used in: , ,
* Message sent from the client to the DN after reading the entire read request.
* Summary of a file or directory
Used in:
* Contains a list of paths corresponding to corrupt files and a cookie used for iterative calls to NameNode.listCorruptFileBlocks.
Used in:
Create a file
Truncate/overwrite a file. Same as POSIX O_TRUNC
Append to a file
Used in:
Used in:
* Identifies a Datanode
Used in: ,
IP address
hostname
UUID assigned to the Datanode. For
upgraded clusters this is the same as the original StorageID of the Datanode.
data streaming port
datanode http port
ipc server port
datanode https port
* The status of a Datanode
Used in: , , , , , , ,
Used in:
* DatanodeInfo array
* Datanode local information
Used in:
type of the datanode report
Used in:
* Directory listing
Used in:
* Current key and set of block keys at the namenode.
* Extended block idenfies a block
Used in: , , , , , , , , , ,
Block pool id - gloablly unique across clusters
the local id within a pool
len does not belong in ebid
* File or Directory permision - same spec as posix
Used in: , , , , ,
Actually a short - only 16bits used
* HDFS Server Defaults
Used in:
Actually a short - only 16 bits used
* Status of a file, directory or symlink Optionally includes a file's block locations if requested by client on the rpc call.
Used in: , , , ,
local name of inode encoded java UTF8
Optional fields for symlink
if symlink, target encoded java UTF8
Optional fields for file
only 16bits used
suppled only if asked by client
Optional field for fileId
default as an invalid id
Used in:
* A LocatedBlock gives information about a block and its location.
Used in: , , , , , ,
offset of first byte of block in the file
Locations ordered by proximity to client ip
true if all replicas of a block are corrupt, else false
if a location in locs is cached
* A set of file blocks and their locations.
Used in: ,
* Command sent from one namenode to another namenode.
Used in:
Base command
Check point command
* Information sent by a namenode to identify itself to the primary namenode.
host:port of the namenode RPC address
host:port of the namenode http server
Node information
Namenode role
Used in:
* Namespace information that describes namespace on a namenode
Used in:
Software revision version (e.g. an svn or git revision)
Retained for backward compatibility
block pool used by the namespace
Node information
Software version number (e.g. 2.0.0)
Used in:
* In order to get short-circuit access to block data, clients must set this to the highest version of the block data that they can understand. Currently 1 is the only version, but more versions may exist in the future if the on-disk format changes.
* The shared memory slot to use, if we are using one.
* The requested checksum mechanism for this block write.
Used in:
pipeline set up for failed PIPELINE_SETUP_APPEND recovery
data streaming
pipeline setup for failed data streaming recovery
close the block and pipeline
Recover a failed PIPELINE_CLOSE
pipeline set up for block creation
transfer RBW for adding datanodes
transfer Finalized for adding datanodes
All fields must be fixed-length!
* Sent as part of the BlockOpResponseProto for READ_BLOCK and COPY_BLOCK operations.
Used in:
* The offset into the block at which the first packet will start. This is necessary since reads will align backwards to a checksum chunk boundary.
* Block that needs to be recovered with at a given location
New genstamp post recovery
Block to be recovered
* Enumeration of editlogs available on a remote namenode
* Editlog information with available transactions
Used in:
Starting available edit log transaction
Ending available edit log transaction
* State of a block replica at a datanode
State of a replica when it is not modified
State of replica that is being written to
State of replica that is waiting to be recovered
State of replica that is under recovery
State of replica that is created for replication
Used in:
Used in:
* Rolling upgrade status
Used in:
Used in:
* An ID uniquely identifying a shared memory segment.
Used in: ,
The name of the client requesting the shared memory segment. This is purely for logging / debugging purposes.
* An ID uniquely identifying a slot within a shared memory segment.
Used in: ,
* Snapshot diff report entry
Used in:
* Snapshot diff report
Used in:
full path of the directory where snapshots were taken
* Information related to a snapshot TODO: add more information
TODO: do we need access time?
* Snapshottable directory listing
Used in:
* Status of a snapshottable directory: besides the normal information for a directory status, also include snapshot quota, number of snapshots, and the full path of the parent directory.
Used in:
Fields specific for snapshottable directory
Used in: , , , , ,
Quick restart
Reserved
Reserved
Reserved
* Common node information shared by all the nodes in the cluster
Used in: , ,
Layout version of the file system
File system namespace ID
ID of the cluster
File system creation time
* Types of recognized storage media.
Used in:
* A list of storage IDs.
* void request
(message has no fields)
* Version response from namenode.