mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-16 05:47:09 +08:00
fix(core): local blobs are not being deleted when gc in unused blobs settings (#9960)
This commit is contained in:
@@ -63,12 +63,6 @@ export class UnusedBlobs extends Entity {
|
||||
);
|
||||
}
|
||||
|
||||
private get localFlavourProvider() {
|
||||
return this.flavoursService.flavours$.value.find(
|
||||
f => f.flavour === 'local'
|
||||
);
|
||||
}
|
||||
|
||||
async listBlobs() {
|
||||
const blobs = await this.flavourProvider?.listBlobs(
|
||||
this.workspaceService.workspace.id
|
||||
@@ -90,14 +84,6 @@ export class UnusedBlobs extends Entity {
|
||||
blob,
|
||||
permanent
|
||||
);
|
||||
|
||||
if (this.localFlavourProvider !== this.flavourProvider) {
|
||||
await this.localFlavourProvider?.deleteBlob(
|
||||
this.workspaceService.workspace.id,
|
||||
blob,
|
||||
permanent
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
async getUnusedBlobs(abortSignal?: AbortSignal) {
|
||||
|
||||
@@ -386,6 +386,17 @@ class CloudWorkspaceFlavourProvider implements WorkspaceFlavourProvider {
|
||||
serverBaseUrl: this.server.serverMetadata.baseUrl,
|
||||
});
|
||||
await cloudStorage.delete(blob, permanent);
|
||||
|
||||
// should also delete from local storage
|
||||
const storage = new this.BlobStorageType({
|
||||
id: id,
|
||||
flavour: this.flavour,
|
||||
type: 'workspace',
|
||||
});
|
||||
storage.connection.connect();
|
||||
await storage.connection.waitForConnected();
|
||||
await storage.delete(blob, permanent);
|
||||
storage.connection.disconnect();
|
||||
}
|
||||
|
||||
onWorkspaceInitialized(workspace: Workspace): void {
|
||||
|
||||
Reference in New Issue
Block a user