You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Initial plan
* Fix race condition in JsonExtensions.Prop causing AzureDeployerTests failures
Co-authored-by: radical <[email protected]>
* Add thread-safety tests for JsonExtensions.Prop
Co-authored-by: radical <[email protected]>
* Use ConditionalWeakTable for lock objects instead of locking on JsonObject
Co-authored-by: radical <[email protected]>
* Move thread-safety from JsonExtensions.Prop to ProvisioningContext level
Address feedback to provide thread-safety at the ProvisioningContext level
rather than in the Prop method itself. This ensures all DeploymentState
access is synchronized when multiple resources are provisioned in parallel.
- Added WithDeploymentState methods to ProvisioningContext for thread-safe access
- Updated BicepProvisioner to use WithDeploymentState for all state modifications
- Reverted JsonExtensions.Prop to simpler implementation without locking
- Updated tests: removed concurrent test from JsonExtensionsTests
- Added comprehensive thread-safety tests to ProvisioningContextTests
Co-authored-by: radical <[email protected]>
* Revert JsonExtensions.cs to original implementation
As suggested by @davidfowl, revert changes to JsonExtensions.cs since
the core thread-safety issue is now properly handled by WithDeploymentState
at the ProvisioningContext level. The original TryAdd logic with retry
is restored.
Co-authored-by: davidfowl <[email protected]>
---------
Co-authored-by: copilot-swe-agent[bot] <[email protected]>
Co-authored-by: radical <[email protected]>
Co-authored-by: davidfowl <[email protected]>
0 commit comments