JuliusBrussee/caveman · error

ccr metadata get: %w

Error message

ccr metadata get: %w

What it means

Error "ccr metadata get: %w" thrown in JuliusBrussee/caveman.

Source

Thrown at engine/ccr/store_sqlite.go:484

	return original, nil
}

// GetMetadata returns optional compressor metadata stored with a handle. A known
// handle with no metadata returns nil, nil; an unknown handle returns ErrNotFound.
func (s *Store) GetMetadata(handle string) ([]byte, error) {
	if strings.HasPrefix(handle, "ccr_obj_") {
		if _, err := s.GetObject(handle); err != nil {
			return nil, err
		}
		return nil, nil
	}
	var metadata []byte
	row := s.db.QueryRow(`SELECT metadata FROM recoveries WHERE handle = ?`, handle)
	switch err := row.Scan(&metadata); {
	case errors.Is(err, sql.ErrNoRows):
		return nil, ErrNotFound
	case err != nil:
		return nil, fmt.Errorf("ccr metadata get: %w", err)
	}
	return metadata, nil
}

// PutObject stores one immutable typed working-memory object. Repeated puts of
// the same content-derived ID are idempotent; currentness changes use
// SetObjectCurrentness so invalidation stays explicit.
func (s *Store) PutObject(input Object) (string, error) {
	obj, err := prepareObject(input)
	if err != nil {
		return "", err
	}
	deps, err := json.Marshal(obj.Dependencies)
	if err != nil {
		return "", fmt.Errorf("ccr typed object dependencies: %w", err)
	}
	used, err := s.storageBytes()
	if err != nil {

View on GitHub (pinned to 27d5a3981a)

Solutions

  1. Fix the underlying ccr metadata get error and retry.

When it happens

Trigger: Thrown at engine/ccr/store_sqlite.go:484 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of JuliusBrussee/caveman@27d5a3981a (2026-08-15). Data as JSON: /api/errors/72a774bc555415db. Report an issue: GitHub.