Expand description
Net document storage backed by sqlite3.
We store most objects in sqlite tables, except for very large ones, which we store as “blob” files in a separate directory.
Modules§
- blob_
consistency 🔒 - Some notes on blob consistency, and the lack thereof.
- blob_
handle 🔒 - Functionality related to uncommitted blobs.
Structs§
- Bridge
Config 🔒bridge-client
- A relay not listed on the main tor network, used for anticensorship.
- Sqlite
Store 🔒 - Local directory cache using a Sqlite3 connection.
Enums§
- Absent
Blob 🔒 - Specific error returned when a blob will not be read.
Constants§
- COUNT_
EXTDOC_ 🔒BY_ PATH - Query: find whether an ExtDoc is listed.
- DELETE_
BRIDGEDESC 🔒bridge-client
- Query: Remove a cached bridge descriptor
- DELETE_
EXTDOC_ 🔒BY_ FILENAME - Query: Discard an extdoc with a given path.
- DROP_
OLD_ 🔒AUTHCERTS - Query: Discard every expired authority certificate.
- DROP_
OLD_ 🔒BRIDGEDESCS bridge-client
- Query: Discard every bridge descriptor that is too old, or from the future. (Both ?=now.)
- DROP_
OLD_ 🔒CONSENSUSES - Query: Discard every consensus that’s been expired for at least two days.
- DROP_
OLD_ 🔒EXTDOCS - Query: Discard every expired extdoc.
- DROP_
OLD_ 🔒MICRODESCS - Query: Discard every microdescriptor that hasn’t been listed for 3 months.
- DROP_
OLD_ 🔒ROUTERDESCS - Query: Discard every router descriptor that hasn’t been listed for 3 months.
- FIND_
ALL_ 🔒EXTDOC_ FILENAMES - Query: List all extdoc filenames.
- FIND_
AUTHCERT 🔒 - Query: Find the authority certificate with given key digests.
- FIND_
BRIDGEDESC 🔒bridge-client
- Query: Find a cached bridge descriptor
- FIND_
CONSENSUS 🔒 - Query: find the latest-expiring microdesc consensus, regardless of pending status.
- FIND_
CONSENSUS_ 🔒AND_ META_ BY_ DIGEST_ OF_ SIGNED - Look up a consensus by its digest-of-signed-part string.
- FIND_
CONSENSUS_ 🔒P - Query: find the latest-expiring microdesc consensus with a given pending status.
- FIND_
EXPIRED_ 🔒EXTDOCS - Query: find every ExtDocs member that has expired.
- FIND_
LATEST_ 🔒CONSENSUS_ META - Query: Find the valid-after time for the latest-expiring non-pending consensus of a given flavor.
- FIND_
LATEST_ 🔒PROTOCOL_ STATUS - Query: Get the latest protocol status.
- FIND_MD 🔒
- Query: find the microdescriptor with a given hex-encoded sha256 digest
- FIND_RD 🔒
routerdesc
- Query: find the router descriptors with a given hex-encoded sha1 digest
- FIND_
UNREFERENCED_ 🔒CONSENSUS_ EXTDOCS - Query: Find all consensus extdocs that are not referenced in the consensus table.
- INSERT_
AUTHCERT 🔒 - Query: Add a new AuthCert
- INSERT_
BRIDGEDESC 🔒bridge-client
- Query: Record a cached bridge descriptor
- INSERT_
CONSENSUS 🔒 - Query: Add a new consensus.
- INSERT_
EXTDOC 🔒 - Query: Add a new entry to ExtDocs.
- INSERT_
MD 🔒 - Query: Add a new microdescriptor
- INSERT_
RD 🔒routerdesc
- Query: Add a new router descriptor
- INSTALL_
V0_ 🔒SCHEMA - Set up the tables for the arti cache schema in a sqlite database.
- MARK_
CONSENSUS_ 🔒NON_ PENDING - Query: Update the consensus whose digest field is ‘digest’ to call it no longer pending.
- REMOVE_
CONSENSUS 🔒 - Query: Remove the consensus with a given digest field.
- SCHEMA_
VERSION 🔒 - Version number used for this version of the arti cache schema.
- UPDATE_
MD_ 🔒LISTED - Query: Change the time when a given microdescriptor was last listed.
- UPDATE_
PROTOCOL_ 🔒STATUS - Query: Update the latest protocol status.
- UPDATE_
SCHEMA 🔒 - Update the database schema, from each version to the next
- UPDATE_
SCHEMA_ 🔒VERSION - Update the database schema version tracking, from each version to the next
Functions§
- cmeta_
from_ 🔒row - Create a ConsensusMeta from a
Row
returned by one ofFIND_LATEST_CONSENSUS_META
orFIND_CONSENSUS_AND_META_BY_DIGEST
. - digest_
from_ 🔒dstr - Convert a hexadecimal sha3-256 “digest string” as used in the digest column from the database into an array.
- digest_
from_ 🔒hex - Convert a hexadecimal sha3-256 digest from the database into an array.