Allow terminating a lease in ERROR state

This patch adds a valid state transition from ERROR to TERMINATING,
which should allow a lease in the ERROR state to at least attempt to
clean itself up upon lease end. If this state transition is not allowed,
leases in the ERROR state effectively will not be cleaned up and their
hosts will stay in the corresponding aggregate instead of being returned
to the freepool.

This is compounded by the fact that leases can easily go into ERROR
state because of bug https://bugs.launchpad.net/blazar/+bug/1786031.

Change-Id: I1fbd922d921b7a643379c93ca6b2ebb4edde9c7a
Closes-Bug: #1793560
This commit is contained in:
Pierre Riteau 2018-10-01 16:50:22 +01:00
parent 1e96c9517c
commit 8d2f4a0f0e
3 changed files with 2 additions and 2 deletions

View File

@ -113,7 +113,7 @@ class LeaseStatus(BaseStatus):
PENDING: (STARTING, UPDATING, DELETING),
ACTIVE: (TERMINATING, UPDATING, DELETING),
TERMINATED: (UPDATING, DELETING),
ERROR: (UPDATING, DELETING),
ERROR: (TERMINATING, UPDATING, DELETING),
CREATING: (PENDING, DELETING),
STARTING: (ACTIVE, ERROR, DELETING),
UPDATING: STABLE + (DELETING,),

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 54 KiB

View File

@ -1 +1 @@
<mxfile editor="www.draw.io" type="device"><diagram id="8eb2d4aa-cf18-e5ac-f61d-68e8b5ae7d87" name="Page-1">7Vtbk6I4FP41Vs082EVAFB69sL1dNdPbZffuzjxtpSUqO0jcELt1fv0GSIQY7Oam6G5rlQUnIYST73znEuwY49X2lsD18it2kd/RNXfbMSYdXTeNHvuNBLtEYPXNRLAgnpuIQCp49H4iLtS4dOO5KJQ6Uox96q1l4QwHAZpRSQYJwa9ytzn25buu4QIpgscZ9FXpn55Ll1za17S04VfkLZb81j3R8AxnPxYEbwJ+v45uzONP0ryCYizeP1xCF79mRIbTMcYEY5ocrbZj5EeqFWpLrvvlSOt+3gQFtMgF/eSCF+hv+KPPCIIU/eUjGKJPnzt632cDjVzvhR0uokOmJR+5ooENnWnjD0V3QpHIZXrlp5jQJV7gAPpOKh3FykLRdDR2tqQrnx0Cdvg3onTHoQE3FDNROsIXjNe8H3tSsvvGr49PvkcnN2Z0uvXoN9GPHactqqK47kK8ITM+e4NDD5IFEiudiKLnylzGlXuL8AqxCbAOHPjATvoT5EPqvcjwghyli/1l+5EesMfmlXbB83nIppBZyiEhcJfpsY6uCLM92EFmSqkohkA+HAwFDuqK+j6zwmjlXpceRY9rGGvrlfGAvH5zz/fH2Mckvs7Q4s9bmn9BhKLtm1oV/MKthytZN/i8XzO2yrssM1YqZHl6l5T2hoYsRUMuDlCTuD+O2beQXtRaCuG+p+J+UA731wV7XdB3dlmRj87Jg7MNeYnhAIqAI6W371k81ATHHAe0lMm+AxpggoKw4Ybd1W4sXetL1t3tgVOBqQJUegpQxlNn+HR3f1uDKWW1j+Ivk4eU4B8or6UBDmXBjEyiwMoh0RwW7TXAokB1NCEDDr2AsOM4/ZaxIt4NvBegFLKsQY5l6f/pOASY5gch1yXkPNhUImQwOCBk/YIIeaAA5cG5n9Ti4wbY1WiVXXOM56qC1EMGLQR3QYkS3kumaydjySocaKtOcg69mOLOSmZlkvFjhFXbB+aurmWXZrOBqdmSZQqDq7rmaTglW7whwCTGSGbOL8uWZE6EHpUYPzxoSQ+aC7oKLnRgGhfsQcVTZpDy+DScXmFOY7bpdffTTdWIAveiM5r2fHVOsUCUxNtPaSolLGph4INuy9JtQyWkgdazLplvVagMx093fzjV2bYB7hy0yp3qPlTFjKWcEVwQJQr6kyjRLEeJF8WIthpWtJa+tE5teatbJX0xzYEumWnd9KXhNc/ZHrsyL9h6ppsLlQpesK/ZDdfthB8xevaNnfmY0m1AwcT3eOH4yG01IHsoYNoHeE2GPCXCdXWj8MmZfr27v8YtILvdIqVa3rpsrqi3I3QarjDrcMUlJlK6WrsWBuZMqttXA9YC2t0xtXLqeXGIrBjJJ4LohgQRLHD0s2SdNEy8hcdQGesP0k34uS2Peyw0A1kbaKLmXMiCgJFX4xP5Ywl3q2lATjpB/4LMCtj21bNt60F8PlYqhGZG35DfcREl2JqRWVeMszs4bxZLQg0ZLP3+MLnGCEjhdAuckdIH1v8xZtmTq2RFAlPvWlFNE7EPk4jewRBHspUqdmKpEe5m7Tb4djVDOZXXnaDQ+wmf4w7RAvGkivU2Rx1zwiTQ9xYBE8zYGiG2uKPIWjx22yFvWHmuGyPNh8/IH+1faM+Agb/SLle69HL0KsCvGOv+rX7+GJ3sm/F5Rsz49LAq0q35yuCeT+W94u7hEA3Vg9WqSQ4yhChcw0CCQf+fTfR3gVj53TBejSHrALT1Nm0UowyDXRICRspNYkGUQVsyuHzD9xz/GWPww4z1rHRtq6nJuQqaxcqZZ4uDRMhTrZpZ2CiLlxLUrdeJ88W5xoDk8MUxYNjnhHjOPsz1ZAkXkE0KI6hVkOmKHcK6hdreQahzCudlqYmlM53+Nm3VTyhmpNunMyN2mv5hL1Fh+qdIw/kX</diagram></mxfile>
<mxfile editor="www.draw.io" type="device" userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36" version="9.2.3"><diagram id="8eb2d4aa-cf18-e5ac-f61d-68e8b5ae7d87" name="Page-1">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</diagram></mxfile>