Skip to content

Keep camera transport helpers retryable after setup failures - #780

Open
sylvesterkaczmarek wants to merge 5 commits into
isaac-sim:mainfrom
sylvesterkaczmarek:fix/camera-transport-retry-init
Open

Keep camera transport helpers retryable after setup failures#780
sylvesterkaczmarek wants to merge 5 commits into
isaac-sim:mainfrom
sylvesterkaczmarek:fix/camera-transport-retry-init

Conversation

@sylvesterkaczmarek

Copy link
Copy Markdown

Description

Make the UCX and HSB camera helper initialization paths retry-safe.

Both helpers marked their per-instance state as initialized before stage and writer setup completed. A transient setup failure could therefore leave the helper in an initialized state even though no writer had been attached, causing later evaluations to skip initialization instead of retrying.

The UCX helper also used an is None check for Usd.Stage.GetPrimAtPath(), although USD returns an invalid Usd.Prim for a missing path.

This change:

  • sets initialized = True only after successful writer setup and attachment
  • treats a missing USD stage as a retryable prerequisite in both helpers
  • validates the UCX render-product prim with IsValid()
  • checks for a missing UCX writer before calling initialize()
  • keeps failure paths uninitialized so a later evaluation can retry

Validation

  • UCX regression tests cover missing-stage and writer-setup failures
  • HSB regression tests cover missing-stage and writer-setup failures
  • tests verify the helper remains uninitialized after transient failures
  • all modified Python files pass py_compile and git diff --check

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant