Skip to content

Render Recovery release note#23466

Merged
alice-i-cecile merged 1 commit intobevyengine:mainfrom
atlv24:ad/render-recovery-note
Mar 23, 2026
Merged

Render Recovery release note#23466
alice-i-cecile merged 1 commit intobevyengine:mainfrom
atlv24:ad/render-recovery-note

Conversation

@atlv24
Copy link
Copy Markdown
Contributor

@atlv24 atlv24 commented Mar 22, 2026

Objective

Solution

  • Add a release note.
  • Re-export a wgpu type that you need to match on to handle errors.

Testing

Note

I opted not to change the default recovery behavior yet. I believe we need testing in user projects and just general trodding of this code path before committing to a new default. It works in a simple example, it might not work in a complex project. We need to field test this and likely iterate to really call this ready IMO.

@NthTensor
Copy link
Copy Markdown
Contributor

This is so cool! Idle question, in the long term are we thinking maybe we can throw a catch_unwind on top of the render world runner and fully drop+restart the render world in the event of a fatal panic?

@NthTensor NthTensor added A-Rendering Drawing game state to the screen S-Needs-Review Needs reviewer attention (from anyone!) to move forward labels Mar 22, 2026
@github-project-automation github-project-automation bot moved this to Needs SME Triage in Rendering Mar 22, 2026
Copy link
Copy Markdown
Member

@tychedelia tychedelia left a comment

Choose a reason for hiding this comment

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

I might add a brief note about when such failures can occur in practice and mention that this is intended for advanced users.

@alice-i-cecile alice-i-cecile added this to the 0.19 milestone Mar 22, 2026
@alice-i-cecile alice-i-cecile added S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it M-Release-Note Work that should be called out in the blog due to impact and removed S-Needs-Review Needs reviewer attention (from anyone!) to move forward labels Mar 22, 2026
Copy link
Copy Markdown
Member

@alice-i-cecile alice-i-cecile left a comment

Choose a reason for hiding this comment

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

Running the render_recovery example, pressing 5 then D on my machine crashes the app. L hangs the app, but that's probably fine. I could still close it.

Trying again with cargo run --example render_recovery --features="debug", the panicking system is: bevy_render::run_render_schedule.

thread 'Compute Task Pool (18)' (110793) panicked at /home/alice/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/wgpu-28.0.0/src/backend/wgpu_core.rs:2231:18:
Error in Buffer::get_mapped_range: Validation Error

Caused by:
  Buffer with 'clustering metadata staging buffer' label has been destroyed

Device info:

2026-03-23T22:51:59.953837Z  INFO bevy_diagnostic::system_information_diagnostics_plugin::internal: SystemInfo { os: "Linux (Pop!_OS 22.04)", kernel: "6.17.9-76061709-generic", cpu: "13th Gen Intel(R) Core(TM) i9-13900K", core_count: "24", memory: "31.1 GiB" }
2026-03-23T22:52:00.006843Z  INFO bevy_render::renderer: AdapterInfo { name: "NVIDIA GeForce RTX 2060", vendor: 4318, device: 7817, device_type: DiscreteGpu, device_pci_bus_id: "0000:01:00.0", driver: "NVIDIA", driver_info: "580.119.02", backend: Vulkan, subgroup_min_size: 32, subgroup_max_size: 32, transient_saves_memory: false }

@alice-i-cecile alice-i-cecile added S-Waiting-on-Author The author needs to make changes or address concerns before this can be merged and removed S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it labels Mar 23, 2026
Copy link
Copy Markdown
Member

@alice-i-cecile alice-i-cecile left a comment

Choose a reason for hiding this comment

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

Ah, known issue. Sure, I can live with that.

@alice-i-cecile alice-i-cecile added this pull request to the merge queue Mar 23, 2026
Merged via the queue into bevyengine:main with commit e35372d Mar 23, 2026
49 checks passed
@github-project-automation github-project-automation bot moved this from Needs SME Triage to Done in Rendering Mar 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Rendering Drawing game state to the screen M-Release-Note Work that should be called out in the blog due to impact S-Waiting-on-Author The author needs to make changes or address concerns before this can be merged

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Render Recovery

4 participants