1234567891011121314151617181920212223242526272829303132333435363738394041 |
- /** @file store_mdb.h
- *
- * @brief LMDB graph store backend.
- *
- * This module stores triples in a LMDB embedded store, organized
- * into named graphs. The store is optimized and indexed for fast lookup of any
- * number of bound terms.
- *
- * The store must be first initialized once, to create the environment files
- * and folders as well as the internal databases, then it must be opened once
- * per session. Within that session multiple R/W operations can be performed
- * using transactions.
- *
- * Note that, even though the terms "graph", "context", etc. are used, no code
- * in this module checks for valid RDF data. In theory any term can be any
- * binary data. This allows using the store for non-RDF graph data.
- *
- * TODO more doc
- */
- #ifndef _LSUP_STORE_MDB_H
- #define _LSUP_STORE_MDB_H
- #include "lmdb.h"
- #include "buffer.h"
- #include "store.h"
- // FIXME find a better cross-platform path.
- #define DEFAULT_ENV_PATH "./mdb_store"
- // RAMdisk path for MDB volatile store.
- #define LSUP_MDB_RAMDISK_PATH TMPDIR "/lsup_mem_graph"
- extern const LSUP_StoreInt mdbstore_int; /// MDB store interface.
- extern const LSUP_StoreIteratorInt mdbiter_int; /// MDB iterator interface.
- #endif /* _LSUP_STORE_MDB_H */
|