private void setReservedMetadataChunkId(String chunkId) throws RouterException {
      try {
        reservedMetadataChunkId = new BlobId(chunkId, clusterMap);
      } catch (Exception exception) {
        reservedMetadataIdMetrics.stitchedBlobMetadataIdDeserErrorCount.inc();
        throw new RouterException("Invalid metadata chunk id of chunks in the stitched operation.",
            RouterErrorCode.InvalidOrMismatchedStitchBlobReservedMetadataChunkId);
      }
      if (reservedMetadataChunkId.getBlobDataType() != BlobDataType.METADATA) {
        reservedMetadataIdMetrics.stitchedBlobMetadataIdDeserErrorCount.inc();
        throw new RouterException("The blob data type of the metadata blob should be BlobIdType.METADATA",
            RouterErrorCode.InvalidOrMismatchedStitchBlobReservedMetadataChunkId);
      }
    }
Validate and set the specified chunkId as the reserved metadata chunk id.
@param chunkId The chunk id to set.
@throws RouterException In case of any issue during validation.
ambry-router/src/main/java/com/github/ambry/router/PutOperation.java