Skip to content

deps(core): update dependency ziggycreatures.fusioncache to 2.9.0 - #1260

Merged
renovate[bot] merged 1 commit into
mainfrom
renovate/fusioncache-monorepo
Sep 23, 2026
Merged

renovate[bot] merged 1 commit into
mainfrom
renovate/fusioncache-monorepo

Conversation

@renovate

@renovate renovate Bot commented Sep 23, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
ZiggyCreatures.FusionCache 2.8.0 → 2.9.0 age confidence

Release Notes

ZiggyCreatures/FusionCache (ZiggyCreatures.FusionCache)

v2.9.0

🦅 Eager Refresh now also checks L2

Community member @​sfhb24 noticed that during an Eager Refresh the L2 was not being checked.

Now, this is admittedly not a huge thing per se, because of 2 reasons:

  • backplane: when using an L1+L2 setup, a backplane is usually also used, and in that case the factory would not run because an update on L2 would be immediately visible to the other nodes
  • distributed locker: by using a distributed locker a factory would not run because nodes would coordinate so that only 1 factory runs concurrently, even on multiple nodes

In both these cases, the extra L2 check during an eager refresh would not be necessary.

Having said that, an L1+L2 setup without a backplane or a distributed locker may also be common, and in that case the new L2 check in the eager refresh window can in fact be helpful in reducing the amount of factory executions even more.

Long story short: I just implemented it!

See here for the issue.

🔒 Fix for memory locker + Eager Refresh edge case

If a factory fails when executed in the background during an eager refresh, FusionCache already takes care of everything and correctly releases the potentially acquired locks (memory and/or distributed), and this is good.

But community member @​joaopbnogueira noticed a peculiar edge case: if the factory is not one marked with the async keyword AND it throws an exception, the memory lock is not being released properly.

Or, to better say, "was not". Because now this has been fixed.

Thanks João for spotting this.

See here for the issue.

🔒 Fix for distributed locker + skip L1 edge case

Community member @​joaopbnogueira also noticed another peculiar scenario, specifically when a MemoryCache write fails (yep, it can happen, true story).

Here's an example of it:

  • a custom MemroyCache is being used as the L1
  • that instance has been configured with a SizeLimit
  • there's a cache miss
  • the factory executes successfully
  • the new entry does not have a Size specified
  • L1 write fails (because with a SizeLimit it's mandatory for every entry to specify a Size)

In this scenario a distributed lock may not have been released.

But fear no more: this does not hapen anymore!

See here for the issue.

🧼 Fix for Clear(false) + Fail-Safe

Community member @​joaopbnogueira (damn, he is on a roll!) noticed something else, that somehow went unnoticed until now.

In some cases, after a Clear(false) call, an expired entry saved with Fail-Safe enabled may still be returned by FusionCache.

This too has now been fixed.

See here for the issue.

🔭 Allocation-free tags on the metrics hot path

Community member @​GordeySt sent a PR with some really nice optimizations, particularly around reducing resource allocations and CPU consumption when working with metrics.

Now, even with metrics enabled, the hot path is allocation free.

That's great, thanks Gordey!

See here for the PR.

✅ Tests

The test suite just crossed the 1600 mark:

image

Nice 🙂


Configuration

📅 Schedule: (in timezone Europe/Zurich)

  • Branch creation
    • "after 9pm,before 6am"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added the dependencies Pull requests that update a dependency file label Sep 23, 2026
@renovate
renovate Bot enabled auto-merge (squash) September 23, 2026 02:54
@renovate
renovate Bot merged commit b17075a into main Sep 23, 2026
4 of 5 checks passed
@renovate
renovate Bot deleted the renovate/fusioncache-monorepo branch September 23, 2026 09:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants