ignore deleted works left in suggestion cache

This commit is contained in:
xenofem 2025-09-13 03:30:36 -04:00
parent 6b22165a27
commit 90756917aa

View file

@ -1269,16 +1269,6 @@ def generate(args):
cur = con.cursor() cur = con.cursor()
debug('main database open') debug('main database open')
debug('opening suggestion cache database')
cache_con = sqlite3.connect(args.destdir / 'cache.db')
cache_cur = cache_con.cursor()
cache_cur.execute("CREATE TABLE IF NOT EXISTS suggestions(work TEXT, suggested TEXT, similarity INT, PRIMARY KEY(work, suggested))")
debug('suggestion cache database open')
cached_suggestions = {}
for (work, suggested, similarity) in cache_cur.execute('SELECT work, suggested, similarity FROM suggestions'):
cached_suggestions.setdefault(work, TopScoreList(SUGGESTED_WORKS_COUNT)).insert(suggested, similarity)
debug('cached suggestions loaded')
site_dir = args.destdir / 'site' site_dir = args.destdir / 'site'
collated_work_ids = {p.name for p in (site_dir / 'images').iterdir()} collated_work_ids = {p.name for p in (site_dir / 'images').iterdir()}
@ -1315,6 +1305,17 @@ def generate(args):
print(f'{ANSI_LINECLEAR}{idx+1} database entries read...', end='') print(f'{ANSI_LINECLEAR}{idx+1} database entries read...', end='')
print() print()
debug('opening suggestion cache database')
cache_con = sqlite3.connect(args.destdir / 'cache.db')
cache_cur = cache_con.cursor()
cache_cur.execute("CREATE TABLE IF NOT EXISTS suggestions(work TEXT, suggested TEXT, similarity INT, PRIMARY KEY(work, suggested))")
debug('suggestion cache database open')
cached_suggestions = {}
for (work, suggested, similarity) in cache_cur.execute('SELECT work, suggested, similarity FROM suggestions'):
if work in works and suggested in works:
cached_suggestions.setdefault(work, TopScoreList(SUGGESTED_WORKS_COUNT)).insert(suggested, similarity)
debug('cached suggestions loaded')
for work in works.values(): for work in works.values():
if work['id'] in cached_suggestions: if work['id'] in cached_suggestions:
continue continue