kubernetes/kops · error

error getting %s: %v

Error message

error getting %s: %v

What it means

Returned inside SwiftPath.CreateFile's existence-probe retry loop when a Swift object GET fails with something other than success or 404. The probe cannot determine whether the object exists — auth, permission, or transient proxy errors — so the not-exist (proceed to create) vs exists decision cannot be made and the loop keeps retrying until backoff is exhausted.

Source

Thrown at util/pkg/vfs/swiftfs.go:439

	client, err := p.getClient(ctx)
	if err != nil {
		return err
	}

	createFileLockSwift.Lock()
	defer createFileLockSwift.Unlock()

	// Check if exists.
	if _, err := RetryWithBackoff(swiftReadBackoff, func() (bool, error) {
		klog.V(4).Infof("Getting file %q", p)

		_, err := swiftobject.Get(ctx, client, p.bucket, p.key, swiftobject.GetOpts{}).Extract()
		if err == nil {
			return true, nil
		} else if isSwiftNotFound(err) {
			return true, os.ErrNotExist
		} else {
			return false, fmt.Errorf("error getting %s: %v", p, err)
		}
	}); err == nil {
		return os.ErrExist
	} else if !os.IsNotExist(err) {
		return err
	}

	err = p.createBucket()
	if err != nil {
		return err
	}

	return p.WriteFile(ctx, data, acl)
}

func (p *SwiftPath) createBucket() error {
	ctx := context.TODO()

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Check Swift credentials and read permission on the container
  2. Let RetryWithBackoff absorb transient proxy errors; a persistent failure indicates a catalog/endpoint problem
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at util/pkg/vfs/swiftfs.go:439 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05). Data as JSON: /api/errors/011af274b3ad8a70. Report an issue: GitHub.