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