Skip to main content

open_new_database_from_transport_on_pool

Function open_new_database_from_transport_on_pool 

Source
pub async fn open_new_database_from_transport_on_pool(
    pool: Option<&SqlitePool>,
    transport: SqliteTransportHandle,
    actor_id: String,
    generation: u64,
    rt_handle: Handle,
    metrics: Option<Arc<dyn SqliteVfsMetrics>>,
) -> Result<NativeDatabaseHandle>
Expand description

Opens the database of an actor whose start showed its storage was never written, on the runtime’s shared worker pool, without reading any page first: a new database has none.

Its first write carries no expected head, which storage accepts only while the database is empty, so a database that turns out to hold pages fails that write with a head fence mismatch instead of being overwritten.