code: private CompletableFuture<KvStateResponse> getKvState(
  			final JobID jobId,
  			final String queryableStateName,
  			final int keyHashCode,
  			final byte[] serializedKeyAndNamespace) {
  		LOG.debug("Sending State Request to {}.", remoteAddress);
  		try {
  			KvStateRequest request = new KvStateRequest(jobId, queryableStateName, keyHashCode, serializedKeyAndNamespace);
  			return client.sendRequest(remoteAddress, request);
  		} catch (Exception e) {
  			LOG.error("Unable to send KVStateRequest: ", e);
  			return FutureUtils.getFailedFuture(e);
  		}
  	}
docs: Returns a future holding the serialized request result.
  
  @param jobId                     JobID of the job the queryable state
  belongs to
  @param queryableStateName        Name under which the state is queryable
  @param keyHashCode               Integer hash code of the key (result of
  a call to {@link Object#hashCode()}
  @param serializedKeyAndNamespace Serialized key and namespace to query
  KvState instance with
  @return Future holding the serialized result