Skip to content

Rendering: Don't cache RTE value conversion (closes #20867)#20880

Merged
AndyButland merged 1 commit intorelease/17.0from
v17/bugfix/rte-cache-level
Nov 18, 2025
Merged

Rendering: Don't cache RTE value conversion (closes #20867)#20880
AndyButland merged 1 commit intorelease/17.0from
v17/bugfix/rte-cache-level

Conversation

@kjac
Copy link
Contributor

@kjac kjac commented Nov 18, 2025

Prerequisites

  • I have added steps to test this contribution in the description below

If there's an existing issue for this PR then this fixes #20867

Description

With the removal of snapshot cache, the Snapshot property cache level is treated as if it was an Element level cache (see comment here).

This has worked seemingly fine, because `Element? level caching was effectively not happening. But with the fix in #20681, the linked issue popped up quite immediately.

I have been back and forth on this one a few times, and the only immediate (stable) solution is to set the RTE value conversion cache level to None instead of Snapshot. I have also added a task to our internal backlog to investigate this further.

At first glance, the None cache level looks like quite the performance degradation. In effect, though, it really isn't:

  • Snapshot in V14 and below meant a re-rendering for each request; the cache lasted for the duration of the snapshot, which was effectively per request.
  • Snapshot in V15+ should have been behaving like Element, but due to the above-mentioned error, all Element level caching was effectively discarded.

Testing this PR

See the linked issue for details.

I have verified that this works both for RTEs and Block Editors (including nested blocks).

Copy link
Contributor

@AndyButland AndyButland left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have verified that the original issue reported is resolved by this change.

@AndyButland AndyButland merged commit 95c9d48 into release/17.0 Nov 18, 2025
27 checks passed
@AndyButland AndyButland deleted the v17/bugfix/rte-cache-level branch November 18, 2025 14:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Regression: Forms inside RTE-rendered Blocks do not re-render after POST in Umbraco 17 RC2 (works in RC1)

3 participants