Skip to content

OpenDAL 0.56 & CLI Metadata Commands | Greptime Biweekly Report - No. 82

`greptime` CLI accepts `metadata put` commands for direct key-value operations. Flat format queries prefilter any columns before scanning data...
OpenDAL 0.56 & CLI Metadata Commands | Greptime Biweekly Report - No. 82
On this page

Summary

Development period: 2026-04-20 - 2026-05-03

Here are the highlights from recent commits:

  • greptime CLI accepts metadata put commands for direct key-value operations
  • Flat format queries prefilter any columns before scanning data files
  • Window function queries handle TimeRange precision and column aliases correctly

We encourage users on older versions to upgrade for these fixes and improvements.

Contributors

Over the past two weeks, 14 contributors merged a total of 43 PRs. Among them, 5 community contributors contributed 8 PRs. Welcome to our new contributors: @QuakeWang, @BootstrapperSBL, @onepizzateam, @JoeS51!

Thanks to our community contributors:

Highlights of Recent PRs

db#8003 chore: update the opendal to 0.56 rc2

GreptimeDB's storage layer now uses OpenDAL 0.56, replacing the previous version. This dependency update maintains the same object storage interface while incorporating upstream bug fixes and improvements.

db#7982 refactor(mito2): remove PrimaryKey variants

The mito2 storage engine removes its legacy primary-key scan path and uses only the flat format for all queries. This cleanup drops approximately 1,800 lines of unused code from the query execution pipeline.

db#7989 feat(cli): add metadata put key and table commands

The GreptimeDB CLI now supports writing metadata through metadata put commands for direct key-value operations and table-specific updates. Users can pipe JSON payloads via --value-stdin to update table info and routes without shell escaping issues.

db#7972 feat: support prefiltering any columns in flat format

Previously, parquet prefiltering only worked on primary key columns through encoded key decoding. Prefiltering now supports all column types (tags, fields, timestamps) with dedicated execution paths for simple predicates and complex expressions like IN and BETWEEN, delivering 4.5x faster performance on TSBS cpu-max-all queries.

db#8019 fix: window sort off by one precision TimeRange&better alias track

Window sort optimization now recognizes aliased and wrapped time-index expressions like SELECT ts AS timestamp ... ORDER BY timestamp and SELECT to_timestamp_millis(ts) ... ORDER BY ts, so these queries use the faster windowed sort execution path instead of falling back to regular sorting. Precision conversion at partition boundaries is also fixed to prevent incorrect row slicing when timestamp units change.

Good First Issue

Issue#7755 Feature request: Support EKS Pod Identity / ECS container credentials endpoint for S3 object storage

Update OpenDAL dependency to version that includes reqsign >=0.18.1 to support AWS container credentials endpoint for EKS Pod Identity and ECS task roles.

  • Keywords: Storage, Dependencies
  • Difficulty: Easy

Issue#7987 feat: add flow_statistics system table and SHOW FLOW STATUS for flow runtime observability

Add a system table called flow_statistics and a SHOW FLOW STATUS SQL command to display flow runtime information like start time, uptime, processed data volume, and recent errors.

  • Keywords: SQL, Observability
  • Difficulty: Medium

Stay in the loop

Join our community