Databend is an open source elastic and reliable Modern Cloud Data Warehouse, it offers blazing fast query and combines elasticity, simplicity, low cost of the cloud, built to make the Data Cloud easy.

Big changes

Below is a list of some major changes that we don't want you to miss.

Features

  • databend-query(common): introduce a helper ExpressionEvaluator to simplify expression evaluation by @leiysky, (#5108)
  • databend-query(parser): support more statements by @andylokandy, (#5089)
  • databend-query: aggregator in new planner by @xudong963, (#5027 & #5115)
  • common-functions: add scalar function humanize by @cadl, (#5073)

Improvement

  • databend-query(processor): refactor insert into query for fuse engine by @zhang2014, (#5139)
  • datablocks: add gather kernels for datablock by @sundy-li, (#5114)
  • common-meta: CreateDatabaseReq/DropDatabaseReq use DatabaseNameIdent to specify to db to create/delete by @drmingdrmer, (#5102 & #5104)
  • common-functions: specialize CastFunction with from type by @leiysky, (#5124)
  • datavalues: remove useless precision convert & remove tz in type timestamp by @Veeupup, (#5084)
  • datavalues: using enum_dispatch to represent data_type by @PsiACE, (#5063)

Documentation

Bug fixes

  • databend-query: fix trim function by @jiahui-97, (#5136)
  • databend-query: manually drop the aggregate states to avoid memory leak by @sundy-li, (#5056)
  • databend-query: fix clickhouse worker hang when interpreter fail to execute by @chowc, (#5091)

Tips

Let's learn a weekly tip from Databend.

RFC | New SQL Logic Test Framework

The Stateless/Stateful test suite is used in Databend to ensure that the query results are correct. However, it has some shortages in current logic test which should be improved.

  • Comparing output from binary to a result file cannot be extended to other protocols.
  • The result file cannot show the result for each statement.
  • Currently, we do not provide error handling for sql logic tests
  • We could not extend sql logic statement with sorting, retry and other logics.

So, we plan to refactor this testing solution to introduce an extended version of sqllogictest. The statement spec could be categorized to following fields:

  • statement ok: the sql statement is correct and the output is expected success.
  • statement error <error regex>: the sql statement output is expected error.
  • statement query <desired_query_schema_type> <options> <labels>: the sql statement output is expected success with desired result.

You can check out RFC | New SQL Logic Test Framework to learn more.

Changelogs

You can check the changelogs of Databend nightly to learn about our latest developments.

Meet Us

Please join the DatafuseLabs Community if you are interested in Databend.

We are looking forward to seeing you try our code. We have a strong team behind you to ensure a smooth experience in trying our code for your projects. If you are a hacker passionate about database internals, feel free to play with our code.

You can submit issues for any problems you find. We also highly appreciate any of your pull requests.