; persist/catalog — enumerate the streams a backend holds. The catalog is the ; set of streams ever appended to (from the seq high-water marks), so a stream ; whose log has been fully compacted still appears. For admin, global ops, and ; cross-stream tooling. Requires: lib/persist/backend.sx, lib/persist/log.sx. (define persist/streams (fn (b) (persist/backend-streams b))) (define persist/stream-count (fn (b) (len (persist/streams b)))) (define persist/stream-exists? (fn (b stream) (contains? (persist/streams b) stream))) ; total logical events across all streams (sum of high-water marks) (define persist/total-events (fn (b) (reduce (fn (acc s) (+ acc (persist/last-seq b s))) 0 (persist/streams b))))