MCPcopy Index your code
hub / github.com/simstudioai/sim / deleteLargeValueKeys

Function deleteLargeValueKeys

apps/sim/background/cleanup-logs.ts:92–130  ·  view source on GitHub ↗
(keys: string[])

Source from the content-addressed store, hash-verified

90}
91
92async function deleteLargeValueKeys(keys: string[]): Promise<{ deleted: number; failed: number }> {
93 if (!isUsingCloudStorage() || keys.length === 0) {
94 return { deleted: 0, failed: 0 }
95 }
96
97 let result: Awaited<ReturnType<typeof StorageService.deleteFiles>>
98 try {
99 result = await StorageService.deleteFiles(keys, 'execution')
100 } catch (error) {
101 logger.error('Failed to bulk delete large execution values:', { error })
102 return { deleted: 0, failed: keys.length }
103 }
104
105 const failedKeys = new Set(result.failed.map(({ key }) => key))
106 const deletedKeys = keys.filter((key) => !failedKeys.has(key))
107
108 if (deletedKeys.length > 0) {
109 try {
110 await markLargeValuesDeleted(deletedKeys)
111 } catch (error) {
112 logger.error('Failed to mark large execution values as deleted:', { error })
113 return { deleted: 0, failed: result.failed.length + deletedKeys.length }
114 }
115 }
116
117 for (const { key, error } of result.failed) {
118 logger.error(`Failed to delete large execution value ${key}:`, { error })
119 }
120
121 for (const key of deletedKeys) {
122 try {
123 await deleteFileMetadata(key)
124 } catch (metadataError) {
125 logger.error(`Failed to delete large execution value metadata ${key}:`, { metadataError })
126 }
127 }
128
129 return { deleted: deletedKeys.length, failed: result.failed.length }
130}
131
132async function cleanupLargeExecutionValues(
133 workspaceIds: string[],

Callers 2

Calls 4

isUsingCloudStorageFunction · 0.90
markLargeValuesDeletedFunction · 0.90
deleteFileMetadataFunction · 0.90
errorMethod · 0.80

Tested by

no test coverage detected