Every data call runs in its own repository transaction, so concurrent calls share no
transaction state. Inside execute, the task receives a StoreClient bound to a single
repository transaction: its mutations are buffered and flushed to the repository as one update when the task
completes, then committed with the transaction. Queries within the task do not observe the task's own pending
mutations, so a read depending on a write must run in a separate execute call.
Important
Transaction Isolation — Determined by the supplied Repository: native transactions keep the reads of
an execute task consistent, while its mutations are always buffered and applied as a single update on commit.
Important
Mutation Events — Limited to mutations issued through this store; mutations from other clients on the
underlying repository are not observed.
Important
Embedded Resources — Named by IRIs in the repository, never by blank nodes. The store skolemises the
embedded resources it writes, and a graph loaded by other means must be skolemised before the store reads it. A
blank node found where an embedded resource is expected fails the whole retrieval with a
RangeError, so no embedded resource and none of the content requested under it ever goes
silently missing from a retrieved result, whatever tool loaded the graph into the repository.
Creates a SPARQL store backed by a Repository.
Every data call runs in its own repository transaction, so concurrent calls share no transaction state. Inside execute, the task receives a StoreClient bound to a single repository transaction: its mutations are buffered and flushed to the repository as one update when the task completes, then committed with the transaction. Queries within the task do not observe the task's own pending mutations, so a read depending on a write must run in a separate
executecall.Transaction Isolation — Determined by the supplied Repository: native transactions keep the reads of an
executetask consistent, while its mutations are always buffered and applied as a single update on commit.Mutation Events — Limited to mutations issued through this store; mutations from other clients on the underlying repository are not observed.
Embedded Resources — Named by IRIs in the repository, never by blank nodes. The store skolemises the embedded resources it writes, and a graph loaded by other means must be skolemised before the store reads it. A blank node found where an embedded resource is expected fails the whole retrieval with a RangeError, so no embedded resource and none of the content requested under it ever goes silently missing from a retrieved result, whatever tool loaded the graph into the repository.