assemblee-virtuelle / assemblee-virtuelle/semapps
The triplestore.deleteOrphanBlankNodes action is very slow on big datasets
- 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