No cache invalidation on blob deletion (#1008)
no invalidate on blob deletion
This commit is contained in:
parent
b20a5045a2
commit
51503384b6
@ -43,8 +43,6 @@ export function createServices(resources: {
|
||||
messageDispatcher,
|
||||
blobstore,
|
||||
backgroundQueue,
|
||||
imgUriBuilder,
|
||||
imgInvalidator,
|
||||
labeler,
|
||||
),
|
||||
moderation: ModerationService.creator(
|
||||
|
@ -13,8 +13,6 @@ import { Blob as BlobTable } from '../../db/tables/blob'
|
||||
import * as img from '../../image'
|
||||
import { BlobRef } from '@atproto/lexicon'
|
||||
import { PreparedDelete, PreparedUpdate } from '../../repo'
|
||||
import { ImageInvalidator } from '../../image/invalidator'
|
||||
import { ImageUriBuilder } from '../../image/uri'
|
||||
import { BackgroundQueue } from '../../event-stream/background-queue'
|
||||
|
||||
export class RepoBlobs {
|
||||
@ -22,8 +20,6 @@ export class RepoBlobs {
|
||||
public db: Database,
|
||||
public blobstore: BlobStore,
|
||||
public backgroundQueue: BackgroundQueue,
|
||||
public imgUriBuilder: ImageUriBuilder,
|
||||
public imgInvalidator: ImageInvalidator,
|
||||
) {}
|
||||
|
||||
async addUntetheredBlob(
|
||||
@ -143,18 +139,9 @@ export class RepoBlobs {
|
||||
if (blobsToDelete.length > 0) {
|
||||
this.db.onCommit(() => {
|
||||
this.backgroundQueue.add(async () => {
|
||||
await Promise.allSettled([
|
||||
...blobsToDelete.map((cid) =>
|
||||
this.blobstore.delete(CID.parse(cid)),
|
||||
),
|
||||
...blobsToDelete.map((cid) => {
|
||||
const paths = ImageUriBuilder.commonSignedUris.map((id) => {
|
||||
const uri = this.imgUriBuilder.getCommonSignedUri(id, cid)
|
||||
return uri.replace(this.imgUriBuilder.endpoint, '')
|
||||
})
|
||||
return this.imgInvalidator.invalidate(cid, paths)
|
||||
}),
|
||||
])
|
||||
await Promise.allSettled(
|
||||
blobsToDelete.map((cid) => this.blobstore.delete(CID.parse(cid))),
|
||||
)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
@ -23,8 +23,6 @@ import { RecordService } from '../record'
|
||||
import * as sequencer from '../../sequencer'
|
||||
import { Labeler } from '../../labeler'
|
||||
import { wait } from '@atproto/common'
|
||||
import { ImageInvalidator } from '../../image/invalidator'
|
||||
import { ImageUriBuilder } from '../../image/uri'
|
||||
import { BackgroundQueue } from '../../event-stream/background-queue'
|
||||
|
||||
export class RepoService {
|
||||
@ -36,17 +34,9 @@ export class RepoService {
|
||||
public messageDispatcher: MessageQueue,
|
||||
public blobstore: BlobStore,
|
||||
public backgroundQueue: BackgroundQueue,
|
||||
public imgUriBuilder: ImageUriBuilder,
|
||||
public imgInvalidator: ImageInvalidator,
|
||||
public labeler: Labeler,
|
||||
) {
|
||||
this.blobs = new RepoBlobs(
|
||||
db,
|
||||
blobstore,
|
||||
backgroundQueue,
|
||||
imgUriBuilder,
|
||||
imgInvalidator,
|
||||
)
|
||||
this.blobs = new RepoBlobs(db, blobstore, backgroundQueue)
|
||||
}
|
||||
|
||||
static creator(
|
||||
@ -54,8 +44,6 @@ export class RepoService {
|
||||
messageDispatcher: MessageQueue,
|
||||
blobstore: BlobStore,
|
||||
backgroundQueue: BackgroundQueue,
|
||||
imgUriBuilder: ImageUriBuilder,
|
||||
imgInvalidator: ImageInvalidator,
|
||||
labeler: Labeler,
|
||||
) {
|
||||
return (db: Database) =>
|
||||
@ -65,8 +53,6 @@ export class RepoService {
|
||||
messageDispatcher,
|
||||
blobstore,
|
||||
backgroundQueue,
|
||||
imgUriBuilder,
|
||||
imgInvalidator,
|
||||
labeler,
|
||||
)
|
||||
}
|
||||
@ -86,8 +72,6 @@ export class RepoService {
|
||||
this.messageDispatcher,
|
||||
this.blobstore,
|
||||
this.backgroundQueue,
|
||||
this.imgUriBuilder,
|
||||
this.imgInvalidator,
|
||||
this.labeler,
|
||||
)
|
||||
return fn(srvc)
|
||||
|
Loading…
x
Reference in New Issue
Block a user