Skip to content

Node property pageRank already exists - But it doesn't #722

@Mintactus

Description

@Mintactus

GDS 2.8.0
Neo4j 5.22
GDS Python Client 1.11

The code below gives me this error

neo4j.exceptions.ClientError: {code: Neo.ClientError.Procedure.ProcedureCallFailed} {message: Failed to invoke procedure gds.pageRank.mutate: Caused by: java.lang.UnsupportedOperationException: Node property pageRank already exists}

	@__time
	def run_pagerank_centrality(self):
		projection = self.gds.graph.get(PROJECTION_NAME)
		for feature in DESIRED_COMBINED_FEATURES:
			pagerank_centrality_config= {
				'mutateProperty':'pageRank',
				'nodeLabels': [feature.title()],
				'maxIterations':1000,
				'dampingFactor':0.999,
				'scaler':'max',
				'relationshipWeightProperty':'converted users',
				'concurrency': 4
			}
			self.gds.pageRank.mutate(projection, **pagerank_centrality_config)

It loops using different labels ( features ) one at a time, none of these labels are overlapping or share the same nodes, therefor each pageRank execution is working on a different group of nodes even if each execution share the same projection. But it still crashed saying the property has already be defined.

It's like if one mutate execution of pageRank on the same projection creates a property x, it's not possible to execute it again with the same property even if the nodes filtering is different and doesn't mutate the same nodes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions