code: public BlockInfo queryBlockByHash(byte[] blockHash) throws InvalidArgumentException, ProposalException {
          return queryBlockByHash(getShuffledPeers(EnumSet.of(PeerRole.LEDGER_QUERY)), blockHash);
      }
docs: query this channel for a Block by the block hash.
  The request is retried on each peer on the channel till successful.
  
  <STRONG>This method may not be thread safe if client context is changed!</STRONG>
  
  @param blockHash the hash of the Block in the chain
  @return the {@link BlockInfo} with the given block Hash
  @throws InvalidArgumentException
  @throws ProposalException