Skip to content

Commit a16785f

Browse files
authored
Merge pull request #12078 from s1ck/pform-182-arrow-serialization-forgets-idmap-implementation
pform 182 arrow serialization forgets idmap implementation
2 parents 0fdf24c + c74d9e0 commit a16785f

2 files changed

Lines changed: 11 additions & 0 deletions

File tree

core/src/main/java/org/neo4j/gds/beta/generator/RandomGraphGenerator.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ public final class RandomGraphGenerator {
8282
private final Optional<NodeLabelProducer> maybeNodeLabelProducer;
8383
private final List<PropertyProducer<double[]>> relationshipPropertyProducers;
8484
private final Map<NodeLabel, Set<PropertyProducer<?>>> nodePropertyProducers;
85+
private final Optional<String> idMapBuilderType;
8586
private final AdjacencyListBehavior.Factory adjacencyCompressorFactory;
8687
private final boolean forceDag;
8788
private final HugeLongArray randomDagMapping;
@@ -98,6 +99,7 @@ public final class RandomGraphGenerator {
9899
Aggregation aggregation,
99100
Direction direction,
100101
AllowSelfLoops allowSelfLoops,
102+
Optional<String> idMapBuilderType,
101103
AdjacencyListBehavior.Factory adjacencyCompressorFactory,
102104
boolean forceDag,
103105
boolean inverseIndex
@@ -112,6 +114,7 @@ public final class RandomGraphGenerator {
112114
this.aggregation = aggregation;
113115
this.direction = direction;
114116
this.allowSelfLoops = allowSelfLoops;
117+
this.idMapBuilderType = idMapBuilderType;
115118
this.forceDag = forceDag;
116119
this.random = new Random(seed);
117120
this.propertyValueRandom = new Random(seed);
@@ -155,6 +158,7 @@ public GraphStore generateGraphstore(DatabaseId databaseId, Concurrency concurre
155158
private RandomGraphSpecs generateSpecs() {
156159
var nodesBuilder = GraphFactory.initNodesBuilder()
157160
.maxOriginalId(nodeCount)
161+
.idMapBuilderType(idMapBuilderType)
158162
.hasLabelInformation(maybeNodeLabelProducer.isPresent())
159163
.build();
160164

core/src/main/java/org/neo4j/gds/beta/generator/RandomGraphGeneratorBuilder.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ public class RandomGraphGeneratorBuilder {
4646
private Direction direction = Direction.DIRECTED;
4747
private RandomGraphGeneratorConfig.AllowSelfLoops allowSelfLoops = RandomGraphGeneratorConfig.AllowSelfLoops.NO;
4848
private RelationshipType relationshipType = RelationshipType.of("REL");
49+
private Optional<String> idMapBuilderType = Optional.empty();
4950
private AdjacencyListBehavior.Factory adjacencyCompressorFactory = null;
5051
private boolean forceDag = false;
5152
private boolean inverseIndex = false;
@@ -122,6 +123,11 @@ public RandomGraphGeneratorBuilder inverseIndex(boolean inverseIndex) {
122123
return this;
123124
}
124125

126+
public RandomGraphGeneratorBuilder idMapBuilderType(String idMapBuilderType) {
127+
this.idMapBuilderType = Optional.of(idMapBuilderType);
128+
return this;
129+
}
130+
125131
public RandomGraphGeneratorBuilder adjacencyCompressorFactory(AdjacencyListBehavior.Factory adjacencyCompressorFactory) {
126132
this.adjacencyCompressorFactory = adjacencyCompressorFactory;
127133
return this;
@@ -141,6 +147,7 @@ public RandomGraphGenerator build() {
141147
aggregation,
142148
direction,
143149
allowSelfLoops,
150+
idMapBuilderType,
144151
adjacencyCompressorFactory,
145152
forceDag,
146153
inverseIndex

0 commit comments

Comments
 (0)