Together with all our contributors worldwide, we are glad to see GreptimeDB making remarkable progress for the better. In the past two weeks, a total of 119 PRs were merged for our program. Below are some highlights:
- Accept InfluxDB request without timestamp even if table doesn't exist
- Impl Interval type and conversation between gRPC and Interval
- Support Truncate Table in standalone mode
- Support RangeSelect Logical Plan rewrite
Contributor list: (in alphabetical order)
For the past two weeks, our community has been super active with a total of 20 PRs from 11 contributors merged successfully and lots pending to be merged. Congrats on becoming our most active contributors in the past 2 weeks:
- @DevilExileSu (db#2084 db#2090 db#2097)
- @etolbakov (db#2078)
- @gongzhengyang (db#2055 db#2116)
- @niebayes (docs#509)
- @NiwakaDev (db#2041)
- @parkma99 (db#2042)
- @quakewang (docs#521)
- @QuenKar (db#1952 db#2043 db#2064 db#2117 db#2146)
- @sjcsjc123 (gtctl#86 gtctl#119)
- @sunray-ley (db#2044)
- @Taylor-lagrange (db#2058)
- @xie-zheng (db#2143)
👏 Let's welcome @gongzhengyang and @quakewang as the new contributors to join our community with their first PR merged.
A big THANK YOU for the generous and brilliant contributions! It is people like you who are making GreptimeDB a great product. Let's build an even greater community together.
Highlights of Recent PR
Originally, we could execute the following command when the corresponding table existed, but we couldn't execute the command when the corresponding table didn't exist:
curl -i -XPOST "http://localhost:4000/v1/influxdb/write?db=public&precision=ms" \ --data-binary \ 'monitor,host=127.0.0.1 cpu=0.1,memory=0.4'
We now support GreptimeDB accepting InfluxDB requests without timestamps if the corresponding table does not exist.
In #1952, we
Intervaltype in common time package;
Valuetrait for IntervalMonthDayNano;
and fix bug in #1886. Now we implement the basic Interval type, and this PR is used to implement the conversation between gRPC and Interval.
In this PR, we implement the Truncate Table procedure in standalone mode, reset version and Truncate region, which:
- Acquires the
committed_sequenceand persist it for recovery from the manifest;
- Mark all data in WAL as
- Mark all SSTs as deleted;
- Reset Version.
Also we support recover from
- Mark all SSTs as deleted.
- Reset the Version and set the
RegionMetaAction::Truncateas the Version's
In order to provide the ability to easily aggregate over time at the SQL level (e.g., aggregation calculations in five-minute steps), GreptimeDB is in the process of implementing a new Range syntax, and this implementation of the RangeSelect logic is planned to be one step in that process. This is one of the steps in implementing the range select logic scheme, and the issue can be found here.
We have released greptime-js-sdk, which is based on typescript and encapsulates common SQL table building, insertion and querying statements, as well as PromQL queries. We will continue to improve support for different protocols and syntaxes, as well as improve the documentation to further reduce the difficulty of getting started with GreptimeDB.