Tpt
822dd60596
Fixes invalid database generated from bulk load
...
Adds an invariant validation test
3 years ago
Tpt
ad4bfe35c2
Fixes typos in the documentation
3 years ago
Tpt
203bd4c080
Adds a backup system
...
RocksDB provides a great cheap backup feature thanks to the immutable SST storage.
Sadly it is not compatible with in-memory databases which do not rely on the SST files.
3 years ago
Tpt
b9ef40df07
Avoids freeing null values
3 years ago
Tpt
32d3f0782b
Fixes some new clippy warnings
3 years ago
Tpt
7d58f451bd
Runs LLVM address sanitizer and fixes found bugs
3 years ago
Tpt
fc26fa87a5
Makes a lot of dumb functions inline
3 years ago
Tpt
ec5c7c86be
Improves RDF I/O ParseError
3 years ago
Tpt
f5545f1948
Makes Oxigraph model standalone as oxrdf
...
Allows to reuse it in other crates like spargebra
3 years ago
Tpt
4337349aad
Moves xsd module to root
...
Makes "model" module more stand-alone
3 years ago
Tpt
a91ea89fff
Moves str2id outside of transactions
...
Allows avoiding conflicts and reducing transactional guarantees
3 years ago
Tpt
72a17c4f72
Avoids using std::io::Error where possible
3 years ago
Tpt
a33dbb6d06
Avoids abusing std::io::Error
...
Introduces new specific errors and make them implement Into<io::Error> for compatibility
3 years ago
Tpt
18ec80c362
Exposes more of RocksDB internal Status struct
3 years ago
Tpt
bada850284
Txn conflict: allows the OS to do something else before retrying
3 years ago
Tpt
44d1a5f04c
Makes bulk load partial insertions atomic
...
Ensures that the stores does not end up in an inconsistent state.
3 years ago
Tpt
f64001906c
Minor documentation improvements
3 years ago
Tpt
8d20f65890
Adds back in memory WASM support
3 years ago
Tpt
ed17e86853
Renames write_stt_files to insert_stt_files
3 years ago
Tpt
a3e40556da
Automatically retries transactions on failure
3 years ago
Tpt
eb4fb8254a
Lock the graph name when clearing a named graph
...
Makes sure we conflict if a quad is inserted in the graph while we clear it
3 years ago
Tpt
e99d6f4ad0
Makes bulk loader multithreaded
3 years ago
Tpt
b9d4f912dc
Bulk load: avoid not needed lookup
...
It's fine to have some extra inserts and avoid reading the DB state
3 years ago
Tpt
7bb41e655e
SPARQL: we do not need to ensure strings exist anymore
3 years ago
Tpt
e59c4612b2
RocksDB: Removes merge and compact operators
3 years ago
Tpt
b7ee3a6767
Removes string usage counting
3 years ago
Tpt
2c304aa29d
Share environment between RocksDB instances
...
Allow multiple RocksDB instance in the same process to share resources instead of fighting to get them.
3 years ago
Tpt
6f44a5956b
Simplifies bulk load API
3 years ago
Tpt
7b1c4e0ad5
Returns a clean error on transaction read after commit
3 years ago
Tpt
607aa0b0dd
WIP: Transactions
3 years ago
Tpt
9f414c13fd
Simplifies RocksDB SST API
3 years ago
Tpt
367a1b4585
Reuse RocksDB transactional DB
...
First step for snapshots and transactions support
3 years ago
Tpt
196d6d6576
Adds bulk load by directly write RocksDB SSTs
3 years ago
Tpt
1d3108d27f
RocksDB: Uses the most recent storage format
3 years ago
Tpt
569000b5ea
Storage: adds write batch
...
Atomic insertions and huge performance improvements for RocksDB
3 years ago
Tpt
986d3e60bb
RocksDB: bulk load
...
TODO: we do a lot of lookups during load for GC, so the option is not very useful
3 years ago
Tpt
98f9a307b8
Exposes a function to compact the database
...
Use it after load
3 years ago
Tpt
8c0b4f5322
RocksDB: do not use transactiondb for now.
...
Not used yet
3 years ago
Tpt
00ad6e634f
Cleaner storage backend architecture
3 years ago
Tpt
73cd761229
Removes unused TermEncoder
3 years ago
Tpt
0ee25d7579
RocksDB: Adds prefix bloom filters
3 years ago
Tpt
821cac9c4c
Sets some RocksDB options doing perf improvements
3 years ago
Tpt
25c808c9eb
Reduces successive merge
...
Fixes awful reads
3 years ago
Tpt
20376ba0dd
Makes Clippy happy
3 years ago
Tpt
5da9fd4f14
Fixes Storage::contains_str
...
Takes care of the counter if not a key might be removed after the next compaction even if assumed to be contained
3 years ago
Tpt
a7a0b7bbf3
String garbage collector: do not decrease counters set to MAX.
...
We do not keep track of counting beyond i32::MAX
3 years ago
Tpt
0c9a46fcd1
Adds runtime checks to insert_term_values
...
Might help to spot logic bugs in the future
3 years ago
Tpt
4c71327c95
RocksDB: Simplifies SlicesIterator
3 years ago
Tpt
cddb5900ef
Storage: Manages strings GC using merge operation
...
Removes old strings during compaction
3 years ago
Tpt
045f40ccad
Configures RocksDB logs to avoid logs overloading
3 years ago