MCPcopy Create free account
hub / github.com/clockworklabs/SpacetimeDB / delete_internal_skip_pointer_map

Method delete_internal_skip_pointer_map

crates/table/src/table.rs:1211–1228  ·  view source on GitHub ↗

Deletes a row in the page manager without deleting it logically in the pointer map. # Safety `ptr` must point to a valid, live row in this table.

(
        &mut self,
        blob_store: &mut dyn BlobStore,
        ptr: RowPointer,
    )

Source from the content-addressed store, hash-verified

1209 ///
1210 /// `ptr` must point to a valid, live row in this table.
1211 pub unsafe fn delete_internal_skip_pointer_map(
1212 &mut self,
1213 blob_store: &mut dyn BlobStore,
1214 ptr: RowPointer,
1215 ) -> BlobNumBytes {
1216 debug_assert!(self.is_row_present(ptr));
1217 // Delete the physical row.
1218 //
1219 // SAFETY:
1220 // - `ptr` points to a valid row in this table, per our invariants.
1221 // - `self.row_size` known to be consistent with `self.pages`,
1222 // as the two are tied together in `Table::new`.
1223 unsafe {
1224 self.inner
1225 .pages
1226 .delete_row(&self.inner.visitor_prog, self.row_size(), ptr, blob_store)
1227 }
1228 }
1229
1230 /// Deletes the row identified by `ptr` from the table.
1231 ///

Callers 5

updateMethod · 0.80
delete_by_row_valueMethod · 0.80
confirm_updateMethod · 0.80
delete_internalMethod · 0.80
delete_equal_rowMethod · 0.80

Calls 2

row_sizeMethod · 0.80
delete_rowMethod · 0.45

Tested by

no test coverage detected