Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 110 for lockers (0.11 sec)

  1. internal/dsync/locker.go

    package dsync
    
    import "context"
    
    // NetLocker is dsync compatible locker interface.
    type NetLocker interface {
    	// Do read lock for given LockArgs.  It should return
    	// * a boolean to indicate success/failure of the operation
    	// * an error on failure of lock request operation.
    	RLock(ctx context.Context, args LockArgs) (bool, error)
    
    	// Do write lock for given LockArgs. It should return
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Tue Jan 18 20:44:38 UTC 2022
    - 2.7K bytes
    - Viewed (0)
  2. cmd/namespace-lock.go

    	}
    	nsLk.ref++
    	n.lockMap[resource] = nsLk
    	n.lockMapMutex.Unlock()
    
    	// Locking here will block (until timeout).
    	if readLock {
    		locked = nsLk.GetRLock(ctx, opsID, lockSource, timeout)
    	} else {
    		locked = nsLk.GetLock(ctx, opsID, lockSource, timeout)
    	}
    
    	if !locked { // We failed to get the lock
    		// Decrement ref count since we failed to get the lock
    		n.lockMapMutex.Lock()
    		n.lockMap[resource].ref--
    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/namespace-lock_test.go

    		// Unlock the 1st lock; ref=1 after this line
    		nsLk.unlock("volume", "path", false)
    
    		// Taking another lockMapMutex here allows queuing up additional lockers. This should
    		// not be required but makes reproduction much easier.
    		nsLk.lockMapMutex.Lock()
    
    		// lk3 blocks.
    		lk3ch := make(chan bool)
    		go func() {
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Fri Apr 23 18:58:53 UTC 2021
    - 3.1K bytes
    - Viewed (0)
  4. internal/dsync/drwmutex.go

    		case <-ctx.Done():
    			return false
    		default:
    			// Try to acquire the lock.
    			if locked = lock(ctx, dm.clnt, &locks, id, source, isReadLock, tolerance, quorum, dm.Names...); locked {
    				dm.m.Lock()
    
    				// If success, copy array to object
    				if isReadLock {
    					copy(dm.readLocks, locks)
    				} else {
    					copy(dm.writeLocks, locks)
    				}
    
    				dm.m.Unlock()
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Mon Sep 09 15:49:49 UTC 2024
    - 20.4K bytes
    - Viewed (0)
  5. cmd/erasure-sets.go

    		}
    	}
    }
    
    func (s *erasureSets) GetLockers(setIndex int) func() ([]dsync.NetLocker, string) {
    	return func() ([]dsync.NetLocker, string) {
    		lockers := make([]dsync.NetLocker, len(s.erasureLockers[setIndex]))
    		copy(lockers, s.erasureLockers[setIndex])
    		return lockers, s.erasureLockOwner
    	}
    }
    
    func (s *erasureSets) GetEndpointStrings(setIndex int) func() []string {
    	return func() []string {
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Fri Sep 27 10:41:37 UTC 2024
    - 37K bytes
    - Viewed (1)
  6. cmd/erasure.go

    	// getLockers returns list of remote and local lockers.
    	getLockers func() ([]dsync.NetLocker, string)
    
    	// getEndpoints returns list of endpoint belonging this set.
    	// some may be local and some remote.
    	getEndpoints func() []Endpoint
    
    	// getEndpoints returns list of endpoint strings belonging this set.
    	// some may be local and some remote.
    	getEndpointStrings func() []string
    
    	// Locker mutex map.
    	nsMutex *nsLockMap
    }
    
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Fri Oct 04 22:23:33 UTC 2024
    - 16.1K bytes
    - Viewed (0)
  7. cmd/admin-handlers.go

    	vars := mux.Vars(r)
    
    	var args dsync.LockArgs
    	var lockers []dsync.NetLocker
    	for _, path := range strings.Split(vars["paths"], ",") {
    		if path == "" {
    			continue
    		}
    		args.Resources = append(args.Resources, path)
    	}
    
    	for _, lks := range z.serverPools[0].erasureLockers {
    		lockers = append(lockers, lks...)
    	}
    
    	for _, locker := range lockers {
    		locker.ForceUnlock(ctx, args)
    	}
    }
    
    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/local-locker.go

    func (l *localLocker) Close() error {
    	return nil
    }
    
    // IsOnline - local locker is always online.
    func (l *localLocker) IsOnline() bool {
    	return true
    }
    
    // IsLocal - local locker returns true.
    func (l *localLocker) IsLocal() bool {
    	return true
    }
    
    func (l *localLocker) ForceUnlock(ctx context.Context, args dsync.LockArgs) (reply bool, err error) {
    	select {
    	case <-ctx.Done():
    		return false, ctx.Err()
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Wed Jul 24 10:24:01 UTC 2024
    - 10.7K bytes
    - Viewed (0)
  9. cmd/lock-rest-client.go

    func (c *lockRESTClient) String() string {
    	return c.connection.Remote
    }
    
    func (c *lockRESTClient) call(ctx context.Context, h *grid.SingleHandler[*dsync.LockArgs, *dsync.LockResp], args *dsync.LockArgs) (ok bool, err error) {
    	r, err := h.Call(ctx, c.connection, args)
    	if err != nil {
    		return false, err
    	}
    	defer h.PutResponse(r)
    	ok = r.Code == dsync.RespOK
    	switch r.Code {
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Mon Jul 29 18:10:04 UTC 2024
    - 3.3K bytes
    - Viewed (0)
  10. cmd/lock-rest-server-common_test.go

    		TimeLastRefresh: UTCNow().UnixNano(),
    	}
    
    	locker.ll.lockMap["name"] = []lockRequesterInfo{
    		lockRequesterInfo1,
    		lockRequesterInfo2,
    	}
    
    	lri := locker.ll.lockMap["name"]
    
    	// test unknown uid
    	if locker.ll.removeEntry("name", dsync.LockArgs{
    		Owner: "owner",
    		UID:   "unknown-uid",
    	}, &lri) {
    		t.Errorf("Expected %#v, got %#v", false, true)
    	}
    
    	if !locker.ll.removeEntry("name", dsync.LockArgs{
    Registered: Sun Nov 03 19:28:11 UTC 2024
    - Last Modified: Wed Jul 24 10:24:01 UTC 2024
    - 3.2K bytes
    - Viewed (0)
Back to top