File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -12,21 +12,16 @@ import { IBulkAsset } from 'src/types';
1212
1313@Injectable ( )
1414export class MemoryRepository implements IBulkAsset {
15- constructor ( @InjectKysely ( ) private db : Kysely < DB > ) { }
15+ constructor ( @InjectKysely ( ) private db : Kysely < DB > ) { }
1616
1717 async cleanup ( ) {
18- await this . db
19- . deleteFrom ( 'memory_asset' )
20- . using ( 'asset' )
21- . whereRef ( 'memory_asset.assetId' , '=' , 'asset.id' )
22- . where ( 'asset.visibility' , '!=' , AssetVisibility . Timeline )
23- . execute ( ) ;
18+ await this . db . transaction ( ) . execute ( async ( trx ) => {
19+ await trx . deleteFrom ( 'memory_asset' ) . execute ( ) ;
20+ } ) ;
2421
25- return this . db
26- . deleteFrom ( 'memory' )
27- . where ( 'createdAt' , '<' , DateTime . now ( ) . minus ( { days : 30 } ) . toJSDate ( ) )
28- . where ( 'isSaved' , '=' , false )
29- . execute ( ) ;
22+ return await this . db . transaction ( ) . execute ( async ( trx ) => {
23+ await trx . deleteFrom ( 'memory' ) . execute ( ) ;
24+ } ) ;
3025 }
3126
3227 searchBuilder ( ownerId : string , dto : MemorySearchDto ) {
Original file line number Diff line number Diff line change @@ -19,6 +19,13 @@ export class MemoryService extends BaseService {
1919 await this . databaseRepository . withLock ( DatabaseLock . MemoryCreation , async ( ) => {
2020 const state = await this . systemMetadataRepository . get ( SystemMetadataKey . MemoriesState ) ;
2121 const start = DateTime . utc ( ) . startOf ( 'day' ) . minus ( { days : DAYS } ) ;
22+ const systemConfig = await this . systemMetadataRepository . get ( SystemMetadataKey . SystemConfig )
23+ const isManualGenerate = DateTime . now ( ) . toFormat ( 'HH:mm' ) !== systemConfig ?. nightlyTasks ?. startTime
24+ if ( isManualGenerate && state ) {
25+ state [ "lastOnThisDayDate" ] = start . toISO ( ) ;
26+ // if not cleanup, record will duplicates
27+ this . onMemoriesCleanup ( ) ;
28+ }
2229 const lastOnThisDayDate = state ?. lastOnThisDayDate ? DateTime . fromISO ( state . lastOnThisDayDate ) : start ;
2330
2431 // generate a memory +/- X days from today
You can’t perform that action at this time.
0 commit comments