Skip to content

Write-with-no-read causes backtracking re-render assertion #10427

@ef4

Description

@ef4

Any assignment of a Model attribute that happens within a tracking frame causes an immediate backtracking re-render assertion, even when there is no corresponding read.

You attempted to update `theField` on `<model::thing:null>`, but it had already been used previously in the same computation.

Reproduction app: https://github.com/ef4/ember-data-bug-repro

Reproduction commit for ease of reading: ef4/ember-data-bug-repro@fa6cb53

The reproduction is very small. There's a single attr() which is never read anywhere in the app. Assigning to it during a render (so within a tracking frame) throws the assertion anyway. The app should throw an immediate assertion.

I hit this issue while upgrading an app from ember-data 5.3.13 to 5.8.0.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions