code: private void loadValuesInternal(List<Data> keys, boolean replaceExistingValues) throws Exception {
          if (!replaceExistingValues) {
              Future removeKeysFuture = removeExistingKeys(keys);
              removeKeysFuture.get();
          }
          removeUnloadableKeys(keys);
          if (keys.isEmpty()) {
              return;
          }
          List<Future> futures = doBatchLoad(keys);
          for (Future future : futures) {
              future.get();
          }
      }
docs: Loads the values for the provided keys and invokes partition operations
  to put the loaded entries into the partition record store. The method
  will block until all entries have been put into the partition record store.
  <p>
  Unloadable keys will be removed before loading the values. Also, if
  {@code replaceExistingValues} is {@code false}, the list of keys will
  be filtered for existing keys in the partition record store.
  
  @param keys                  the keys for which values will be loaded
  @param replaceExistingValues if the existing entries for the keys should
  be replaced with the loaded values
  @throws Exception if there is an exception when invoking partition operations
  to remove the existing keys or to put the loaded values into
  the record store