Page MenuHomePhabricator

D13768.id45319.diff
No OneTemporary

D13768.id45319.diff

diff --git a/keyserver/src/database/migration-config.js b/keyserver/src/database/migration-config.js
--- a/keyserver/src/database/migration-config.js
+++ b/keyserver/src/database/migration-config.js
@@ -6,6 +6,8 @@
import genesis from 'lib/facts/genesis.js';
import { policyTypes } from 'lib/facts/policies.js';
import { specialRoles } from 'lib/permissions/special-roles.js';
+import { inviteLinkBlobHash } from 'lib/shared/invite-links.js';
+import type { InviteLinkWithHolder } from 'lib/types/link-types.js';
import { messageTypes } from 'lib/types/message-types-enum.js';
import {
threadPermissions,
@@ -22,6 +24,8 @@
import { dbQuery, SQL } from '../database/database.js';
import { processMessagesInDBForSearch } from '../database/search-utils.js';
import { deleteThread } from '../deleters/thread-deleters.js';
+import { fetchAllPrimaryInviteLinks } from '../fetchers/link-fetchers.js';
+import { deleteBlob } from '../services/blob.js';
import { createScriptViewer } from '../session/scripts.js';
import { fetchOlmAccount } from '../updaters/olm-account-updater.js';
import { updateChangedUndirectedRelationships } from '../updaters/relationship-updaters.js';
@@ -1052,6 +1056,34 @@
},
migrationType: 'wrap_in_transaction_and_block_requests',
},
+ {
+ version: 71,
+ migrationPromise: async () => {
+ const links = await fetchAllPrimaryInviteLinks();
+ const promises = [];
+ for (const link: InviteLinkWithHolder of links) {
+ const holder = link.blobHolder;
+ if (!holder) {
+ continue;
+ }
+ promises.push(
+ deleteBlob(
+ {
+ hash: inviteLinkBlobHash(inviteLinkBlobHash(link.name)),
+ holder,
+ },
+ true,
+ ),
+ );
+ }
+ try {
+ await Promise.all(promises);
+ } catch (e) {
+ console.log('Error while cleaning invite links blobs', e);
+ }
+ },
+ migrationType: 'run_simultaneously_with_requests',
+ },
];
const versions: $ReadOnlyArray<number> = migrations.map(
migration => migration.version,

File Metadata

Mime Type
text/plain
Expires
Fri, Oct 25, 10:20 PM (21 h, 56 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2364659
Default Alt Text
D13768.id45319.diff (2 KB)

Event Timeline