juicedata/juicefs · error
convert metrics: %w
Error message
convert metrics: %w
What it means
Returned by RemoteWriter.Push in the Java SDK when converting gathered Prometheus metric families into TimeSeries fails — unexpected metric types or malformed label/sample data. The wrapped error identifies the offending conversion step.
Source
Thrown at sdk/java/libjfs/remote_write.go:153
}
}
if err != nil || len(mfs) == 0 {
switch rw.errorHandling {
case AbortOnError:
return err
case ContinueOnError:
if rw.logger != nil {
rw.logger.Println("continue on error:", err)
}
default:
return err
}
}
// Convert metrics to TimeSeries
tsList, err := rw.ConvertMetricsToTimeSeries(mfs)
if err != nil {
return fmt.Errorf("convert metrics: %w", err)
}
if len(tsList) == 0 {
return nil // No samples to push
}
// Send to remote write endpoint
wr := &prompb.WriteRequest{Timeseries: tsList}
data, err := wr.Marshal()
if err != nil {
return fmt.Errorf("marshal protobuf: %w", err)
}
compressed := snappy.Encode(nil, data)
req, err := http.NewRequest("POST", rw.url, bytes.NewReader(compressed))
if err != nil {
return fmt.Errorf("create request: %w", err)
}View on GitHub (pinned to c9a67b23e8)
Solutions
- Check that registered metrics use standard Prometheus types with valid names/labels
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at sdk/java/libjfs/remote_write.go:153 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/21b3f91740bc3730.
Report an issue: GitHub.