Skip to content

feat: cache InfluxDB Prometheus remote reads - #1102

Open
houyuwushang wants to merge 2 commits into
trickstercache:mainfrom
houyuwushang:feat/influxdb-prom-remote-read-272
Open

feat: cache InfluxDB Prometheus remote reads#1102
houyuwushang wants to merge 2 commits into
trickstercache:mainfrom
houyuwushang:feat/influxdb-prom-remote-read-272

Conversation

@houyuwushang

Copy link
Copy Markdown
Contributor

Description

Fixes #272.

Adds DeltaProxyCache support for InfluxDB 1.x POST /api/v1/prom/read requests using the single-query SAMPLES shape supported by InfluxDB. Unsupported request shapes remain on the existing proxy path, preserving the origin's status and response body.

The implementation canonicalizes label matchers for cache identity, keeps InfluxDB query and authorization inputs isolated, maps InfluxDB's exclusive wire end to 1 ms cache extents, and uses hints.step_ms only for retention and backfill policies rather than as guaranteed sample spacing. Snappy decoding is bounded, and the supported scope is documented.

I validated the branch on Linux against InfluxDB 1.12.4. Extending a cached request from three to four samples fetched only the missing final millisecond; the next request was a full hit, and the four-sample response remained available after stopping InfluxDB. A two-query request retained InfluxDB's 400 response and body.

Type of Change

    • Bug fix
    • New feature
    • Optimization
    • Test coverage
    • Documentation
    • Infrastructure

AI Disclosure

    • This contribution DOES NOT include AI-generated changes
    • This contribution DOES include AI-generated changes, and I have reviewed the relevant contributing guidelines.

Signed-off-by: houyuwushang <liuluoqianqiu@outlook.com>
@houyuwushang
houyuwushang requested a review from a team as a code owner August 5, 2026 07:20
Signed-off-by: houyuwushang <liuluoqianqiu@outlook.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Trickster with influxdb prometheus endpoint needs post_uri

1 participant