@Greptime: Greptime Monthly update No. 87 Prometheus native histograms now work end to end in GreptimeDB: write via remote write v…
Summary
GreptimeDB's August 2026 monthly update introduces end-to-end support for Prometheus native histograms, an experimental service dependency graph from OTLP traces, and breaking changes in version v1.2.0-beta.2.
View Cached Full Text
Cached at: 09/01/26, 05:49 PM
Greptime Monthly update No. 87
Prometheus native histograms now work end to end in GreptimeDB: write via remote write v2 or OTLP, aggregate with PromQL, read back over the Prometheus HTTP API including /metadata.
The part that matters for migration: histogram_quantile and histogram_fraction evaluate classic le buckets, native histograms, and tables holding both — in a single scan. You don’t have to convert everything first.
Also in the August report: a service dependency graph derived from OTLP traces at read time (experimental), cumulative OTLP exponential histograms behind an opt-in flag, and two breaking changes in v1.2.0-beta.2 worth checking before you upgrade.
Native Histogram Queries & an Experimental Service Dependency Graph | Greptime Monthly Report - No. 87
Source: https://greptime.com/blogs/2026-08-31-greptimedb-monthly-report
Summary
August 2026 · 2026-08-01 – 2026-08-31
What landed this month:
- Prometheus native histograms are queryable end to end, from PromQL aggregations to Prometheus HTTP responses.
- OTLP traces now yield a service dependency graph you can query with SQL, derived at read time and still experimental.
- Cumulative
OTLPexponential histograms can be ingested with an opt-in option.
GreptimeDB shippedv1.2.0-beta.2on August 21, the second beta of the v1.2 line: one-wayskip\_walchanges withALTER TABLE, JSON2 extension and layout preparation, procedure and admin event observability, and Flow runtime observability. Two breaking changes are worth checking before upgrading. Soft-drop and table recovery are enterprise-only again (db#8747) — beta1 exposed them in OSS because the enterprise gate was missing. An OSS beta2 metasrv rejectsgc\.experimental\_soft\_drop\.enable = trueat startup and cannot recover or purge tables soft-dropped in beta1, so recover what you need first. Persisted native histogram fields also changed signedness (db#8824), with no migration, downgrade, or mixed-version path.
Contributors
Over the past month,20 contributorsmerged a total of166 PRs. Among them,8 community contributorscontributed10 PRs. Welcome to our new contributors:@xhwhis,@tian1220A,@dhruvxvaishnav,@wy471x,@fzlzjerry,@grezzko!
Thanks to the community contributors who shipped this month:
- @xhwhisdb#8722*db#8721*
- @lyang24db#8767*db#8733*
- @onepizzateamdb#8392
- @dhruvxvaishnavdb#8935
- @tian1220Adb#8960
- @grezzkodb#8659
- @fzlzjerrydb#8859
- @wy471xdb#8923
Highlights
db#8850feat(servers): expose native histograms over Prometheus HTTP
Prometheus native histograms are now usable end to end: write them through remote write v2 or OTLP, aggregate them with PromQL, and read them back over the Prometheus HTTP API, including/metadata, label discovery and query annotations. Compared with classiclebuckets, you get high-resolution latency distributions without one series per bucket, and the cutover can be gradual:db#8874evaluateshistogram\_quantileandhistogram\_fractionover classic, native and mixed inputs in a single scan.
This closed the six-PR series July’s report flagged as in progress: sample-kind semantics (db#8758), ingest validation (db#8775), ranges that mix float and histogram samples (db#8784), vector operators (db#8798), and histogram-awaresum,avg,count,groupandcount\_values(db#8848). If you already store native histograms, two things changed: the persisted fields’ signedness (db#8824), and the config location, now underprom\_store(db#8744).
db#8614feat: read-time entity relationships graph over telemetry
Once OTLP traces are in GreptimeDB, the service dependency graph does not have to be built separately. Querygreptime\_private\.semantic\_entitiesandgreptime\_private\.semantic\_relationshipswith SQL to see which service calls which, with RED metrics on every edge. Derivation runs at read time and as the caller: each source table is authorized separately, cancellation and deadlines follow the caller, and the window comes from theobserved\_atfilter in the query, defaulting to the last hour (db#8794). Dependencies that telemetry cannot show can be inserted by hand intogreptime\_private\.semantic\_relationships\_declared.
It is still experimental: the tables sit ingreptime\_private, they are not documented, and the output schema may change. Services that only emit metrics needotlp\.experimental\_enable\_resource\_info, off by default. The rest of the month expanded what the graph recognizes: more derived edge types and built-in naming conventions for Prometheus, Kubernetes andgen\_aiattributes (db#8836,db#8854,db#8880,db#8797,db#8904,db#8936).
db#8900feat(otlp): support cumulative exponential histograms
If your OTel pipeline emits exponential histograms, you no longer have to convert them to fixed buckets before writing. Turn onotlp\.experimental\_enable\_exponential\_histogram, off by default, and cumulativeExponentialHistogrammetrics are stored as ordinary native histograms: the same storage format, and no protocol-specific query path.
Cumulative temporality only. Scales\-4\.\.=8map directly and finer resolutions are downscaled to 8; delta temporality, min/max, exemplars and OTel Arrow are not covered yet. Points that cannot be ingested are now reported rather than silently accepted, and a request mixing valid and invalid points returns partial success.
db#8768feat: add admin function to discard unflushed data
As a last-resort recovery step, you can now discard a region’s unflushed in-memory data without losing what is already on disk.ADMIN discard\_unflushed\_data\(\.\.\.\)takes a region ID, or a table name to cover every region of that table, and leaves all persisted SST files in place.
On the engine side (db#8600), the WAL replay frontier is advanced and persisted before the memtables are swapped, so repeated calls are safe and a stale in-flight flush cannot republish discarded rows.
db#8734feat(event): add event context to procedure events
greptime\_private\.eventsnow records where a DDL came from. Each submitted procedure event carries a structuredEventContextas JSONB that tells SQL, gRPC, Prometheus and OTLP apart, along with automatic schema-evolution paths (auto\_create,auto\_alter). Whether a table was altered by a person or by ingest is now a SQL query.
With the actor behind each event and admin function executions recorded as well (db#8849,db#8835,db#8856,db#8834), the events table is usable as an audit trail.
Also this month
Authorization: Bearer <token\>now works on the/v1/HTTP interfaces. The server treats the token as opaque and leaves validation to theUserProvider, so JWT and OIDC policy stays outside the database (db#8719).information\_schema\.flow\_statisticsandSHOW FLOW STATUSshow how a Flow is actually running; in distributed Flow,start\_timeanduptime\_secondsare stillNULL(db#8392).- Smaller additions:
uddsketch\_rank(db#8929) and mergeablestddev\_popstate functions (db#8972),greptime standalone start \-\-daemonon Unix (db#8960), and riscv64 cross-builds with release artifacts (db#8820). - Engine-side work continued: two-phase metric series scans are now on by default for eligible sparse metric regions and fall back to the legacy scan elsewhere, with
experimental\_series\_scan\_v2to turn them off (db#8826,db#8703,db#8788,db#8926); JSON2 gained per-column DDL settings, v2 layout primitives and v2 query support, though v2 is still not the default layout (db#8745,db#8833,db#8895,db#8901,db#8940,db#8964).
Ecosystem Updates
Grafana Plugin
2 releases this month (v3.0.1,v3.0.3).
- Queries run through a Go backend against
/v1/sql, so panel SQL, time macros included, can be used directly in Grafana alert rules. - AUse OTeltoggle auto-fills GreptimeDB-style logs and traces columns.
- v3.0.3 fixes authentication.
Existing SQL panels, Query Builder configurations and dashboards keep working. Therelease postcovers the change in full.
Dashboard
4 releases this month (v0.13.14,v0.13.13,v0.13.12,v0.13.11).
- Dashboards can be exported as a full snapshot.
- A command palette makes navigation and actions keyboard-driven.
- Virtual-list tables support column resizing, the compact view uses each column’s natural width, and there is a new width option.
- Query results can go full screen.
- Perses is updated to 0.54, and the guided tour is removed.
- Connections no longer break after changing hosts.
Kubernetes Operator
1 release this month (v0.6.1).
- Audit logs are configurable through the CRDs, including frontend groups.
- Service ports can be customized.
- The
ingressCRD field is removed, which is a breaking change.
MCP Server
1 release this month (v0.5.2).
mcpdependency is pinned to\>=1\.8\.0,<2to preventModuleNotFoundErroron fresh installs.
Good First Issues
These two issues are a reasonable size for a first contribution to GreptimeDB. Comment on one to pick it up.
Issue#8951Metric engine ignores ttl set on a logical table, so the OTLP metrics write hint has no effect
The metric engine accepts a TTL on a logical table and then ignores it, so an OTLP write hint likex\-greptime\-hints: ttl=180dsilently does nothing. Either propagate the TTL to the physical table, or reject it atCREATE TABLEandALTER TABLEtime with a clear error.
Keywords: Table Engine, Write Protocols, SQL
Difficulty: Medium
Issue#8620Support configuring region engine options through environment variables
region\_engineoptions can only be set in TOML today. The equivalent environment variable,GREPTIMEDB\_STANDALONE\_\_REGION\_ENGINE\_\_MITO\_\_GLOBAL\_WRITE\_BUFFER\_REJECT\_SIZE, fails at startup instead of being applied. Make the region engine list follow the same layered configuration mapping as the rest of the config.
Keywords: Configuration, Standalone, Datanode
Difficulty: Medium
Get Involved
- Docs:https://docs.greptime.com
- GitHub:https://github.com/GreptimeTeam/greptimedb
- X:https://x.com/Greptime
Open an issue for bugs and feature requests, or drop into the community channel.
Similar Articles
@Greptime: GreptimeDB v1.3.0-alpha.1 — PromQL native histograms, wide: selection, rate()/delta(), vector operators, aggregations, …
GreptimeDB v1.3.0-alpha.1 introduces PromQL native histograms and vector operators for enhanced observability, with added support for OTLP traces and RISC-V 64 builds.
@Greptime: GreptimeDB v1.2.0-beta.1 is out. 205 changes, 259 commits, 22 contributors. The headline items: JSON2 as a data type, P…
GreptimeDB v1.2.0-beta.1 is released with major features including JSON2 as a structured column type, Prometheus Remote Write v2 with native histograms, dictionary-encoded series keys for faster queries, and additional hardening/breaking changes.
@Greptime: On Prometheus remote write, the bottleneck wasn't network or memtable — it was the Region Worker holding &mut while dec…
GreptimeDB v1.0 introduces Pending Rows Batcher, a three-stage pipeline that moves CPU-intensive work off the Datanode's critical section, improving Prometheus remote write throughput from 1.20M to 2.17M points/sec and reducing Datanode CPU usage by 20%.
@Greptime: GreptimeDB v1.1.0 is out PromQL rate/increase up to 97% faster, 20–40% lower query time overall Up to 4.5x faster on TS…
GreptimeDB v1.1.0 is released, offering up to 97% faster PromQL queries, 20-40% lower overall query times, and up to 4.5x improvement on TSBS scan-heavy queries, along with online repartitioning for existing tables.
@Greptime: GreptimeDB v1.1.2 is out — a v1.1 patch worth upgrading to. Headline fix: scheduled Flows now bind now()/current_timest…
GreptimeDB v1.1.2 is a patch release that fixes scheduled Flows now() binding for deterministic EVAL INTERVAL windows, along with bug fixes for Kafka SASL password redaction, GC index file listing, parquet metadata cache size, Prometheus label discovery scan, and PromQL time binary aggregation. It is recommended for users to upgrade.