From 1d56b9a5fe84e3f874f3704352c405730e9f0e79 Mon Sep 17 00:00:00 2001
From: Thierry Parmentelat <thierry.parmentelat@inria.fr>
Date: Mon, 14 Oct 2024 16:04:11 +0200
Subject: [PATCH] when deleting a slice, do not remove corresponding leases

---
 PLC/Slices.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/PLC/Slices.py b/PLC/Slices.py
index f27e5d0b..276754c3 100644
--- a/PLC/Slices.py
+++ b/PLC/Slices.py
@@ -254,7 +254,9 @@ class Slice(Row):
         assert 'slice_id' in self
 
         # Clean up miscellaneous join tables
-        for table in self.join_tables:
+        # however, we want to preserve leases for accounting purposes
+        to_delete = [table for table in self.join_tables if table != 'leases']
+        for table in to_delete:
             self.api.db.do(
                 f"DELETE FROM {table} WHERE slice_id = {self['slice_id']}")
 
-- 
2.47.0