journal: support removing multiple volumeID

Updating the code to support removing
multiple volumeID's mapping from the
group journal.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
This commit is contained in:
Madhu Rajanna 2024-06-18 11:14:37 +02:00 committed by mergify[bot]
parent f346f3d201
commit fc0a7d2542
2 changed files with 8 additions and 8 deletions

View File

@ -644,7 +644,7 @@ func (cs *ControllerServer) deleteSnapshotsAndUndoReservation(ctx context.Contex
ctx,
vgo.MetadataPool,
vgsi.ReservedID,
volID)
[]string{volID})
j.Destroy()
if err != nil {
log.ErrorLog(ctx, "failed to remove volume snapshot mapping: %v", err)

View File

@ -64,12 +64,12 @@ type VolumeGroupJournal interface {
reservedUUID,
volumeID,
value string) error
// RemoveVolumeMapping removes a volumeID mapping from the UUID directory.
// RemoveVolumeMapping removes volumeIDs mapping from the UUID directory.
RemoveVolumeMapping(
ctx context.Context,
pool,
reservedUUID,
volumeID string) error
reservedUUID string,
volumeIDs []string) error
}
// VolumeGroupJournalConfig contains the configuration.
@ -424,14 +424,14 @@ func (vgjc *VolumeGroupJournalConnection) AddVolumeMapping(
func (vgjc *VolumeGroupJournalConnection) RemoveVolumeMapping(
ctx context.Context,
pool,
reservedUUID,
volumeID string,
reservedUUID string,
volumeIDs []string,
) error {
err := removeMapKeys(ctx, vgjc.connection, pool, vgjc.config.namespace,
vgjc.config.cephUUIDDirectoryPrefix+reservedUUID,
[]string{volumeID})
volumeIDs)
if err != nil {
log.ErrorLog(ctx, "failed removing volume mapping from group: key %q: %v", volumeID, err)
log.ErrorLog(ctx, "failed removing volume mapping from group: key: %q %v", volumeIDs, err)
return err
}