stash/internal
abdusalam.dihan cd64433dc5 Speed up file-based auto-tag
Replaces the per-file SQL QueryForAutoTag prefilter with an in-memory
2-rune prefix index over performers/studios/tags, preloaded once at job
start. Also:

  - runs file processing through job.TaskQueue so scenes/images/
    galleries tag in parallel instead of one file at a time
  - keyset-paginates the query loop so batch N+1 doesn't pay the
    O(offset) scan past large tables
  - bulk-loads studio/tag aliases via a new optional AllAliasLoader
    interface, avoiding N+1 GetAliases calls during preload
  - caches compiled name regexps (same candidate names repeat across
    thousands of files)
  - hoists strings.ToLower(path) and allASCII(path) out of the per-
    candidate match loop
  - opens a fresh write txn per applied match instead of holding one
    for every tagger phase

Tagger gains *AtPath methods that own the cache + txn manager, letting
the task code stay slim.
2026-04-19 22:22:37 +01:00
..
api Fix WebSocket UTF-8 error for non-UTF-8 file paths in subscriptions (#6810) 2026-04-10 13:42:42 +10:00
autotag Speed up file-based auto-tag 2026-04-19 22:22:37 +01:00
build Add package docs and project vision/goals (#5169) 2024-08-28 09:01:39 +10:00
desktop [Feature] Reveal file in system file manager from file info panel (#6587) 2026-02-23 12:51:35 +11:00
dlna fix(dlna): improve activity tracking accuracy and efficiency (#6483) 2026-01-12 11:12:03 +11:00
identify FR: Change Identify Settings to Use Gender Checkboxes (#6557) 2026-02-11 11:43:18 +11:00
log add lumberjack log rotation (#5696) 2025-11-18 14:04:22 +11:00
manager Speed up file-based auto-tag 2026-04-19 22:22:37 +01:00
static Performer image rewrite (#6566) 2026-02-16 15:06:10 +11:00