Files
galaxy/doc/source/admin
mvdbeek f16e7fcec4 watch tool source stores: poll freshness, reload on CVMFS publish
New opt-in watch_tool_source_stores (+ tool_source_store_watch_interval,
default 60s): a per-process thread polls the freshness probe of every
read-only named store — one extended-attribute read per store per tick
for CVMFS — and reacts to token transitions. inotify does not fire on
CVMFS, so polling is the only reliable signal, and catalog TTL bounds
propagation anyway.

On a transition the store's engine is disposed before the index reload:
CVMFS keeps serving the pre-publish file to descriptors that were open
before the catalog update, so pooled sqlite connections pin the old
snapshot until dropped. The same disposal now also runs for read-only
members in invalidate_index_cache, making the existing admin reload API
and reload_tool_source_cache broadcasts correct on CVMFS as the manual
trigger. The reload itself reuses invalidate_index_cache (stub
registration, removal reconcile) plus a per-changed-store whoosh rebuild
guarded by the corpus-signature skip.

Watchable stores are read-only members with a probe: writable stores
change through this process group's own populate paths, which already
broadcast their own reloads. The watcher compares against the last
*seen* token, not the persisted one, so a store whose publisher hasn't
repopulated yet logs once instead of re-firing every tick.

Claude-Session: https://claude.ai/code/session_018L7ZmCv2ubKA3JNeSL8Pkr
2026-07-28 17:27:30 +02:00
..
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2022-08-19 18:33:20 +01:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:29 +00:00
2026-06-14 13:18:21 +00:00
2026-06-08 16:31:27 -04:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2022-05-06 13:29:14 +01:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00
2026-06-14 13:18:21 +00:00