Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 175 for disks (0.04 sec)

  1. cmd/erasure.go

    		}
    	}()
    
    	// Restrict parallelism for disk usage scanner
    	// upto GOMAXPROCS if GOMAXPROCS is < len(disks)
    	maxProcs := runtime.GOMAXPROCS(0)
    	if maxProcs < len(disks) {
    		disks = disks[:maxProcs]
    	}
    
    	// Start one scanner per disk
    	var wg sync.WaitGroup
    	wg.Add(len(disks))
    
    	for i := range disks {
    		go func(i int) {
    			defer wg.Done()
    			disk := disks[i]
    
    			for bucket := range bucketCh {
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Fri Oct 04 22:23:33 UTC 2024
    - 16.1K bytes
    - Viewed (0)
  2. cmd/global-heal.go

    		if len(disks) < er.setDriveCount/2 {
    			return fmt.Errorf("not enough drives (found=%d, healing=%d, total=%d) are available to heal `%s`", len(disks), healing, er.setDriveCount, tracker.disk.String())
    		}
    
    		rand.Shuffle(len(disks), func(i, j int) {
    			disks[i], disks[j] = disks[j], disks[i]
    		})
    
    		expectedDisks := len(disks)/2 + 1
    		fallbackDisks := disks[expectedDisks:]
    		disks = disks[:expectedDisks]
    
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Sat Oct 26 09:58:27 UTC 2024
    - 16.3K bytes
    - Viewed (0)
  3. cmd/erasure-metadata-utils.go

    }
    
    // shuffleDisks - shuffle input disks slice depending on the
    // erasure distribution. Return shuffled slice of disks with
    // their expected distribution.
    func shuffleDisks(disks []StorageAPI, distribution []int) (shuffledDisks []StorageAPI) {
    	if distribution == nil {
    		return disks
    	}
    	shuffledDisks = make([]StorageAPI, len(disks))
    	// Shuffle disks for expected distribution.
    	for index := range disks {
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Fri May 24 23:05:23 UTC 2024
    - 11.7K bytes
    - Viewed (0)
  4. cmd/erasure-healing-common.go

    			} else {
    				dataErrsByPart[p][i] = verifyResp.Results[p]
    			}
    		}
    	}
    
    	// Build dataErrs by disk from dataErrs by part
    	for part, disks := range dataErrsByPart {
    		for disk := range disks {
    			dataErrsByDisk[disk][part] = dataErrsByPart[part][disk]
    		}
    	}
    
    	for i, onlineDisk := range onlineDisks {
    		if metaErrs[i] == nil {
    			meta := partsMetadata[i]
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Thu Oct 31 22:10:24 UTC 2024
    - 12.7K bytes
    - Viewed (0)
  5. cmd/prepare-storage.go

    		return nil, err
    	}
    
    	// All disks report unformatted we should initialized everyone.
    	if shouldInitErasureDisks(sErrs) && firstDisk {
    		logger.Info("Formatting %s pool, %v set(s), %v drives per set.",
    			humanize.Ordinal(poolCount), setCount, setDriveCount)
    
    		// Initialize erasure code format on disks
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Fri Jul 12 20:51:54 UTC 2024
    - 11.1K bytes
    - Viewed (1)
  6. cmd/erasure-common.go

    	// Based on the random shuffling return back randomized disks.
    	r := rand.New(rand.NewSource(time.Now().UnixNano()))
    
    	for _, i := range r.Perm(len(disks)) {
    		if disks[i] != nil && disks[i].IsLocal() {
    			newDisks = append(newDisks, disks[i])
    		}
    	}
    
    	return newDisks
    }
    
    func (er erasureObjects) getLocalDisks() (newDisks []StorageAPI) {
    	disks := er.getDisks()
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Mon Aug 12 08:38:15 UTC 2024
    - 2.3K bytes
    - Viewed (0)
  7. cmd/erasure-healing.go

    	ctx, cancel := context.WithCancel(ctx)
    	defer cancel()
    
    	disks, _ := er.getOnlineDisksWithHealing(false)
    	if len(disks) == 0 {
    		return errors.New("listAndHeal: No non-healing drives found")
    	}
    
    	expectedDisks := len(disks)/2 + 1
    	fallbackDisks := disks[expectedDisks:]
    	disks = disks[:expectedDisks]
    
    	// How to resolve partial results.
    	resolver := metadataResolutionParams{
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Wed Oct 02 17:50:41 UTC 2024
    - 34.4K bytes
    - Viewed (0)
  8. cmd/metrics-realtime.go

    		m.ByDisk = make(map[string]madmin.DiskMetric)
    		aggr := madmin.DiskMetric{
    			CollectedAt: time.Now(),
    		}
    		for name, disk := range collectLocalDisksMetrics(opts.disks) {
    			m.ByDisk[name] = disk
    			aggr.Merge(&disk)
    		}
    		m.Aggregated.Disk = &aggr
    	}
    
    	if types.Contains(madmin.MetricsScanner) {
    		metrics := globalScannerMetrics.report()
    		m.Aggregated.Scanner = &metrics
    	}
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Sat Jun 01 05:16:24 UTC 2024
    - 6.3K bytes
    - Viewed (0)
  9. cmd/erasure-sets.go

    if (disks not recognized) // Always error.
    
    // Specific checks.
    if (all disks online)
      if (all disks return format.json)
         if (jbod consistent)
            if (all disks recognized)
              return
      else
         if (all disks return format.json not found)
            return error
         else (some disks return format.json not found)
            (heal format)
            return
         fi
       fi
    else
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Fri Sep 27 10:41:37 UTC 2024
    - 37K bytes
    - Viewed (1)
  10. cmd/metacache-set.go

    	// However many we ask, versions must exist on ~50%
    	listingQuorum := (askDisks + 1) / 2
    
    	if askDisks > 0 && len(disks) > askDisks {
    		rand.Shuffle(len(disks), func(i, j int) {
    			disks[i], disks[j] = disks[j], disks[i]
    		})
    		fallbackDisks = disks[askDisks:]
    		disks = disks[:askDisks]
    	}
    
    	// How to resolve results.
    	resolver := metadataResolutionParams{
    		dirQuorum: listingQuorum,
    		objQuorum: listingQuorum,
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Fri Jul 12 16:23:16 UTC 2024
    - 30.7K bytes
    - Viewed (0)
Back to top