Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 14 for GetLock (0.05 sec)

  1. internal/dsync/dsync_test.go

    	}
    
    	dm := NewDRWMutex(ds, "aap")
    	dm.refreshInterval = testDrwMutexRefreshInterval
    
    	ctx, cancel := context.WithCancel(context.Background())
    
    	if !dm.GetLock(ctx, cancel, id, source, Options{Timeout: 5 * time.Minute}) {
    		t.Fatal("GetLock() should be successful")
    	}
    
    	// Make it run twice.
    	timer := time.NewTimer(testDrwMutexRefreshInterval * 2)
    
    	select {
    	case <-ctx.Done():
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Wed Jun 19 14:35:19 UTC 2024
    - 11.1K bytes
    - Viewed (0)
  2. cmd/namespace-lock.go

    	opsID   string
    }
    
    // Lock - block until write lock is taken or timeout has occurred.
    func (di *distLockInstance) GetLock(ctx context.Context, timeout *dynamicTimeout) (LockContext, error) {
    	lockSource := getSource(2)
    	start := UTCNow()
    
    	newCtx, cancel := context.WithCancel(ctx)
    	if !di.rwMutex.GetLock(newCtx, cancel, di.opsID, lockSource, dsync.Options{
    		Timeout:       timeout.Timeout(),
    		RetryInterval: timeout.RetryInterval(),
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Sun Sep 29 22:40:36 UTC 2024
    - 9.2K bytes
    - Viewed (0)
  3. cmd/erasure-server-pool.go

    			return BucketNameInvalid{Bucket: bucket}
    		}
    
    		if !opts.NoLock {
    			// Lock the bucket name before creating.
    			lk := z.NewNSLock(minioMetaTmpBucket, bucket+".lck")
    			lkctx, err := lk.GetLock(ctx, globalOperationTimeout)
    			if err != nil {
    				return err
    			}
    
    			ctx = lkctx.Context()
    			defer lk.Unlock(lkctx)
    		}
    	}
    
    	if err := z.s3Peer.MakeBucket(ctx, bucket, opts); err != nil {
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Sun Sep 29 22:40:36 UTC 2024
    - 89.8K bytes
    - Viewed (0)
  4. cmd/erasure-multipart.go

    	if opts.CheckPrecondFn != nil {
    		if !opts.NoLock {
    			ns := er.NewNSLock(bucket, object)
    			lkctx, err := ns.GetLock(ctx, globalOperationTimeout)
    			if err != nil {
    				return nil, err
    			}
    			ctx = lkctx.Context()
    			defer ns.Unlock(lkctx)
    			opts.NoLock = true
    		}
    
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Sun Sep 29 22:40:36 UTC 2024
    - 44.7K bytes
    - Viewed (0)
  5. internal/dsync/drwmutex.go

    	Timeout       time.Duration
    	RetryInterval time.Duration
    }
    
    // GetLock tries to get a write lock on dm before the timeout elapses.
    //
    // If the lock is already in use, the calling go routine
    // blocks until either the mutex becomes available and return success or
    // more time has passed than the timeout value and return false.
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Mon Sep 09 15:49:49 UTC 2024
    - 20.4K bytes
    - Viewed (0)
  6. cmd/erasure-object.go

    	if !srcInfo.metadataOnly {
    		return oi, NotImplemented{}
    	}
    
    	if !dstOpts.NoLock {
    		lk := er.NewNSLock(dstBucket, dstObject)
    		lkctx, err := lk.GetLock(ctx, globalOperationTimeout)
    		if err != nil {
    			return oi, err
    		}
    		ctx = lkctx.Context()
    		defer lk.Unlock(lkctx)
    	}
    	// Read metadata associated with the object from all disks.
    	storageDisks := er.getDisks()
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Thu Oct 31 22:10:24 UTC 2024
    - 78.8K bytes
    - Viewed (0)
  7. cmd/admin-handlers.go

    		writeErrorResponseJSON(ctx, w, errorCodes.ToAPIErr(ErrNotImplemented), r.URL)
    		return
    	}
    
    	nsLock := objectAPI.NewNSLock(minioMetaBucket, "site-net-perf")
    	lkctx, err := nsLock.GetLock(ctx, globalOperationTimeout)
    	if err != nil {
    		writeErrorResponseJSON(ctx, w, errorCodes.ToAPIErr(toAPIErrorCode(ctx, err)), r.URL)
    		return
    	}
    	ctx = lkctx.Context()
    	defer nsLock.Unlock(lkctx)
    
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Fri Oct 04 11:32:32 UTC 2024
    - 99.7K bytes
    - Viewed (0)
  8. cmd/batch-rotate.go

    	versionSuspended := globalBucketVersioningSys.PrefixSuspended(srcBucket, srcObject)
    
    	lock := api.NewNSLock(r.Bucket, objInfo.Name)
    	lkctx, err := lock.GetLock(ctx, globalOperationTimeout)
    	if err != nil {
    		return err
    	}
    	ctx = lkctx.Context()
    	defer lock.Unlock(lkctx)
    
    	opts := ObjectOptions{
    		VersionID:        objInfo.VersionID,
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Wed Sep 18 17:59:03 UTC 2024
    - 14.7K bytes
    - Viewed (0)
  9. cmd/erasure-healing.go

    		Bucket:    bucket,
    		Object:    object,
    		VersionID: versionID,
    		DiskCount: len(storageDisks),
    	}
    
    	if !opts.NoLock {
    		lk := er.NewNSLock(bucket, object)
    		lkctx, err := lk.GetLock(ctx, globalOperationTimeout)
    		if err != nil {
    			return result, err
    		}
    		ctx = lkctx.Context()
    		defer lk.Unlock(lkctx)
    	}
    
    	// Re-read when we have lock...
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Wed Oct 02 17:50:41 UTC 2024
    - 34.4K bytes
    - Viewed (0)
  10. cmd/background-newdisks-heal-ops.go

    			return err
    		}
    	}
    
    	// Prevent parallel erasure set healing
    	locker := z.NewNSLock(minioMetaBucket, fmt.Sprintf("new-drive-healing/%d/%d", poolIdx, setIdx))
    	lkctx, err := locker.GetLock(ctx, newDiskHealingTimeout)
    	if err != nil {
    		return fmt.Errorf("Healing of drive '%v' on %s pool, belonging to %s erasure set already in progress: %w",
    			disk, humanize.Ordinal(poolIdx+1), humanize.Ordinal(setIdx+1), err)
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Sat Oct 26 09:58:27 UTC 2024
    - 16.6K bytes
    - Viewed (0)
Back to top