Skip to content

Commit a13e767

Browse files
ChanYiLinderekbit
authored andcommitted
fix(BackingImage): use Spec.DiskFileSpecMap as useddisks when getting ready node and disk for BackingImage
ref: longhorn/longhorn 2856 Signed-off-by: Jack Lin <[email protected]>
1 parent 9710ade commit a13e767

13 files changed

+104
-112
lines changed

client/generated_backing_image.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ type BackingImage struct {
1111

1212
DeletionTimestamp string `json:"deletionTimestamp,omitempty" yaml:"deletion_timestamp,omitempty"`
1313

14-
DiskFileStatusMap map[string]interface{} `json:"diskFileStatusMap,omitempty" yaml:"disk_file_status_map,omitempty"`
14+
DiskFileStatusMap map[string]BackingImageDiskFileStatus `json:"diskFileStatusMap,omitempty" yaml:"disk_file_status_map,omitempty"`
1515

1616
DiskSelector []string `json:"diskSelector,omitempty" yaml:"disk_selector,omitempty"`
1717

controller/backing_image_controller.go

+29-45
Original file line numberDiff line numberDiff line change
@@ -326,7 +326,7 @@ func (bic *BackingImageController) replenishBackingImageCopies(bi *longhorn.Back
326326
return nil
327327
}
328328

329-
concurrentReplenishLimit, err := bic.ds.GetSettingAsInt(types.SettingNameConcurrentBackingImageReplenishPerNodeLimit)
329+
concurrentReplenishLimit, err := bic.ds.GetSettingAsInt(types.SettingNameConcurrentBackingImageCopyReplenishPerNodeLimit)
330330
if err != nil {
331331
return err
332332
}
@@ -337,61 +337,40 @@ func (bic *BackingImageController) replenishBackingImageCopies(bi *longhorn.Back
337337
}
338338

339339
nonFailedCopies := 0
340-
usedDisks := map[string]bool{}
341340
for diskUUID := range bi.Spec.DiskFileSpecMap {
342341
fileStatus, exists := bi.Status.DiskFileStatusMap[diskUUID]
343342
if !exists || (fileStatus.State != longhorn.BackingImageStateFailed &&
344343
fileStatus.State != longhorn.BackingImageStateFailedAndCleanUp &&
345344
fileStatus.State != longhorn.BackingImageStateUnknown) {
346-
347345
// Non-existing file in status could due to not being synced from backing image manager yet.
348346
// Consider it as newly created copy and count it as non-failed copies.
349347
// So we don't create extra copy when handling copies evictions.
350-
usedDisks[diskUUID] = true
351348
nonFailedCopies += 1
352349
}
353350
}
354351

352+
// Need to count the evicted copies in the nonFailedCopies then handle it in handleBackingImageCopiesEvictions
353+
// so we can distinguish the case of "0 healthy copy" and "there is 1 copy but being evicted".
355354
if nonFailedCopies == 0 {
356355
return nil
357-
} else if nonFailedCopies >= bi.Spec.MinNumberOfCopies {
358-
if err := bic.handleBackingImageCopiesEvictions(nonFailedCopies, bi, usedDisks); err != nil {
359-
return nil
360-
}
361-
} else { //nonFailedCopies < bi.Spec.MinNumberOfCopies
362-
readyNode, readyDiskName, err := bic.ds.GetReadyNodeDiskForBackingImage(bi, usedDisks)
363-
logrus.Infof("replicate the copy to node: %v, disk: %v", readyNode, readyDiskName)
364-
if err != nil {
365-
logrus.WithError(err).Warnf("failed to create the backing image copy")
366-
return nil
367-
}
368-
// BackingImageManager will then sync the BackingImage to the disk
369-
bi.Spec.DiskFileSpecMap[readyNode.Status.DiskStatus[readyDiskName].DiskUUID] = &longhorn.BackingImageDiskFileSpec{}
370-
}
371-
372-
return nil
373-
}
374-
375-
// handleBackingImageCopiesEvictions do creating one more replica for eviction, if requested
376-
func (bic *BackingImageController) handleBackingImageCopiesEvictions(nonFailedCopies int, bi *longhorn.BackingImage, usedDisks map[string]bool) (err error) {
377-
log := getLoggerForBackingImage(bic.logger, bi)
378-
NonEvictingCount := nonFailedCopies
379-
380-
for _, fileSpec := range bi.Spec.DiskFileSpecMap {
381-
if fileSpec.EvictionRequested {
382-
NonEvictingCount--
356+
} else {
357+
nonEvictingCount := nonFailedCopies
358+
for _, fileSpec := range bi.Spec.DiskFileSpecMap {
359+
if fileSpec.EvictionRequested {
360+
nonEvictingCount--
361+
}
383362
}
384-
}
385363

386-
if NonEvictingCount < bi.Spec.MinNumberOfCopies {
387-
log.Infof("Creating one more backing image copy for eviction")
388-
readyNode, readyDiskName, err := bic.ds.GetReadyNodeDiskForBackingImage(bi, usedDisks)
389-
if err != nil {
390-
logrus.WithError(err).Warnf("failed to create the backing image copy")
391-
return nil
364+
if nonEvictingCount < bi.Spec.MinNumberOfCopies {
365+
readyNode, readyDiskName, err := bic.ds.GetReadyNodeDiskForBackingImage(bi)
366+
logrus.Infof("replicate the copy to node: %v, disk: %v", readyNode, readyDiskName)
367+
if err != nil {
368+
logrus.WithError(err).Warnf("failed to create the backing image copy")
369+
return nil
370+
}
371+
// BackingImageManager will then sync the BackingImage to the disk
372+
bi.Spec.DiskFileSpecMap[readyNode.Status.DiskStatus[readyDiskName].DiskUUID] = &longhorn.BackingImageDiskFileSpec{}
392373
}
393-
// BackingImageManager will then sync the BackingImage to the disk
394-
bi.Spec.DiskFileSpecMap[readyNode.Status.DiskStatus[readyDiskName].DiskUUID] = &longhorn.BackingImageDiskFileSpec{}
395374
}
396375

397376
return nil
@@ -405,8 +384,10 @@ func (bic *BackingImageController) cleanupEvictionRequestedBackingImageCopies(bi
405384
hasNonEvictingHealthyBackingImageCopy := false
406385
evictingHealthyBackingImageCopyDiskUUID := ""
407386
for diskUUID, fileSpec := range bi.Spec.DiskFileSpecMap {
408-
fileStatus, exists := bi.Status.DiskFileStatusMap[diskUUID]
409-
if exists && fileStatus != nil {
387+
fileStatus := bi.Status.DiskFileStatusMap[diskUUID]
388+
if fileStatus == nil { // it is newly added, consider it as non healthy
389+
continue
390+
} else {
410391
if fileStatus.State != longhorn.BackingImageStateReady {
411392
continue
412393
}
@@ -429,6 +410,10 @@ func (bic *BackingImageController) cleanupEvictionRequestedBackingImageCopies(bi
429410
bic.eventRecorder.Event(bi, corev1.EventTypeNormal, constant.EventReasonFailedDeleting, msg)
430411
continue
431412
}
413+
// Backing image controller update the spec here because
414+
// only this controller can gather all the information of all the copies of this backing image at once.
415+
// By deleting the disk from the spec, backing image manager controller will delete the copy on that disk.
416+
// TODO: introduce a new CRD for the backing image copy so we can delete the copy like volume controller deletes replicas.
432417
delete(bi.Spec.DiskFileSpecMap, diskUUID)
433418
log.Infof("Evicted backing image copy on disk %v", diskUUID)
434419
}
@@ -537,9 +522,8 @@ func (bic *BackingImageController) handleBackingImageDataSource(bi *longhorn.Bac
537522
}
538523
}
539524

540-
// JackLin: BackingIamge Data Source choose node/disk
541525
if !foundReadyDisk {
542-
readyNode, readyDiskName, err := bic.ds.GetReadyNodeDiskForBackingImage(bi, map[string]bool{})
526+
readyNode, readyDiskName, err := bic.ds.GetReadyNodeDiskForBackingImage(bi)
543527
if err != nil {
544528
return err
545529
}
@@ -670,7 +654,7 @@ func (bic *BackingImageController) handleBackingImageDataSource(bi *longhorn.Bac
670654
changeNodeDisk := err != nil || node.Name != bids.Spec.NodeID || node.Spec.Disks[diskName].Path != bids.Spec.DiskPath || node.Status.DiskStatus[diskName].DiskUUID != bids.Spec.DiskUUID
671655
if changeNodeDisk {
672656
log.Warn("Backing image data source current node and disk is not ready, need to switch to another ready node and disk")
673-
readyNode, readyDiskName, err := bic.ds.GetReadyNodeDiskForBackingImage(bi, map[string]bool{})
657+
readyNode, readyDiskName, err := bic.ds.GetReadyNodeDiskForBackingImage(bi)
674658
if err != nil {
675659
return err
676660
}
@@ -1002,7 +986,7 @@ func (bic *BackingImageController) enqueueBackingImageForNodeUpdate(oldObj, curr
1002986
}
1003987
}
1004988

1005-
diskBackingImageMap, err := bic.ds.GetDiskBackingImageMap(oldNode)
989+
diskBackingImageMap, err := bic.ds.GetDiskBackingImageMap()
1006990
if err != nil {
1007991
utilruntime.HandleError(fmt.Errorf("failed to get disk backing image map when handling node update"))
1008992
return

controller/backing_image_manager_controller.go

+17-7
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ type BackingImageManagerController struct {
6363
versionUpdater func(*longhorn.BackingImageManager) error
6464

6565
replenishLock *sync.Mutex
66-
inProgressReplenishingMap map[string]struct{}
66+
inProgressReplenishingMap map[string]string
6767
}
6868

6969
type BackingImageManagerMonitor struct {
@@ -132,7 +132,7 @@ func NewBackingImageManagerController(
132132
versionUpdater: updateBackingImageManagerVersion,
133133

134134
replenishLock: &sync.Mutex{},
135-
inProgressReplenishingMap: map[string]struct{}{},
135+
inProgressReplenishingMap: map[string]string{},
136136
}
137137

138138
var err error
@@ -360,6 +360,16 @@ func (c *BackingImageManagerController) cleanupBackingImageManager(bim *longhorn
360360
}
361361
}
362362
}
363+
364+
// delete in progress record of this manager from the inProgressReplenishingMap
365+
// each manager only controls only one disk
366+
currentDiskUUID := bim.Spec.DiskUUID
367+
for biNameDiskID, diskUUID := range c.inProgressReplenishingMap {
368+
if currentDiskUUID == diskUUID {
369+
delete(c.inProgressReplenishingMap, biNameDiskID)
370+
}
371+
}
372+
363373
if c.isMonitoring(bim.Name) {
364374
c.stopMonitoring(bim.Name)
365375
}
@@ -717,7 +727,7 @@ func (c *BackingImageManagerController) prepareBackingImageFiles(currentBIM *lon
717727

718728
// Before syncing the backing image copy to this backing image manager,
719729
// check if there are more than ReplenishPerNodeLimit number of backing image copies are being synced on this node.
720-
canSync, err := c.CanSyncCopy(currentBIM, biName, currentBIM.Spec.NodeID, currentBIM.Spec.DiskUUID)
730+
canSync, err := c.canSyncCopy(currentBIM, biName, currentBIM.Spec.NodeID, currentBIM.Spec.DiskUUID)
721731
if err != nil {
722732
return err
723733
}
@@ -1255,9 +1265,9 @@ func (c *BackingImageManagerController) isResponsibleFor(bim *longhorn.BackingIm
12551265
return isControllerResponsibleFor(c.controllerID, c.ds, bim.Name, bim.Spec.NodeID, bim.Status.OwnerID)
12561266
}
12571267

1258-
func (c *BackingImageManagerController) CanSyncCopy(bim *longhorn.BackingImageManager, biName, nodeID, diskUUID string) (bool, error) {
1268+
func (c *BackingImageManagerController) canSyncCopy(bim *longhorn.BackingImageManager, biName, nodeID, diskUUID string) (bool, error) {
12591269
log := getLoggerForBackingImageManager(c.logger, bim)
1260-
concurrentReplenishLimit, err := c.ds.GetSettingAsInt(types.SettingNameConcurrentBackingImageReplenishPerNodeLimit)
1270+
concurrentReplenishLimit, err := c.ds.GetSettingAsInt(types.SettingNameConcurrentBackingImageCopyReplenishPerNodeLimit)
12611271
if err != nil {
12621272
return false, err
12631273
}
@@ -1288,7 +1298,7 @@ func (c *BackingImageManagerController) CanSyncCopy(bim *longhorn.BackingImageMa
12881298
biOnTheSameNodeMap[biNameDiskID] = fileInfo
12891299

12901300
if backingImageInProgress(fileInfo.State) {
1291-
c.inProgressReplenishingMap[biNameDiskID] = struct{}{}
1301+
c.inProgressReplenishingMap[biNameDiskID] = diskUUID
12921302
}
12931303
}
12941304
}
@@ -1316,7 +1326,7 @@ func (c *BackingImageManagerController) CanSyncCopy(bim *longhorn.BackingImageMa
13161326
return false, nil
13171327
}
13181328

1319-
c.inProgressReplenishingMap[currentBiNameDiskID] = struct{}{}
1329+
c.inProgressReplenishingMap[currentBiNameDiskID] = diskUUID
13201330
return true, nil
13211331
}
13221332

controller/node_controller.go

+21-19
Original file line numberDiff line numberDiff line change
@@ -1190,6 +1190,9 @@ func (nc *NodeController) cleanUpBackingImagesInDisks(node *longhorn.Node) error
11901190
log.WithError(err).Warn("Failed to get the backing image data source when cleaning up the images in disks")
11911191
continue
11921192
}
1193+
if bids == nil {
1194+
continue
1195+
}
11931196
existingBackingImage := bi.DeepCopy()
11941197
BackingImageDiskFileCleanup(node, bi, bids, waitInterval, bi.Spec.MinNumberOfCopies)
11951198
if !reflect.DeepEqual(existingBackingImage.Spec, bi.Spec) {
@@ -1591,15 +1594,15 @@ func (nc *NodeController) syncBackingImageEvictionRequested(node *longhorn.Node)
15911594
}
15921595
log := getLoggerForNode(nc.logger, node)
15931596

1594-
diskBackingImageMap, err := nc.ds.GetDiskBackingImageMap(node)
1597+
diskBackingImageMap, err := nc.ds.GetDiskBackingImageMap()
15951598
if err != nil {
15961599
return err
15971600
}
15981601

15991602
type backingImageToSync struct {
16001603
*longhorn.BackingImage
1601-
diskUUID string
1602-
evict bool
1604+
diskUUID string
1605+
evictionRequested bool
16031606
}
16041607
backingImagesToSync := []backingImageToSync{}
16051608

@@ -1626,23 +1629,22 @@ func (nc *NodeController) syncBackingImageEvictionRequested(node *longhorn.Node)
16261629

16271630
for _, backingImageToSync := range backingImagesToSync {
16281631
backingImageLog := log.WithField("backingimage", backingImageToSync.Name).WithField("disk", backingImageToSync.diskUUID)
1629-
if backingImageToSync.evict {
1630-
backingImageLog.Infof("Requesting backing image copy eviction")
1631-
if _, err := nc.ds.UpdateBackingImageStatus(backingImageToSync.BackingImage); err != nil {
1632-
backingImageLog.Warn("Failed to request backing image copy eviction, will enqueue then resync the node")
1633-
nc.enqueueNodeRateLimited(node)
1634-
continue
1635-
}
1636-
nc.eventRecorder.Eventf(backingImageToSync.BackingImage, corev1.EventTypeNormal, constant.EventReasonEvictionUserRequested, "Requesting backing image %v eviction from node %v and disk %v", backingImageToSync.Name, node.Spec.Name, backingImageToSync.diskUUID)
1637-
} else {
1638-
backingImageLog.Infof("Cancelling backing image copy eviction")
1639-
if _, err := nc.ds.UpdateBackingImageStatus(backingImageToSync.BackingImage); err != nil {
1640-
backingImageLog.Warn("Failed to cancel backing image copy eviction, will enqueue then resync the node")
1641-
nc.enqueueNodeRateLimited(node)
1642-
continue
1643-
}
1644-
nc.eventRecorder.Eventf(backingImageToSync.BackingImage, corev1.EventTypeNormal, constant.EventReasonEvictionCanceled, "Requesting backing image %v eviction from node %v and disk %v", backingImageToSync.Name, node.Spec.Name, backingImageToSync.diskUUID)
1632+
eventReason := constant.EventReasonEvictionCanceled // Default to "EvictionCanceled"
1633+
logMessage := "Cancelling backing image copy eviction" // Default message
1634+
1635+
if backingImageToSync.evictionRequested {
1636+
eventReason = constant.EventReasonEvictionUserRequested
1637+
logMessage = "Requesting backing image copy eviction"
16451638
}
1639+
1640+
backingImageLog.Infof(logMessage)
1641+
if _, err := nc.ds.UpdateBackingImage(backingImageToSync.BackingImage); err != nil {
1642+
backingImageLog.Warnf("Failed to %s, will enqueue then resync the node", strings.ToLower(logMessage))
1643+
nc.enqueueNodeRateLimited(node)
1644+
continue
1645+
}
1646+
1647+
nc.eventRecorder.Eventf(backingImageToSync.BackingImage, corev1.EventTypeNormal, eventReason, "%s from node %v and disk %v", logMessage, node.Spec.Name, backingImageToSync.diskUUID)
16461648
}
16471649

16481650
return nil

controller/replica_controller.go

+2-3
Original file line numberDiff line numberDiff line change
@@ -419,11 +419,10 @@ func (rc *ReplicaController) GetBackingImagePathForReplicaStarting(r *longhorn.R
419419
if _, exists := bi.Spec.DiskFileSpecMap[r.Spec.DiskID]; !exists {
420420
res, err := rc.ds.CanPutBackingImageOnDisk(bi, r.Spec.DiskID)
421421
if err != nil {
422-
log.Warnf("Failed to check if backing image %v can be put on disk %v", bi.Name, r.Spec.DiskID)
422+
log.WithError(err).Warnf("Failed to check if backing image %v can be put on disk %v", bi.Name, r.Spec.DiskID)
423423
}
424424
if !res {
425-
log.Warnf("The backing image %v can not be put on the disk %v", bi.Name, r.Spec.DiskID)
426-
return "", nil
425+
return "", fmt.Errorf("The backing image %v can not be put on the disk %v", bi.Name, r.Spec.DiskID)
427426
}
428427
bi.Spec.DiskFileSpecMap[r.Spec.DiskID] = &longhorn.BackingImageDiskFileSpec{}
429428
log.Infof("Asking backing image %v to download file to node %v disk %v", bi.Name, r.Spec.NodeID, r.Spec.DiskID)

controller/setting_controller.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -1713,7 +1713,7 @@ func (info *ClusterInfo) collectSettings() error {
17131713
types.SettingNameConcurrentAutomaticEngineUpgradePerNodeLimit: true,
17141714
types.SettingNameConcurrentBackupRestorePerNodeLimit: true,
17151715
types.SettingNameConcurrentReplicaRebuildPerNodeLimit: true,
1716-
types.SettingNameConcurrentBackingImageReplenishPerNodeLimit: true,
1716+
types.SettingNameConcurrentBackingImageCopyReplenishPerNodeLimit: true,
17171717
types.SettingNameCRDAPIVersion: true,
17181718
types.SettingNameCreateDefaultDiskLabeledNodes: true,
17191719
types.SettingNameDefaultDataLocality: true,

controller/system_rollout_controller.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -1669,7 +1669,7 @@ func (c *SystemRolloutController) restoreServiceAccounts() (err error) {
16691669
var systemRolloutIgnoredSettings = [...]string{
16701670
string(types.SettingNameConcurrentBackupRestorePerNodeLimit),
16711671
string(types.SettingNameConcurrentReplicaRebuildPerNodeLimit),
1672-
string(types.SettingNameConcurrentBackingImageReplenishPerNodeLimit),
1672+
string(types.SettingNameConcurrentBackingImageCopyReplenishPerNodeLimit),
16731673
string(types.SettingNameBackupTarget),
16741674
string(types.SettingNameBackupTargetCredentialSecret),
16751675
}

controller/system_rollout_controller_test.go

+9-9
Original file line numberDiff line numberDiff line change
@@ -814,19 +814,19 @@ func (s *TestSuite) TestSystemRollout(c *C) {
814814
expectState: longhorn.SystemRestoreStateCompleted,
815815

816816
existSettings: map[SystemRolloutCRName]*longhorn.Setting{
817-
SystemRolloutCRName(types.SettingNameConcurrentReplicaRebuildPerNodeLimit): {Value: "4"},
818-
SystemRolloutCRName(types.SettingNameConcurrentBackupRestorePerNodeLimit): {Value: "5"},
819-
SystemRolloutCRName(types.SettingNameConcurrentBackingImageReplenishPerNodeLimit): {Value: "5"},
817+
SystemRolloutCRName(types.SettingNameConcurrentReplicaRebuildPerNodeLimit): {Value: "4"},
818+
SystemRolloutCRName(types.SettingNameConcurrentBackupRestorePerNodeLimit): {Value: "5"},
819+
SystemRolloutCRName(types.SettingNameConcurrentBackingImageCopyReplenishPerNodeLimit): {Value: "5"},
820820
},
821821
backupSettings: map[SystemRolloutCRName]*longhorn.Setting{
822-
SystemRolloutCRName(types.SettingNameConcurrentReplicaRebuildPerNodeLimit): {Value: "6"},
823-
SystemRolloutCRName(types.SettingNameConcurrentBackupRestorePerNodeLimit): {Value: "7"},
824-
SystemRolloutCRName(types.SettingNameConcurrentBackingImageReplenishPerNodeLimit): {Value: "8"},
822+
SystemRolloutCRName(types.SettingNameConcurrentReplicaRebuildPerNodeLimit): {Value: "6"},
823+
SystemRolloutCRName(types.SettingNameConcurrentBackupRestorePerNodeLimit): {Value: "7"},
824+
SystemRolloutCRName(types.SettingNameConcurrentBackingImageCopyReplenishPerNodeLimit): {Value: "8"},
825825
},
826826
expectRestoredSettings: map[SystemRolloutCRName]*longhorn.Setting{
827-
SystemRolloutCRName(types.SettingNameConcurrentReplicaRebuildPerNodeLimit): {Value: "4"},
828-
SystemRolloutCRName(types.SettingNameConcurrentBackupRestorePerNodeLimit): {Value: "5"},
829-
SystemRolloutCRName(types.SettingNameConcurrentBackingImageReplenishPerNodeLimit): {Value: "5"},
827+
SystemRolloutCRName(types.SettingNameConcurrentReplicaRebuildPerNodeLimit): {Value: "4"},
828+
SystemRolloutCRName(types.SettingNameConcurrentBackupRestorePerNodeLimit): {Value: "5"},
829+
SystemRolloutCRName(types.SettingNameConcurrentBackingImageCopyReplenishPerNodeLimit): {Value: "5"},
830830
},
831831
},
832832
"system rollout Volume exist in cluster": {

datastore/longhorn.go

+5-5
Original file line numberDiff line numberDiff line change
@@ -2666,7 +2666,7 @@ func (s *DataStore) ListReadyNodesContainingEngineImageRO(image string) (map[str
26662666

26672667
// GetReadyNodeDiskForBackingImage a list of all Node the in the given namespace and
26682668
// returns the first Node && the first Disk of the Node marked with condition ready and allow scheduling
2669-
func (s *DataStore) GetReadyNodeDiskForBackingImage(backingImage *longhorn.BackingImage, usedDisks map[string]bool) (*longhorn.Node, string, error) {
2669+
func (s *DataStore) GetReadyNodeDiskForBackingImage(backingImage *longhorn.BackingImage) (*longhorn.Node, string, error) {
26702670
logrus.Info("Preparing to find a random ready node disk")
26712671
nodes, err := s.ListNodesRO()
26722672
if err != nil {
@@ -2704,7 +2704,7 @@ func (s *DataStore) GetReadyNodeDiskForBackingImage(backingImage *longhorn.Backi
27042704
if !types.IsSelectorsInTags(diskSpec.Tags, backingImage.Spec.DiskSelector, allowEmptyDiskSelectorVolume) {
27052705
continue
27062706
}
2707-
if _, exists := usedDisks[diskStatus.DiskUUID]; exists {
2707+
if _, exists := backingImage.Spec.DiskFileSpecMap[diskStatus.DiskUUID]; exists {
27082708
continue
27092709
}
27102710
// TODO: Jack add block type disk for spdk version BackingImage
@@ -5073,16 +5073,16 @@ func (s *DataStore) IsV2DataEngineDisabledForNode(nodeName string) (bool, error)
50735073
return false, nil
50745074
}
50755075

5076-
func (s *DataStore) GetDiskBackingImageMap(node *longhorn.Node) (map[string][]*longhorn.BackingImage, error) {
5076+
func (s *DataStore) GetDiskBackingImageMap() (map[string][]*longhorn.BackingImage, error) {
50775077
diskBackingImageMap := map[string][]*longhorn.BackingImage{}
50785078
backingImages, err := s.ListBackingImages()
50795079
if err != nil {
50805080
return nil, err
50815081
}
50825082

50835083
for _, bi := range backingImages {
5084-
for diskUIID := range bi.Status.DiskFileStatusMap {
5085-
diskBackingImageMap[diskUIID] = append(diskBackingImageMap[diskUIID], bi)
5084+
for diskUUID := range bi.Status.DiskFileStatusMap {
5085+
diskBackingImageMap[diskUUID] = append(diskBackingImageMap[diskUUID], bi)
50865086
}
50875087
}
50885088

0 commit comments

Comments
 (0)