ubicloud/prog/aws
Enes Cakir 73b0c66fc0 Fix Vnet::SubnetNexus#destroy to not violate strand leases
Previously, Vnet::SubnetNexus#destroy ran:

```ruby
strand.children.select { it.prog == "Aws::Vpc" }.each { it.destroy }
```

This is not safe as there could be an existing lease for Aws::Vpc
children.

@jeremy fixed a similar issue at 773562ebc.

Fix this by private subnet increments the destroy semaphore instead of
destroying directly. Aws::Vpc will pop out if the destroy semaphore is
incremented.

I didn’t add semaphore :destroy to Aws::Vpc, since one of its subjects
is :private_subnet, which already has a destroy semaphore.
2025-10-03 17:51:41 +03:00
..
instance.rb Fix Vm::Nexus#destroy to not violate strand leases 2025-10-03 17:51:41 +03:00
nic.rb Fix Vnet::NicNexus#destroy to not violate strand leases 2025-10-03 17:51:41 +03:00
vpc.rb Fix Vnet::SubnetNexus#destroy to not violate strand leases 2025-10-03 17:51:41 +03:00