assemblee-virtuelle / assemblee-virtuelle/semapps

The triplestore.deleteOrphanBlankNodes action is very slow on big datasets

Open
#1,424 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
103
Forks
14
Avg merge
1m
Merged PRs (30d)
2

Description

When calling the `ldp.remote.store`, we call the `triplestore.deleteOrphanBlankNodes` action without waiting for it, but the Fuseki query is very long (the bigger the dataset, the longer it is) and it blocks all following requests.

https://github.com/assemblee-virtuelle/semapps/blob/257e67833345565e4034b0a0caba23745c2e01df/src/middleware/packages/ldp/services/remote/actions/store.ts#L81

This code to delete orphan blank nodes is already deleted in the WIP SemApps 2.0 branch, because now that all triples are stored in separate graphs, it's much easier to delete them all.

But until we switch to SemApps 2.0, I suggest to remove the calls to this action and it should much improve the performances.

Contributor guide

No contributing guide indexed for this repository

Research direction

Review src/middleware/packages/ldp/services/remote/actions/store.ts around line 81, where ldp.remote.store calls triplestore.deleteOrphanBlankNodes without waiting. Remove those calls for the pre-SemApps 2.0 implementation, then verify that store requests no longer trigger the long Fuseki query and that following requests are not blocked.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, typescript
Domain
backend, databases, performance
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.