diff --git a/.sqlx/query-8e88ec169f0ef14c7207944cd4c2c0970e302c0457f9e317ec752dc13a5b1393.json b/.sqlx/query-f8bb421e07e47f7b0a3b2789e368abfa6ad64152e8660e3efc7117b2d9320f22.json similarity index 67% rename from .sqlx/query-8e88ec169f0ef14c7207944cd4c2c0970e302c0457f9e317ec752dc13a5b1393.json rename to .sqlx/query-f8bb421e07e47f7b0a3b2789e368abfa6ad64152e8660e3efc7117b2d9320f22.json index e42da67..38cf9c7 100644 --- a/.sqlx/query-8e88ec169f0ef14c7207944cd4c2c0970e302c0457f9e317ec752dc13a5b1393.json +++ b/.sqlx/query-f8bb421e07e47f7b0a3b2789e368abfa6ad64152e8660e3efc7117b2d9320f22.json @@ -1,6 +1,6 @@ { "db_name": "PostgreSQL", - "query": "SELECT rb.blob_cid, rb.record_uri\n FROM record_blobs rb\n LEFT JOIN blobs b ON rb.blob_cid = b.cid\n WHERE rb.repo_id = $1 AND b.cid IS NULL AND rb.blob_cid > $2\n ORDER BY rb.blob_cid\n LIMIT $3", + "query": "SELECT rb.blob_cid, rb.record_uri\n FROM record_blobs rb\n LEFT JOIN blobs b ON rb.blob_cid = b.cid AND b.created_by_user = $1\n WHERE rb.repo_id = $1 AND b.cid IS NULL AND rb.blob_cid > $2\n ORDER BY rb.blob_cid\n LIMIT $3", "describe": { "columns": [ { @@ -26,5 +26,5 @@ false ] }, - "hash": "8e88ec169f0ef14c7207944cd4c2c0970e302c0457f9e317ec752dc13a5b1393" + "hash": "f8bb421e07e47f7b0a3b2789e368abfa6ad64152e8660e3efc7117b2d9320f22" } diff --git a/crates/tranquil-db/src/postgres/blob.rs b/crates/tranquil-db/src/postgres/blob.rs index f0a1f48..527885a 100644 --- a/crates/tranquil-db/src/postgres/blob.rs +++ b/crates/tranquil-db/src/postgres/blob.rs @@ -246,7 +246,7 @@ impl BlobRepository for PostgresBlobRepository { let results = sqlx::query!( r#"SELECT rb.blob_cid, rb.record_uri FROM record_blobs rb - LEFT JOIN blobs b ON rb.blob_cid = b.cid + LEFT JOIN blobs b ON rb.blob_cid = b.cid AND b.created_by_user = $1 WHERE rb.repo_id = $1 AND b.cid IS NULL AND rb.blob_cid > $2 ORDER BY rb.blob_cid LIMIT $3"#, diff --git a/crates/tranquil-pds/tests/store_parity.rs b/crates/tranquil-pds/tests/store_parity.rs index fc1f656..870d023 100644 --- a/crates/tranquil-pds/tests/store_parity.rs +++ b/crates/tranquil-pds/tests/store_parity.rs @@ -1061,9 +1061,6 @@ async fn parity_blob_shared_between_repos() { .is_empty() ); } - - assert_eq!(f.pg.blob.sum_blob_storage().await.unwrap(), 100); - assert_eq!(f.store.blob.sum_blob_storage().await.unwrap(), 100); } #[tokio::test] diff --git a/crates/tranquil-store/src/metastore/blob_ops.rs b/crates/tranquil-store/src/metastore/blob_ops.rs index 69f9165..7a2e5f5 100644 --- a/crates/tranquil-store/src/metastore/blob_ops.rs +++ b/crates/tranquil-store/src/metastore/blob_ops.rs @@ -339,7 +339,11 @@ impl BlobOps { if acc.contains_key(&cid_str) { return Ok(()); } - let exists = self.get_blob_content(&cid_link)?.is_some(); + let exists = self + .repo_data + .get(blob_meta_key(user_hash, &cid_str).as_slice()) + .map_err(MetastoreError::Fjall)? + .is_some(); if !exists { acc.insert(cid_str, record_uri.clone()); }