From 8681777bd280103cd2000d6dfc8c81228b7b8dbf Mon Sep 17 00:00:00 2001 From: Janak Ramakrishnan Date: Tue, 17 May 2016 17:46:46 +0000 Subject: Batch package retrieval for rbuildfiles so that even if a single file has a large number of rbuildfile dependencies, we retrieve them in batches of at most BATCH_CALLBACK_SIZE. -- MOS_MIGRATED_REVID=122540401 --- .../com/google/devtools/build/lib/query2/SkyQueryEnvironment.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java') diff --git a/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java b/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java index c127f42570..9ab241f111 100644 --- a/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java +++ b/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java @@ -920,8 +920,10 @@ public class SkyQueryEnvironment extends AbstractBlazeQueryEnvironment { } } if (resultKeys.size() >= BATCH_CALLBACK_SIZE) { - callback.process( - getBuildFilesForPackageValues(graph.getSuccessfulValues(resultKeys).values())); + for (Iterable batch : Iterables.partition(resultKeys, BATCH_CALLBACK_SIZE)) { + callback.process( + getBuildFilesForPackageValues(graph.getSuccessfulValues(batch).values())); + } resultKeys.clear(); } } -- cgit v1.2.3