apache / cloudstack

Apache CloudStack is an opensource Infrastructure as a Service (IaaS) cloud computing platform
https://cloudstack.apache.org/
Apache License 2.0
2.1k stars 1.11k forks source link

s3 based secondary storage is not removed cleanly #9790

Open kiranchavala opened 1 month ago

kiranchavala commented 1 month ago

ISSUE TYPE

Bug

COMPONENT NAME

Component: Bug

CLOUDSTACK VERSION

Cloudstack version 4.19.1

SUMMARY

s3 based secondary storage is not removed cleanly

Steps to reproduce the behaviour

  1. Create a s3 based secondary storage

  2. Enable the NFS secondary staging storage

  3. Cross check the database

select * from image_store
*************************** 2. row ***************************
                 id: 2
               name: s3
image_provider_name: S3
           protocol: https
                url: NULL
     data_center_id: NULL
              scope: REGION
               role: Image
               uuid: 5aea84cb-da61-4eba-b4d6-a2cc6683bd53
             parent: NULL
            created: 2024-10-14 11:27:53
            removed: 
         total_size: NULL
         used_bytes: NULL
           readonly: 0
*************************** 3. row ***************************
                 id: 3
               name: nfs://10.0.32.4/acs/secondary/ref-trl-7483-k-Mol8-kiran-chavala/ref-trl-7483-k-Mol8-kiran-chavala-sec1
image_provider_name: NFS
           protocol: nfs
                url: nfs://10.0.32.4/acs/secondary/ref-trl-7483-k-Mol8-kiran-chavala/ref-trl-7483-k-Mol8-kiran-chavala-sec1
     data_center_id: 1
              scope: ZONE
               role: ImageCache
               uuid: 18cc19bd-e840-48b4-ae6a-0e99f2ca563a
             parent: NULL
            created: 2024-10-14 11:27:53
            removed: NULL
         total_size: NULL
         used_bytes: NULL
           readonly: 0
  1. Remove the s3 secondary storage

Only the role image entry is marked removed , the role: ImageCache entry is not marked as removed

*************************** 2. row ***************************
                 id: 2
               name: s3
image_provider_name: S3
           protocol: https
                url: NULL
     data_center_id: NULL
              scope: REGION
               role: Image
               uuid: 5aea84cb-da61-4eba-b4d6-a2cc6683bd53
             parent: NULL
            created: 2024-10-14 11:27:53
            removed: 2024-10-14 11:28:36
         total_size: NULL
         used_bytes: NULL
           readonly: 0
*************************** 3. row ***************************
                 id: 3
               name: nfs://10.0.32.4/acs/secondary/ref-trl-7483-k-Mol8-kiran-chavala/ref-trl-7483-k-Mol8-kiran-chavala-sec1
image_provider_name: NFS
           protocol: nfs
                url: nfs://10.0.32.4/acs/secondary/ref-trl-7483-k-Mol8-kiran-chavala/ref-trl-7483-k-Mol8-kiran-chavala-sec1
     data_center_id: 1
              scope: ZONE
               role: ImageCache
               uuid: 18cc19bd-e840-48b4-ae6a-0e99f2ca563a
             parent: NULL
            created: 2024-10-14 11:27:53
            removed: NULL
         total_size: NULL
         used_bytes: NULL
           readonly: 0

Actual Behaviour

The role role: ImageCache entry is not marked as removed, which is causing issues during later when a new secondary storage is added and a migration activity is performed

Expected Behaviour

The role role: ImageCache entry should also be marked as removed when s3 based secondary storage is removed

DaanHoogland commented 2 weeks ago

@kiranchavala , I think this is a more generic issue. A secondary storage can not be removed easily no matter what the type.