Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 96 for Erasure (0.09 sec)

  1. cmd/erasure.go

    	// Shuffle buckets to ensure total randomness of buckets, being scanned.
    	// Otherwise same set of buckets get scanned across erasure sets always.
    	// at any given point in time. This allows different buckets to be scanned
    	// in different order per erasure set, this wider spread is needed when
    	// there are lots of buckets with different order of objects in them.
    	r := rand.New(rand.NewSource(time.Now().UnixNano()))
    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/erasure-metadata.go

    // ShardSize - returns actual shared size from erasure blockSize.
    func (e ErasureInfo) ShardSize() int64 {
    	return ceilFrac(e.BlockSize, int64(e.DataBlocks))
    }
    
    // IsValid - tells if erasure info fields are valid.
    func (fi FileInfo) IsValid() bool {
    	if fi.Deleted {
    		// Delete marker has no data, no need to check
    		// for erasure coding information
    		return true
    	}
    	dataBlocks := fi.Erasure.DataBlocks
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Thu Oct 31 22:10:24 UTC 2024
    - 21.3K bytes
    - Viewed (0)
  3. cmd/erasure-metadata_test.go

    		fi.Size = 1 << 20
    		metaArr := make([]FileInfo, N)
    		parities := make([]int, N)
    		for i := range N {
    			fi.Erasure.Index = i + 1
    			metaArr[i] = fi
    			parities[i] = parity
    			if i < agree {
    				continue
    			}
    			metaArr[i].Erasure.Index = 0 // creates invalid fi on remaining drives
    			parities[i] = -1             // invalid fi are assigned parity -1
    		}
    		res.metaArr = metaArr
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Thu Jul 25 21:02:50 UTC 2024
    - 13.5K bytes
    - Viewed (0)
  4. cmd/erasure-decode.go

    	shardSize     int64
    	shardFileSize int64
    	buf           [][]byte
    	readerToBuf   []int
    	stashBuffer   []byte
    }
    
    // newParallelReader returns parallelReader.
    func newParallelReader(readers []io.ReaderAt, e Erasure, offset, totalLength int64) *parallelReader {
    	r2b := make([]int, len(readers))
    	for i := range r2b {
    		r2b[i] = i
    	}
    	bufs := make([][]byte, len(readers))
    	shardSize := int(e.ShardSize())
    	var b []byte
    
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Thu Aug 29 01:40:52 UTC 2024
    - 9.5K bytes
    - Viewed (0)
  5. cmd/erasure-healing-common.go

    	for i, meta := range partsMetadata {
    		if !meta.IsValid() {
    			// Since for majority of the cases erasure.Index matches with erasure.Distribution we can
    			// consider the offline disks as consistent.
    			continue
    		}
    		if !meta.Deleted {
    			if len(meta.Erasure.Distribution) != len(onlineDisks) {
    				// Erasure distribution seems to have lesser
    				// number of items than number of online disks.
    				inconsistent++
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Thu Oct 31 22:10:24 UTC 2024
    - 12.7K bytes
    - Viewed (0)
  6. cmd/erasure-healing_test.go

    )
    
    // Tests isObjectDangling function
    func TestIsObjectDangling(t *testing.T) {
    	fi := newFileInfo("test-object", 2, 2)
    	fi.Erasure.Index = 1
    
    	ifi := newFileInfo("test-object", 2, 2)
    	ifi.SetInlineData()
    	ifi.Erasure.Index = 1
    
    	testCases := []struct {
    		name             string
    		metaArr          []FileInfo
    		errs             []error
    		dataErrs         map[int][]int
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Mon Jun 10 15:51:27 UTC 2024
    - 49K bytes
    - Viewed (0)
  7. cmd/erasure-healing.go

    		errs, latestMeta, filterDisksByETag, bucket, object, scanMode)
    
    	var erasure Erasure
    	if !latestMeta.Deleted && !latestMeta.IsRemote() {
    		// Initialize erasure coding
    		erasure, err = NewErasure(ctx, latestMeta.Erasure.DataBlocks,
    			latestMeta.Erasure.ParityBlocks, latestMeta.Erasure.BlockSize)
    		if err != nil {
    			return result, err
    		}
    	}
    
    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/erasure-sets.go

    		return 0, 0, err
    	}
    
    	if format.Erasure.This == offlineDiskUUID {
    		return -1, -1, fmt.Errorf("DriveID: %s is offline", format.Erasure.This)
    	}
    
    	for i := 0; i < len(refFormat.Erasure.Sets); i++ {
    		for j := 0; j < len(refFormat.Erasure.Sets[0]); j++ {
    			if refFormat.Erasure.Sets[i][j] == format.Erasure.This {
    				return i, j, nil
    			}
    		}
    	}
    
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Fri Sep 27 10:41:37 UTC 2024
    - 37K bytes
    - Viewed (1)
  9. cmd/erasure-multipart.go

    	case size < fi.Erasure.BlockSize:
    		// No need to allocate fully fi.Erasure.BlockSize buffer if the incoming data is smaller.
    		buffer = make([]byte, size, 2*size+int64(fi.Erasure.ParityBlocks+fi.Erasure.DataBlocks-1))
    	}
    
    	if len(buffer) > int(fi.Erasure.BlockSize) {
    		buffer = buffer[:fi.Erasure.BlockSize]
    	}
    	writers := make([]io.Writer, len(onlineDisks))
    	for i, disk := range onlineDisks {
    		if disk == nil {
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Sun Sep 29 22:40:36 UTC 2024
    - 44.7K bytes
    - Viewed (0)
  10. cmd/erasure-object.go

    	fi.DataDir = mustGetUUID()
    
    	// Initialize erasure metadata.
    	for index := range partsMetadata {
    		partsMetadata[index] = fi
    	}
    
    	// Order disks according to erasure distribution
    	var onlineDisks []StorageAPI
    	onlineDisks, partsMetadata = shuffleDisksAndPartsMetadata(storageDisks, partsMetadata, fi)
    
    	erasure, err := NewErasure(ctx, fi.Erasure.DataBlocks, fi.Erasure.ParityBlocks, fi.Erasure.BlockSize)
    	if err != nil {
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Thu Oct 31 22:10:24 UTC 2024
    - 78.8K bytes
    - Viewed (0)
Back to top