Skip to content

Commit 203d0fb

Browse files
committed
the little wcc stub should not unilaterally decide to close progress trackers or not; have the algorithms decide that
1 parent 1798d91 commit 203d0fb

File tree

4 files changed

+15
-5
lines changed

4 files changed

+15
-5
lines changed

algo/src/main/java/org/neo4j/gds/similarity/nodesim/NodeSimilarity.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ private LongUnaryOperator initComponents() {
221221
// run WCC to determine components
222222
progressTracker.beginSubTask();
223223
var wccParameters = new WccParameters(0D, concurrency);
224-
var disjointSets = wccStub.wcc(graph, wccParameters, ProgressTracker.NULL_TRACKER);
224+
var disjointSets = wccStub.wcc(graph, wccParameters, ProgressTracker.NULL_TRACKER, false);
225225
progressTracker.endSubTask();
226226
return disjointSets::setIdOf;
227227
}

algo/src/main/java/org/neo4j/gds/wcc/WccStub.java

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,12 @@ public WccStub(TerminationFlag terminationFlag, AlgorithmMachinery algorithmMach
4040
this.algorithmMachinery = algorithmMachinery;
4141
}
4242

43-
public DisjointSetStruct wcc(Graph graph, WccParameters parameters, ProgressTracker progressTracker) {
43+
public DisjointSetStruct wcc(
44+
Graph graph,
45+
WccParameters parameters,
46+
ProgressTracker progressTracker,
47+
boolean shouldReleaseProgressTracker
48+
) {
4449
var algorithm = new Wcc(
4550
graph,
4651
DefaultPool.INSTANCE,
@@ -50,6 +55,11 @@ public DisjointSetStruct wcc(Graph graph, WccParameters parameters, ProgressTrac
5055
terminationFlag
5156
);
5257

53-
return algorithmMachinery.runAlgorithmsAndManageProgressTracker(algorithm, progressTracker, true, parameters.concurrency());
58+
return algorithmMachinery.runAlgorithmsAndManageProgressTracker(
59+
algorithm,
60+
progressTracker,
61+
shouldReleaseProgressTracker,
62+
parameters.concurrency()
63+
);
5464
}
5565
}

algo/src/test/java/org/neo4j/gds/wcc/WccTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ private void assertResults(TestGraph graph) {
309309
var wccStub = new WccStub(TerminationFlag.RUNNING_TRUE, new AlgorithmMachinery());
310310

311311
var parameters = new WccParameters(0D, new Concurrency(4));
312-
var dss = wccStub.wcc(graph, parameters, ProgressTracker.NULL_TRACKER);
312+
var dss = wccStub.wcc(graph, parameters, ProgressTracker.NULL_TRACKER, true);
313313

314314
var actualCommunities = new ArrayList<Long>();
315315
graph.forEachNode(node -> actualCommunities.add(dss.setIdOf(node)));

applications/algorithms/community/src/main/java/org/neo4j/gds/applications/algorithms/community/CommunityAlgorithms.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -463,7 +463,7 @@ public DisjointSetStruct wcc(Graph graph, WccBaseConfig configuration) {
463463

464464
var wccStub = new WccStub(terminationFlag, algorithmMachinery);
465465

466-
return wccStub.wcc(graph, configuration.toParameters(), progressTracker);
466+
return wccStub.wcc(graph, configuration.toParameters(), progressTracker, true);
467467
}
468468

469469
private Task constructKMeansProgressTask(Graph graph, KmeansBaseConfig configuration) {

0 commit comments

Comments
 (0)