juicedata/juicefs · error

failed to get an object: expect "hello", but got %v, error:

Error message

failed to get an object: expect "hello", but got %v, error: %s

What it means

Returned by objbench's 'get an object' test when reading back the uploaded 'hello' object yields different bytes or errors. It verifies basic read-after-write correctness and reports the mismatched content and error.

Source

Thrown at cmd/objbench.go:793

	})

	runCase("put an object", func(blob object.ObjectStorage) error {
		br := []byte("hello")
		if err := blob.Put(ctx, key, bytes.NewReader(br)); err != nil {
			return fmt.Errorf("put object failed: %s", err)
		}
		defer blob.Delete(ctx, key) //nolint:errcheck
		return nil
	})

	runCase("get an object", func(blob object.ObjectStorage) error {
		br := []byte("hello")
		if err := blob.Put(ctx, key, bytes.NewReader(br)); err != nil {
			return fmt.Errorf("put object failed: %s", err)
		}
		defer blob.Delete(ctx, key) //nolint:errcheck
		if d, e := get(blob, key, 0, -1); e != nil || d != string(br) {
			return fmt.Errorf(`failed to get an object: expect "hello", but got %v, error: %s`, d, e)
		}
		if d, e := get(blob, key, 0, 5); e != nil || d != string(br) {
			return fmt.Errorf(`failed to get an object: expect "hello", but got %v, error: %s`, d, e)
		}
		return nil
	})

	runCase("get non-exist", func(blob object.ObjectStorage) error {
		if _, err := blob.Get(ctx, "not_exists_file", 0, -1); err == nil {
			return fmt.Errorf("get not existed object should failed: %s", err)
		}
		return nil
	})

	runCase("get partial object", func(blob object.ObjectStorage) error {
		br := []byte("hello")
		if err := blob.Put(ctx, key, bytes.NewReader(br)); err != nil {
			return fmt.Errorf("put object failed: %s", err)

View on GitHub (pinned to c9a67b23e8)

Solutions

  1. Check endpoint/credentials and that no proxy alters object content
  2. Re-run the benchmark to rule out transient corruption
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at cmd/objbench.go:793 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of juicedata/juicefs@c9a67b23e8 (2026-09-06). Data as JSON: /api/errors/893fab5672ceb1fa. Report an issue: GitHub.