Skip to content

History / Cross Process Cache Sync

Revisions

  • 1.3.0: document the manager hot-swap reload pattern Typed References gains "Surviving a reload" (replace/managerReplacing, the mandatory clearCache and the flush -> clearCache -> close order); Gotchas pins the memoized default-policy staleness of a ref that crossed a swap. Coordinates bumped to 1.3.0.

    @EverNife EverNife committed Aug 13, 2026
  • Stop saying the file backends have no push feed They gained one in 1.2.0 - the operating system's own watch service - and a version stamp taken from the file, so polling over them detects updates and not only deletes. Six pages still described the state before that: the per-backend matrix, the push-vs-poll rule, two capability tables, and the "see also" line on both file-backend pages. H2 keeps the deletes-only caveat, which is true of H2 alone: it is the one backend reporting version 0 for every key it holds. Also bumps the artifact coordinates to 1.2.1, and renames the heterogeneous-backend "fan-out" after the term stopped naming one thing.

    @EverNife EverNife committed Aug 3, 2026
  • Bump wiki artifact coordinates to 1.2.0

    @EverNife EverNife committed Jul 29, 2026
  • Document the 1.2.0 file-backend work Both file backends now record their own on-disk format and refuse a codec that disagrees, both push changes through the OS watch service, and their version stops being a constant zero - so several pages said things that are no longer true: that they have no change feed, that polling over them catches only deletes, and that versions() reports 0. Grouped Files gains sections on key spaces, directory fan-out and the key-major loadKey/batchKey API; Local Files gains its capability table and the per-collection format record.

    @EverNife EverNife committed Jul 29, 2026
  • Document Map order preservation and cache-sync store scoping Update the pages touched by the 1.1.0 behavior changes. Codecs now describes Map entries as written in insertion order (every profile), dropping the old key-sorting claim. Cross-Process Cache Sync gains a "scoping by physical store" section and a SyncParticipation gotcha box, and bumps its install coordinates to 1.1.0. A new Gotchas entry warns that a machine-local backend does not publish on the transport by default. Design & Internals notes the backend-identity idiom, and Cache Policies notes the publish caveat next to the TTL guidance.

    @EverNife EverNife committed Jul 20, 2026
  • Update the install coordinates to 1.0.9

    @EverNife EverNife committed Jul 15, 2026
  • manager: note dirty cells are pinned against LRU eviction; bump coordinates to 1.0.8

    @EverNife EverNife committed Jul 10, 2026
  • Tighten and fact-check every wiki page (concision + correctness pass) Swept all 41 content pages for concision (cut rambling/hedging/repetition, prefer scannable tables and short sentences) and verified every load-bearing technical claim against the source. Real fixes: Local-Files documented the removed prettyPrint/fsyncEvery LocalFileConfig constructors (gone since 271962d) - rewritten to the one-arg config; Grouped-Files' stale cross-refs to those knobs corrected. Added a few source-backed facts that were missing (nested inTransaction throws, duplicate migration version rejected at register(), getAll never returns null). No behavior claims changed beyond matching the code.

    @EverNife EverNife committed Jul 5, 2026
  • Sync wiki with adversarial-review fixes Coherence updates for the landed fixes: file backends are crash-atomic (not fsync-durable) and hash-truncate over-long keys; H2 never enforces optimistic locking in any mode incl. TCP; null Long version reads as 0; currentVersion() reports the greatest applied version and InMemory close() resets the ledger; FAIL_FAST yields exactly one error; CacheSync mode + Jedis malformed-payload reporting; non-Comparable map keys serialize unordered; numeric cross-type range on scan backends; progress-tick OR semantics; catalog is the single version source.

    @EverNife EverNife committed Jul 5, 2026
  • docs: sync wiki with current code — grouped-file backend, versions, capability accuracy New page: - Grouped-Files.md — the key-major aggregate-file backend (one file per key, every collection as a sub-node; FileKeyNames sanitisation; atomic writes; SchemaAware via _schema/migrations.json; full-scan queries with declaration validation; no transactions; versions() = 0), plus a _Sidebar entry. Factual fixes across the wiki against the current code and libs.versions.toml: - Seven backends everywhere (GroupedFile added to matrices/lists); the "six backends" phrasings that were specific to MultiBackendRefExampleTest and the six-key example were left correct on purpose. - Single Java 25 toolchain build (sourceCompatibility=25 + options.release=8, Jabel FinalCraft fork) — removed the stale JDK-17 compiler-pin / ~/.jdks blocks. - Dependency and project versions: Jackson 2.22.0, mongodb 5.8.0, mysql 9.7.0, postgresql 42.7.12; project coordinates bumped to 1.0.6. - YAML accepted by both file backends (LocalFile and GroupedFile); Mongo stores the key as the document _id (not storage_key); health() returns HealthStatus; InMemory implements SchemaAwareStorage; ChangeFeed = Mongo/PostgreSQL/InMemory. - CachingManager.stats()/CacheStats section; RefRegistry rejects a conflicting duplicate registration; Mongo replica-set / open-no-auth test creds. - Fixed a few broken examples/links: GuildManager two-arg constructor, Quick-Start variable/type names, BatchSaveReport/KeyOutcome shown as final classes, a dead Caching-Managers wiki-link.

    @EverNife EverNife committed Jul 4, 2026
  • Add Pub/sub transport over Redis/Valkey

    @EverNife EverNife committed Jun 29, 2026
  • Update wiki

    @EverNife EverNife committed Jun 23, 2026