Source:
<code>private Map<Cell, Value> getRowsForSingleHost(final InetSocketAddress host, final TableReference tableRef, final List<byte[]> rows, final long startTs) { try { int rowCount = 0; final Map<Cell, Value> result = Maps.newHashMap(); int fetchBatchCount = configManager.getConfig().fetchBatchCount(); for (final List<byte[]> batch : Lists.partition(rows, fetchBatchCount)) { rowCount += batch.size(); result.putAll(clientPool.runWithRetryOnHost(host, new FunctionCheckedException<Client, Map<Cell, Value>, Exception>() { @Override public Map<Cell, Value> apply(Client client) throws Exception { SliceRange slice = new SliceRange( ByteBuffer.wrap(PtBytes.EMPTY_BYTE_ARRAY), ByteBuffer.wrap(PtBytes.EMPTY_BYTE_ARRAY), false, Integer.MAX_VALUE); SlicePredicate pred = new SlicePredicate(); pred.setSlice_range(slice); List<ByteBuffer> rowNames = wrap(batch); ColumnParent colFam = new ColumnParent(internalTableName(tableRef)); Map<ByteBuffer, List<ColumnOrSuperColumn>> results = multigetInternal( client, tableRef, rowNames, colFam, pred, readConsistency); Map<Cell, Value> ret = Maps.newHashMapWithExpectedSize(batch.size()); new ValueExtractor(ret).extractResults(results, startTs, ColumnSelection.all()); return ret; } @Override public String toString() { return "multiget_slice(" + tableRef.getQualifiedName() + ", " + batch.size() + " rows" + ")"; } })); } if (rowCount > fetchBatchCount) { log.warn("Rebatched in getRows a call to that attempted to multiget rows; " + "this may indicate overly-large batching on a higher level.\n{}", UnsafeArg.of("table", tableRef.getQualifiedName()), SafeArg.of("rowCount", rowCount), <START> UnsafeArg.of("stacktrace", CassandraKeyValueServices.getFilteredStackTrace("com.palantir"))); <END> } return ImmutableMap.copyOf(result); } catch (Exception e) { throw Throwables.throwUncheckedException(e); } }</code><technical_language>stacktraces considered safe</technical_language>

Target:
private Map<Cell, Value> getRowsForSingleHost(final InetSocketAddress host, final TableReference tableRef, final List<byte[]> rows, final long startTs) { try { int rowCount = 0; final Map<Cell, Value> result = Maps.newHashMap(); int fetchBatchCount = configManager.getConfig().fetchBatchCount(); for (final List<byte[]> batch : Lists.partition(rows, fetchBatchCount)) { rowCount += batch.size(); result.putAll(clientPool.runWithRetryOnHost(host, new FunctionCheckedException<Client, Map<Cell, Value>, Exception>() { @Override public Map<Cell, Value> apply(Client client) throws Exception { SliceRange slice = new SliceRange( ByteBuffer.wrap(PtBytes.EMPTY_BYTE_ARRAY), ByteBuffer.wrap(PtBytes.EMPTY_BYTE_ARRAY), false, Integer.MAX_VALUE); SlicePredicate pred = new SlicePredicate(); pred.setSlice_range(slice); List<ByteBuffer> rowNames = wrap(batch); ColumnParent colFam = new ColumnParent(internalTableName(tableRef)); Map<ByteBuffer, List<ColumnOrSuperColumn>> results = multigetInternal( client, tableRef, rowNames, colFam, pred, readConsistency); Map<Cell, Value> ret = Maps.newHashMapWithExpectedSize(batch.size()); new ValueExtractor(ret).extractResults(results, startTs, ColumnSelection.all()); return ret; } @Override public String toString() { return "multiget_slice(" + tableRef.getQualifiedName() + ", " + batch.size() + " rows" + ")"; } })); } if (rowCount > fetchBatchCount) { log.warn("Rebatched in getRows a call to that attempted to multiget rows; " + "this may indicate overly-large batching on a higher level.\n{}", UnsafeArg.of("table", tableRef.getQualifiedName()), SafeArg.of("rowCount", rowCount), SafeArg.of("stacktrace", CassandraKeyValueServices.getFilteredStackTrace("com.palantir"))); } return ImmutableMap.copyOf(result); } catch (Exception e) { throw Throwables.throwUncheckedException(e); } }