Ruihang Xia
d4aa4159d4
feat: support windowed sort with where condition
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2024-11-04 19:34:03 +08:00
evenyag
960f6d821b
feat: spawn block write wal
2024-11-04 17:35:12 +08:00
Ruihang Xia
9c5d044238
Merge branch 'main' into transform-count-min-max
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2024-11-01 17:45:28 +08:00
Ruihang Xia
be72d3bedb
feat: simple limit impl in PartSort ( #4922 )
...
* feat: simple limit impl in PartSort
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: update time_index method to return a non-optional String
Co-authored-by: Yingwen <realevenyag@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* use builtin limit
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add more info to analyze display
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update sqlness
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: Yingwen <realevenyag@gmail.com >
2024-11-01 09:25:03 +00:00
Yingwen
39ab1a6415
feat: get row group time range from cached metadata ( #4869 )
...
* feat: get part range min-max from cache for unordered scan
* feat: seq scan push row groups if num_row_groups > 0
* test: test split
* feat: update comment
* test: fix split test
* refactor: rename get meta data method
2024-11-01 06:35:03 +00:00
Ruihang Xia
70c354eed6
fix: the way to retrieve time index column
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2024-11-01 12:10:12 +08:00
Ruihang Xia
23bf663d58
feat: handle sort that wont preserving partition
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2024-10-31 22:13:36 +08:00
Ruihang Xia
817648eac5
Merge branch 'main' into transform-count-min-max
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2024-10-31 15:38:12 +08:00
Weny Xu
758ad0a8c5
refactor: simplify WeightedChoose ( #4916 )
...
* refactor: simplify WeightedChoose
* chore: remove unused errors
2024-10-31 06:22:30 +00:00
Ruihang Xia
8b60c27c2e
feat: enhance windowed-sort optimizer rule ( #4910 )
...
* add RegionScanner::metadata
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* skip PartSort when there is no tag column
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add more sqlness test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* handle desc
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: should keep part sort on DESC
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix clippy
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2024-10-31 06:15:45 +00:00
Yingwen
ea6df9ba49
fix: prune batches from memtable by time range ( #4913 )
...
* feat: add an iter to prune by time range
* feat: filter rows from mem range
2024-10-31 05:13:35 +00:00
Ning Sun
69420793e2
feat: implement parse_query api ( #4860 )
...
* feat: implement parse_query api
* chore: switch to upstream
* fix: add post method for parse_query
* chore: bump promql-parser
* test: use latest promql ast serialization
2024-10-30 12:16:22 +00:00
Yingwen
0da112b335
chore: provide more info in check batch message ( #4906 )
...
* chore: provide more info in check message
* chore: set timeout to 240s
---------
Co-authored-by: WenyXu <wenymedia@gmail.com >
2024-10-30 11:56:10 +00:00
dennis zhuang
dcc08f6b3e
feat: adds the number of rows and index files size to region_statistics table ( #4909 )
...
* feat: adds index size to region statistics
* feat: adds the number of rows for region statistics
* test: adds sqlness test for region_statistics
* fix: test
2024-10-30 11:12:58 +00:00
dennis zhuang
a34035a1f2
fix: set transaction variables not working in mysql protocol ( #4912 )
2024-10-30 10:59:13 +00:00
LFC
fd8eba36a8
refactor: make use of the "pre_execute" in sql execution interceptor ( #4875 )
...
* feat: dynamic definition of plugin options
* rebase
* revert
* fix ci
2024-10-30 09:16:46 +00:00
Lei, HUANG
d275cdd570
feat: Support altering table TTL ( #4848 )
...
* feat/alter-ttl:
Update greptime-proto source and add ChangeTableOptions handling
- Change greptime-proto source repository and revision in Cargo.lock and Cargo.toml
- Implement handling for ChangeTableOptions in grpc-expr and meta modules
- Add support for parsing and applying region option changes in mito2
- Introduce new error type for invalid change table option requests
- Add humantime dependency to store-api
- Fix SQL syntax in tests for changing column types
* chore: remove write buffer size option handling since we don't support specifying write_buffer_size for single table or region
* persist ttl to manifest
* chore: add sqlness
* fix: sqlness
* fix: typo and toml format
* fix: tests
* update: change alter syntax
* feat/alter-ttl: Add Clone trait to RegionFlushRequest and remove redundant Default derive in region_request.rs.
* feat/alter-ttl: Refactor code to replace 'ChangeTableOption' with 'ChangeRegionOption' and handle TTL as a region option
• Rename ChangeTableOption to ChangeRegionOption across various files.
• Update AlterKind::ChangeTableOptions to AlterKind::ChangeRegionOptions.
• Modify TTL handling to treat '0d' as None for TTL in table options.
• Adjust related function names and comments to reflect the change from table to region options.
• Include test case updates to verify the new TTL handling behavior.
* chore: update format
* refactor: update region options in DatanodeTableValue
* feat/alter-ttl:
Remove TTL handling from RegionManifest and related structures
- Eliminate TTL fields from `RegionManifest`, `RegionChange`, and associated handling logic.
- Update tests and checksums to reflect removal of TTL.
- Refactor `RegionOpener` and `handle_alter` to adjust to TTL removal.
- Simplify `RegionChangeResult` by replacing `change` with `new_meta`.
* chore: fmt
* remove useless delete op
* feat/alter-ttl: Updated Cargo.lock and gRPC expression Cargo.toml to include store-api dependency. Refactored alter.rs to use ChangeOption from store-api instead of ChangeTableOptionRequest.
Adjusted error handling in error.rs to use MetadataError. Modified handle_alter.rs to handle TTL changes with ChangeOption. Simplified region_request.rs by replacing
ChangeRegionOption with ChangeOption and removing redundant code. Removed UnsupportedTableOptionChange error in table/src/error.rs. Updated metadata.rs to use ChangeOption for table
options. Removed ChangeTableOptionRequest enum and related conversion code from requests.rs.
* feat/alter-ttl: Update greptime-proto dependency to revision 53ab9a9553
* chore: format code
* chore: update greptime-proto
2024-10-30 04:39:48 +00:00
Yohan Wal
8ed5bc5305
refactor: json conversion ( #4893 )
...
* refactor: json type update
* test: update test
* fix: convert when needed
* revert: leave sqlness tests unchanged
* fix: fmt
* refactor: just refactor
* Apply suggestions from code review
Co-authored-by: Weny Xu <wenymedia@gmail.com >
* refactor: parse jsonb first
* test: add bad cases
* Update src/datatypes/src/vectors/binary.rs
Co-authored-by: Weny Xu <wenymedia@gmail.com >
* fix: fmt
* fix: fix clippy/check
---------
Co-authored-by: Weny Xu <wenymedia@gmail.com >
2024-10-29 15:46:24 +00:00
Weny Xu
9ded314905
feat: add json datatype for grpc protocol ( #4897 )
...
* chore: update greptime-proto
* feat: add json datatype for grpc protocol
2024-10-29 12:37:53 +00:00
Zhenchi
9c79baca4b
feat(index): support building inverted index for the field column on Mito ( #4887 )
...
feat(index): support building inverted index for the field column
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
2024-10-29 07:57:17 +00:00
Ruihang Xia
03f2fa219d
feat: optimizer rule for windowed sort ( #4874 )
...
* basic impl
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* implement physical rule
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* feat: install windowed sort physical rule and optimize partition ranges
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add logs and sqlness test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* feat: introduce PartSortExec for partitioned sorting
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* tune exec nodes' properties and metrics
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* clean up
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix typo
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* debug: add more info on very wrong
* debug: also print overlap ranges
* feat: add check when emit PartSort Stream
* dbg: info on overlap working range
* feat: check batch range is inside part range
* set distinguish partition range param
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* chore: more logs
* update sqlness
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* tune optimizer
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* clean up
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix lints
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix windowed sort rule
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: early terminate sort stream
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* chore: remove min/max check
* chore: remove unused windowed_sort module, uuid feature and refactor region_scanner to synchronous
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* chore: print more fuzz log
* chore: more log
* fix: part sort should skip empty part
* chore: remove insert logs
* tests: empty PartitionRange
* refactor: testcase
* docs: update comment&tests: all empty
* ci: enlarge etcd cpu limit
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: discord9 <discord9@163.com >
Co-authored-by: evenyag <realevenyag@gmail.com >
2024-10-29 07:46:05 +00:00
Lei, HUANG
0ee455a980
fix: pyo3 ut ( #4894 )
2024-10-29 04:47:57 +00:00
Lei, HUANG
eab9e3a48d
chore: remove struct size assertion ( #4885 )
...
chore/remove-struct-size-assertion: Remove unit tests for parquet_meta_size function in cache_size.rs
2024-10-28 08:50:10 +00:00
Yingwen
1008af5324
feat!: Divide flush and compaction job pool ( #4871 )
...
* feat: divide flush/compact job pool
* feat!: divide bg jobs config
* docs: update config examples
* test: fix tests
2024-10-25 23:36:16 +00:00
discord9
2485f66077
chore: graceful exit on bind fail ( #4882 )
2024-10-25 09:29:39 +00:00
Weny Xu
4f3afb13b6
fix: fix broken import ( #4880 )
2024-10-25 07:09:51 +00:00
shuiyisong
32a0023010
chore: add schema urls to otlp logs ( #4876 )
...
* chore: add schema urls to otlp logs table
* chore: update meter-macros version to remove anymap warning
* chore: change span id and trace id to field
2024-10-25 03:45:24 +00:00
Kaifeng Zheng
4e9c251041
feat: add json_path_match udf ( #4864 )
...
* add json_path_match udf
* sql tests for json_path_match
* fix clippy & comment
* fix null value behavior
* added null tests
* adjust function's behavior on nulls
* update test cases
* fix null check of json
2024-10-25 03:13:34 +00:00
Lei, HUANG
e328c7067c
chore: udapte Rust toolchain to 2024-10-19 ( #4857 )
...
* update rust toolchain
* change toolchain to 2024-10-17
* fix: clippy
* fix: ut
* bump shadow-rs
* fix: use nightly-2024-10-19
* fix: clippy
* chore/udapte-toolchain-2024-10-17: Update DEV_BUILDER_IMAGE_TAG to 2024-10-19-a5c00e85-20241024184445 in Makefile
2024-10-25 00:23:32 +00:00
Weny Xu
8b307e4548
feat: introduce the PluginOptions ( #4835 )
...
* feat: introduce the `PluginOptions`
* chore: apply suggestions from CR
2024-10-24 12:02:10 +00:00
discord9
ff38abde2e
chore: better column schema check for flow ( #4855 )
...
* chore: better column schema check for flow
* chore: better msg
* tests: clean up after tests
* chore: better msg
* chore: per review
* tests: sqlness
2024-10-24 09:43:32 +00:00
jeremyhi
aa9a265984
chore: make pusher log easy to understand ( #4841 )
...
* chore: make pusher log easy to understand
* Update src/meta-srv/src/service/heartbeat.rs
Co-authored-by: Yingwen <realevenyag@gmail.com >
* Update src/meta-srv/src/service/heartbeat.rs
Co-authored-by: Yingwen <realevenyag@gmail.com >
* chore: by comment
---------
Co-authored-by: Yingwen <realevenyag@gmail.com >
2024-10-24 07:44:16 +00:00
pa
9d3ee6384a
feat: Limit CPU in runtime ( #3685 ) ( #4782 )
...
feat: add throttle runtime (#3685 )
2024-10-24 07:30:24 +00:00
localhost
fcde0a4874
feat: Add functionality to the Opentelemetry write interface to extract fields from attr to top-level data. ( #4859 )
...
* chore: add otlp select
* chore: change otlp select
* chore: remove json path
* chore: format toml
* chore: change opentelemetry extract keys header name
* chore: add some doc and remove useless code and lib
* chore: make clippy happy
* chore: fix by pr comment
* chore: fix by pr comment
* chore: opentelemetry logs select key change some type default semantic type
2024-10-24 05:55:57 +00:00
Weny Xu
5d42e63ab0
fix!: replace timeout_millis and connect_timeout_millis with Duration in DatanodeClientOptions ( #4867 )
...
* fix: correct options struct
* fix: fix unit test
2024-10-23 08:20:34 +00:00
discord9
0c01532a37
feat: Sort within each PartitionRange ( #4847 )
...
* feat: PartSort
* chore: rm unused
* chore: typo
* chore: mem pool df
* chore: add location to arrow error
* refactor: test_util
* refactor: per review
* chore: rm unused
* chore: more cases
* chore: test&buffer clear
* fix: remove fetch
* chore: fmt
* chore: per review
* chore: rm unused
2024-10-23 07:01:55 +00:00
ZonaHe
6d503b047a
feat: update dashboard to v0.6.0 ( #4861 )
...
Co-authored-by: ZonaHex <ZonaHex@users.noreply.github.com >
2024-10-22 02:34:09 +00:00
Yingwen
5d28f7a912
feat: yields empty batch after reading a range ( #4845 )
...
* feat: add empty batch to end of range stream
* feat: add batch validation
* fix: validate batch order
* fix: not yield empty batch in compaction
* fix: empty record batch
* feat: add a flag to enable empty batch
2024-10-21 13:52:47 +00:00
Weny Xu
081c6d9e74
fix: flush metric metadata region ( #4852 )
...
* fix: flush metric metadata region
* chore: apply suggestions from CR
2024-10-18 07:21:35 +00:00
Weny Xu
ca6e02980e
fix: overwrite entry_id if entry id is less than start_offset ( #4842 )
...
* fix: overwrite entry_id if entry id is less than start_offset
* feat: add `overwrite_entry_start_id` to options
* chore: update config.md
2024-10-18 06:31:02 +00:00
Weny Xu
74bdba4613
fix: fix metadata forward compatibility issue ( #4846 )
2024-10-18 06:26:41 +00:00
Yingwen
e0c4157ad8
feat: Seq scanner scans data by time range ( #4809 )
...
* feat: seq scan by partition
* feat: part metrics
* chore: remove unused codes
* chore: fmt stream
* feat: build ranges returns smallvec
* feat: move scan mem/file ranges to util and reuse
* feat: log metrics
* chore: correct some metrics
* feat: get explain info from ranges
* test: group test and remove unused codes
* chore: fix clippy
* feat: change PartitionRange end to exclusive
* test: add tests
2024-10-17 11:05:12 +00:00
discord9
613e07afb4
feat: window sort physical plan ( #4814 )
...
* WIP
* feat: range split& tests
* WIP: split range
* add sort exprs
* chore: typo
* WIP
* feat: find successive runs
* WIP
* READY FOR REVIEW PART ONE: more tests
* refactor: break into smaller functions
* feat: precompute working range(need testing)
* tests: on working range
* tests: on working range
* feat: support rev working range
* feat(to be tested): core logic of merge sort
* fix: poll results
* fix: find_slice_from_range&test
* chore: remove some unused util func&fields
* chore: typos
* chore: impl exec plan for WindowedSortExec
* test(WIP): window sort stream
* test: window sort stream
* chore: remove unused
* fix: fetch
* fix: WIP intersection remaining
* test: fix and test!
* chore: remove outdated comments
* chore: rename test
* chore: remove dbg line
* chore: sorted runs
* feat: handling unexpected data
* chore: unused
* chore: remove a print in test
* chore: per review
* docs: wrong comment
* chore: more test cases
2024-10-16 11:50:25 +00:00
Weny Xu
0ce93f0b88
chore: add more metrics for region migration ( #4838 )
2024-10-16 09:36:57 +00:00
Ning Sun
c231eee7c1
fix: respect feature flags for geo function ( #4836 )
2024-10-16 07:46:31 +00:00
localhost
4622412dfe
feat: add API to write OpenTelemetry logs to GreptimeDB ( #4755 )
...
* chore: otlp logs api
* feat: add API to write OpenTelemetry logs to GreptimeDB
* chore: fix test data schema error
* chore: modify the underlying data structure of the pipeline value map type from hashmap to btremap to keep key order
* chore: fix by pr comment
* chore: resolve conflicts and add some test
* chore: remove useless error
* chore: change otlp header name
* chore: fmt code
* chore: fix integration test for otlp log write api
* chore: fix by pr comment
* chore: set otlp body with fulltext default
2024-10-16 04:36:08 +00:00
jeremyhi
59ec90299b
refactor: metasrv cannot be cloned ( #4834 )
...
* refactor: metasrv cannot be cloned
* chore: remove MetasrvInstance's clone
2024-10-15 11:36:48 +00:00
Weny Xu
3197b8b535
feat: introduce default customizers ( #4831 )
...
* feat: introduce `DefaultHeartbeatHandlerGroupBuilderCustomizer` and `DefaultLeadershipChangeNotifierCustomizer`
* chore: code styling
2024-10-15 09:48:13 +00:00
zyy17
972c2441af
chore: bump promql-parser to v0.4.1 and use to_string() for EvalStmt ( #4832 )
...
chore: bump promql-parser to v0.4.1 and use to_string() for EvalStmt
2024-10-15 08:50:37 +00:00
Ning Sun
bb8b54b5d3
feat: add some s2 geo functions ( #4823 )
...
* feat: add first batch of s2 functions
* refactor: update reusable code from main
* test: add sqlness tests for s2
* feat: add tostring function for s2
* Update src/common/function/src/scalars/geo/s2.rs
Co-authored-by: Lei, HUANG <6406592+v0y4g3r@users.noreply.github.com >
* Apply suggestions from code review
* one more change
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: Lei, HUANG <6406592+v0y4g3r@users.noreply.github.com >
2024-10-15 06:47:29 +00:00