Tencent/WeKnora · error

bucket %q does not exist

Error message

bucket %q does not exist

What it means

MinIO read-only connectivity probe: BucketExists succeeded but reported the configured bucket absent, so the service is reachable yet misconfigured; the probe never creates buckets, so this is a hard configuration error.

Source

Thrown at internal/application/service/file/minio.go:83

		}
	}

	return svc, nil
}

// CheckConnectivity verifies MinIO is reachable and, if a bucket is configured,
// that the bucket exists. This is a read-only probe — it never creates a bucket.
func (s *minioFileService) CheckConnectivity(ctx context.Context) error {
	checkCtx, cancel := context.WithTimeout(ctx, 10*time.Second)
	defer cancel()

	if s.bucketName != "" {
		exists, err := s.client.BucketExists(checkCtx, s.bucketName)
		if err != nil {
			return err
		}
		if !exists {
			return fmt.Errorf("bucket %q does not exist", s.bucketName)
		}
		return nil
	}
	_, err := s.client.ListBuckets(checkCtx)
	return err
}

// CheckMinioConnectivity tests MinIO connectivity using the provided credentials.
// It creates a temporary service instance internally and delegates to CheckConnectivity.
func CheckMinioConnectivity(ctx context.Context, endpoint, accessKeyID, secretAccessKey, bucketName string, useSSL bool) error {
	svc, err := newMinioClient(endpoint, accessKeyID, secretAccessKey, bucketName, useSSL)
	if err != nil {
		return err
	}
	return svc.CheckConnectivity(ctx)
}

// parseMinioFilePath extracts the object name from a provider scheme: minio://{bucket}/{objectKey}

View on GitHub (pinned to 988cbb0330)

Solutions

  1. Create the bucket or correct the bucket name in configuration
  2. Grant the probe credentials and re-run
  3. Distinguish this from connectivity failures when surfacing to users
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at internal/application/service/file/minio.go:83 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of Tencent/WeKnora@988cbb0330 (2026-09-02). Data as JSON: /api/errors/80d27d11e0bcb64c. Report an issue: GitHub.