Weny Xu
567d3e66e9
feat: integrate repartition procedure into DdlManager ( #7548 )
...
* feat: add repartition procedure factory support to DdlManager
- Introduce RepartitionProcedureFactory trait for creating and registering
repartition procedures
- Implement DefaultRepartitionProcedureFactory for metasrv with full support
- Implement StandaloneRepartitionProcedureFactory for standalone (unsupported)
- Add procedure loader registration for RepartitionProcedure and
RepartitionGroupProcedure
- Add helper methods to TableMetadataAllocator for allocator access
- Add error types for repartition procedure operations
- Update DdlManager to accept and use RepartitionProcedureFactoryRef
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat: integrate repartition procedure into DdlManager
- Add submit_repartition_task() to handle repartition from alter table
- Route Repartition operations in submit_alter_table_task() to repartition factory
- Refactor: rename submit_procedure() to execute_procedure_and_wait()
- Make all DDL operations wait for completion by default
- Add submit_procedure() for fire-and-forget submissions
- Add CreateRepartitionProcedure error type
- Add placeholder Repartition handling in grpc-expr (unsupported)
- Update greptime-proto dependency
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat: implement ALTER TABLE REPARTITION procedure submission
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor(repartition): handle central region in apply staging manifest
- Introduce ApplyStagingManifestInstructions struct to organize instructions
- Add special handling for central region when applying staging manifests
- Transition state from UpdateMetadata to RepartitionEnd after applying staging manifests
- Remove next_state() method in RepartitionStart and inline state transitions
- Improve logging and expression serialization in DDL statement executor
- Move repartition tests from standalone to distributed test suite
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: update proto
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2026-01-09 08:37:21 +00:00
discord9
63284a5081
chore: sqlness fmt ( #7551 )
...
chore
Signed-off-by: discord9 <discord9@163.com >
2026-01-09 07:18:23 +00:00
Weny Xu
aadfcd7821
feat(repartition): implement validation logic for repartition table ( #7538 )
...
* feat(repartition): implement validation logic for repartition_table
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: minor refactor
Signed-off-by: WenyXu <wenymedia@gmail.com >
* test: update sqlness
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2026-01-08 12:18:39 +00:00
discord9
06f9a4c80c
chore: sqlness redact time properly ( #7543 )
...
chore
Signed-off-by: discord9 <discord9@163.com >
2026-01-08 08:24:28 +00:00
Ruihang Xia
fce1687fa7
fix: incorrect timestamp index inference ( #7530 )
...
* add sqlness case, but can't reproduce
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* reproduction
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix wildcard rule
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* sort result
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2026-01-07 11:18:25 +00:00
Yingwen
ef6dd5b99f
fix: precise filter time index if not in projection ( #7531 )
...
* fix: precise filter time index if not in projection
Signed-off-by: evenyag <realevenyag@gmail.com >
* test: add sqlness test
Signed-off-by: evenyag <realevenyag@gmail.com >
---------
Signed-off-by: evenyag <realevenyag@gmail.com >
2026-01-07 11:15:34 +00:00
discord9
ac6d68aa2d
fix: simp expr recursively ( #7523 )
...
* fix: simp expr recursively
Signed-off-by: discord9 <discord9@163.com >
* test: some simple constant folding case
Signed-off-by: discord9 <discord9@163.com >
* fix: literal ts cast to UTC
Signed-off-by: discord9 <discord9@163.com >
* fix: patch merge scan batch col tz instead
Signed-off-by: discord9 <discord9@163.com >
* test: fix
Signed-off-by: discord9 <discord9@163.com >
---------
Signed-off-by: discord9 <discord9@163.com >
2026-01-07 09:22:26 +00:00
Ruihang Xia
9a4b7cbb32
feat: bump promql-parser to v0.7.1 ( #7521 )
...
* feat: bump promql-parser to v0.7.0
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add sqlness tests
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update other sqlness results
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* Update tests/cases/standalone/common/tql/case_sensitive.result
Co-authored-by: Ning Sun <sunng@protonmail.com >
* remove escape on greptimedb side
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update to v0.7.1
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* remove unused deps
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: Ning Sun <sunng@protonmail.com >
2026-01-07 07:23:40 +00:00
Ruihang Xia
5162c1de4d
feat: repartition grammar candy ( #7518 )
...
* feat: repartition grammar candy
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* align keyword
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2026-01-06 04:44:13 +00:00
LFC
522ca99cd6
feat: ingest jsonbench data through pipeline ( #7312 )
...
Signed-off-by: luofucong <luofc@foxmail.com >
2026-01-05 12:12:34 +00:00
Ruihang Xia
3556eb4476
chore: add tests to comment column on information_schema ( #7514 )
...
* feat: show comment on information_schema
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add to information schema for columns, add sqlness tests
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* remove duplications
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix typo
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update integration test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2026-01-04 09:05:50 +00:00
Alan Tang
8a07dbf605
fix: fix sqlness test error about double precision ( #7476 )
...
* fix: fix sqlness test error about double precision
Signed-off-by: StandingMan <jmtangcs@gmail.com >
* fix: use round method to truncate the result
Signed-off-by: StandingMan <jmtangcs@gmail.com >
---------
Signed-off-by: StandingMan <jmtangcs@gmail.com >
2025-12-31 04:55:22 +00:00
dennis zhuang
3866512cf6
feat: add more MySQL-compatible string functions ( #7454 )
...
* feat: add more mysql string functions
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* refactor: use datafusion aliasing mechanism, close #7415
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* chore: comment
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: comment and style
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
---------
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
2025-12-25 03:28:57 +00:00
AntiTopQuark
cea578244c
fix(compaction): unify behavior of database compaction options with TTL ( #7402 )
...
* fix: fix dynamic compactiom option,unify behavior of database compaction options with TTL option
Signed-off-by: AntiTopQuark <AntiTopQuark1350@outlook.com >
* fix unit test
Signed-off-by: AntiTopQuark <AntiTopQuark1350@outlook.com >
* add debug log
Signed-off-by: AntiTopQuark <AntiTopQuark1350@outlook.com >
---------
Signed-off-by: AntiTopQuark <AntiTopQuark1350@outlook.com >
2025-12-25 02:34:42 +00:00
dennis zhuang
2dfcf35fee
feat: support function aliases and add MySQL-compatible aliases ( #7410 )
...
* feat: support function aliases and add MySQL-compatible aliases
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: get_table_function_source
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* refactor: add function_alias mod
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: license
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
---------
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
2025-12-16 06:56:23 +00:00
Ruihang Xia
e0697790e6
chore: sort histogram sqlness result ( #7406 )
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2025-12-15 08:12:12 +00:00
Ruihang Xia
bd3ad60910
fix: promql offset direction ( #7392 )
...
* fix: promql offset direction
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* sort sqlness result
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* commit forgotten file
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2025-12-12 07:51:35 +00:00
Ruihang Xia
cbfdeca64c
fix: promql histogram with aggregation ( #7393 )
...
* fix: promql histogram with aggregation
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update test constructors
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* sqlness tests
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update sqlness result
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* redact partition number
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2025-12-12 07:32:04 +00:00
Ning Sun
276f6bf026
feat: grafana postgresql data source query builder support ( #7379 )
...
* feat: grafana postgresql data source query builder support
* test: add sqlness test cases
2025-12-11 03:18:35 +00:00
Ruihang Xia
564cc0c750
feat: table/column/flow COMMENT ( #7060 )
...
* initial impl
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* simplify impl
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* sqlness test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* avoid unimplemented panic
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* validate flow
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update sqlness result
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix table column comment
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* table level comment
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* simplify table info serde
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* don't txn
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* remove empty trait
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* wip: procedure
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update proto
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* grpc support
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* Apply suggestions from code review
Co-authored-by: dennis zhuang <killme2008@gmail.com >
Co-authored-by: LFC <990479+MichaelScofield@users.noreply.github.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* try from pb struct
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* doc comment
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* check unchanged fast case
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* tune errors
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix merge error
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* use try_as_raw_value
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: dennis zhuang <killme2008@gmail.com >
Co-authored-by: LFC <990479+MichaelScofield@users.noreply.github.com >
2025-12-10 15:08:47 +00:00
discord9
9197e818ec
refactor: use versioned index for index file ( #7309 )
...
* refactor: use versioned index for index file
Signed-off-by: discord9 <discord9@163.com >
* fix: sst entry table
Signed-off-by: discord9 <discord9@163.com >
* update sqlness
Signed-off-by: discord9 <discord9@163.com >
* chore: unit type
Signed-off-by: discord9 <discord9@163.com >
* fix: missing version
Signed-off-by: discord9 <discord9@163.com >
* more fix build index
Signed-off-by: discord9 <discord9@163.com >
* fix: use proper index id
Signed-off-by: discord9 <discord9@163.com >
* pcr
Signed-off-by: discord9 <discord9@163.com >
* test: update
Signed-off-by: discord9 <discord9@163.com >
* clippy
Signed-off-by: discord9 <discord9@163.com >
* test: test_list_ssts fixed
Signed-off-by: discord9 <discord9@163.com >
* test: fix test
Signed-off-by: discord9 <discord9@163.com >
* feat: stuff
Signed-off-by: discord9 <discord9@163.com >
* fix: clean temp index file on abort&delete all index version when delete file
Signed-off-by: discord9 <discord9@163.com >
* docs: explain
Signed-off-by: discord9 <discord9@163.com >
* fix: actually clean up tmp dir
Signed-off-by: discord9 <discord9@163.com >
* clippy
Signed-off-by: discord9 <discord9@163.com >
* clean tmp dir only when write cache enabled
Signed-off-by: discord9 <discord9@163.com >
* refactor: add version to index cache
Signed-off-by: discord9 <discord9@163.com >
* per review
Signed-off-by: discord9 <discord9@163.com >
* test: update size
Signed-off-by: discord9 <discord9@163.com >
* per review
Signed-off-by: discord9 <discord9@163.com >
---------
Signed-off-by: discord9 <discord9@163.com >
2025-12-09 07:31:12 +00:00
Ruihang Xia
60f752d306
feat: run histogram quantile in safe mode for incomplete data ( #7297 )
...
* initial impl
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* sqlness test and fix
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* correct sqlness case
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* simplification
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* refine code and comment
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2025-12-05 09:19:21 +00:00
Ruihang Xia
f2288a86b0
perf: treat DISTINCT as comm/part-comm ( #7348 )
...
* perf: treat DISTINCT as comm/part-comm
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* sqlness tests
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2025-12-04 11:14:00 +00:00
Lei, HUANG
931556dbd3
perf(metric-engine)!: Replace mur3 with fxhash for faster TSID generation ( #7316 )
...
* feat/change-tsid-gen:
perf(metric-engine): replace mur3 with fxhash for faster TSID generation
- Switches from mur3::Hasher128 to fxhash::FxHasher for TSID hashing
- Pre-computes label-name hash when no nulls are present, avoiding redundant work
- Adds fast-path for rows without nulls; falls back to slow path otherwise
- Updates Cargo.toml and lockfile to reflect dependency change
Signed-off-by: Lei, HUANG <mrsatangel@gmail.com >
* feat/change-tsid-gen:
fix: only check primary-key labels for null when re-using cached hash
- Rename has_null() → has_null_labels() and restrict the check to the
primary-key columns so that non-label NULLs do not force a full
TSID re-computation.
- Update expected hashes in tests to match the new logic.
Signed-off-by: Lei, HUANG <mrsatangel@gmail.com >
* feat/change-tsid-gen:
test: add comprehensive TSID generation tests for label ordering and null handling
Signed-off-by: Lei, HUANG <mrsatangel@gmail.com >
* feat/change-tsid-gen:
bench: add criterion benchmark for TSID generator
- Compare original mur3 vs current fxhash fast/slow paths
- Test 2, 5, 10 label sets plus null-value slow path
- Add mur3 & criterion dev-deps; register bench target
Signed-off-by: Lei, HUANG <mrsatangel@gmail.com >
* feat/change-tsid-gen:
test: stabilize metric-engine tests by fixing non-deterministic row order
- Add ORDER BY to SELECTs in TTL tests to ensure consistent output
- Update expected __tsid values after hash function change
- Swap expected OTLP metric rows to match new ordering
Signed-off-by: Lei, HUANG <mrsatangel@gmail.com >
* feat/change-tsid-gen:
refactor: simplify Default impls and remove redundant code
- Replace manual Default for TsidGenerator with derive
- Remove unnecessary into_iter() call
- Simplify Option::unwrap_or_else to unwrap_or
Signed-off-by: Lei, HUANG <mrsatangel@gmail.com >
---------
Signed-off-by: Lei, HUANG <mrsatangel@gmail.com >
2025-12-02 08:38:29 +00:00
dennis zhuang
1f91422bae
feat!: improve mysql/pg compatibility ( #7315 )
...
* feat(mysql): add SHOW WARNINGS support and return warnings for unsupported SET variables
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* feat(function): add MySQL IF() function and PostgreSQL description functions for connector compatibility
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: show tables for mysql
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: partitions table in information_schema and add starrocks external catalog compatibility
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* refactor: async udf
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: set warnings
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* feat: impl pg_my_temp_schema and make description functions simple
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* test: add test for issue 7313
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* feat: apply suggestions
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: partition_expression and partition_description
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: test
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: unit tests
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: saerch_path only works for pg
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* feat: improve warnings processing
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: warnings while writing affected rows and refactor
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* chore: improve ShobjDescriptionFunction signature
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* refactor: array_to_boolean
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
---------
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-01 20:41:14 +00:00
LFC
fdab75ce27
feat: simple read write new json type values ( #7175 )
...
feat: basic json read and write
Signed-off-by: luofucong <luofc@foxmail.com >
2025-11-27 12:40:35 +00:00
Sicong Hu
2783a5218e
feat: implement manual type for async index build ( #7104 )
...
* feat: prepare for index_build command
Signed-off-by: SNC123 <sinhco@outlook.com >
* feat: impl manual index build
Signed-off-by: SNC123 <sinhco@outlook.com >
* chore: clippy and fmt
Signed-off-by: SNC123 <sinhco@outlook.com >
* test: add idempotency check for manual build
Signed-off-by: SNC123 <sinhco@outlook.com >
* chore: apply suggestions
Signed-off-by: SNC123 <sinhco@outlook.com >
* chore: update proto
Signed-off-by: SNC123 <sinhco@outlook.com >
* chore: apply suggestions
Signed-off-by: SNC123 <sinhco@outlook.com >
* chore: fmt
Signed-off-by: SNC123 <sinhco@outlook.com >
* chore: update proto souce to greptimedb
Signed-off-by: SNC123 <sinhco@outlook.com >
* fix: cargo.lock
Signed-off-by: SNC123 <sinhco@outlook.com >
---------
Signed-off-by: SNC123 <sinhco@outlook.com >
2025-11-25 15:21:30 +00:00
Ning Sun
2f447e6f91
fix: postgres extended query paramater parsing and type check ( #7276 )
...
* fix: postgres extended query paramater parsing and type check
* test: update sqlness output
* feat: implement FromSqlText for pg_interval
* chore: toml format
2025-11-24 02:40:35 +00:00
Ruihang Xia
c054c13e48
perf: avoid unnecessary merge sort ( #7274 )
...
* perf: avoid unnecessary merge sort
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fantastic if chain
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* more comments
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix typo
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2025-11-21 09:02:25 +00:00
LFC
c02754b44c
feat: udf json_get_object ( #7241 )
...
Signed-off-by: luofucong <luofc@foxmail.com >
2025-11-21 04:50:38 +00:00
dennis zhuang
0b4f00feef
fix!: align numeric type aliases with PostgreSQL and MySQL ( #7270 )
...
* fix: align numeric type aliases with those used in PostgreSQL and MySQL
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* chore: update create_type_alias test
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* chore: fix colon
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: clone
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: style
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
---------
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-21 04:49:17 +00:00
Ning Sun
29d23e0ba1
fix: return sqlalchemy compatible version string in version() ( #7271 )
2025-11-21 03:30:11 +00:00
WaterWhisperer
7f1da17150
feat: support alter database compaction options ( #7251 )
...
Signed-off-by: WaterWhisperer <waterwhisperer24@qq.com >
2025-11-20 01:39:35 +00:00
McKnight22
605f3270e5
feat: implement compressed CSV/JSON export functionality ( #7162 )
...
* feat: implement compressed CSV/JSON export functionality
- Add CompressedWriter for real-time compression during CSV/JSON export
- Support GZIP, BZIP2, XZ, ZSTD compression formats
- Remove LazyBufferedWriter dependency for simplified architecture
- Implement Encoder -> Compressor -> FileWriter data flow
- Add tests for compressed CSV/JSON export
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* feat: implement compressed CSV/JSON export functionality
- refactor and extend compressed_writer tests
- add coverage for Bzip2 and Xz compression
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* feat: implement compressed CSV/JSON export functionality
- Switch to threshold-based chunked flushing
- Avoid unnecessary writes on empty buffers
- Replace direct write_all() calls with the new helper for consistency
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* feat: implement compressed CSV/JSON import (COPY FROM) functionality
- Add support for reading compressed CSV and JSON in COPY FROM
- Support GZIP, BZIP2, XZ, ZSTD compression formats
- Add tests for compressed CSV/JSON import
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* feat: implement compressed CSV/JSON export/import functionality
- Fix review comments
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* feat: implement compressed CSV/JSON export/import functionality
- Move temp_dir out of the loop
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* feat: implement compressed CSV/JSON export/import functionality
- Fix unreasonable locking logic
Co-authored-by: jeremyhi <jiachun_feng@proton.me >
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
---------
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
Co-authored-by: jeremyhi <jiachun_feng@proton.me >
2025-11-18 02:55:58 +00:00
Weny Xu
6adc348fcd
feat: support parallel table operations in COPY DATABASE ( #7213 )
...
* feat: support parallel table operations in COPY DATABASE
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(cli): add a new `parallelism` parameter to control the parallelism during export
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: add sqlness tests
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: clippy
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor(cli): improve parallelism configuration for data export and import
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-11-17 12:22:51 +00:00
discord9
6c93c7d299
chore: bump version to beta.2 ( #7238 )
...
* chore: bump version to beta.2
Signed-off-by: discord9 <discord9@163.com >
* test: fix sqlness
Signed-off-by: discord9 <discord9@163.com >
---------
Signed-off-by: discord9 <discord9@163.com >
2025-11-17 08:57:59 +00:00
WaterWhisperer
de9ae6066f
refactor: remove export_metrics and related configuration ( #7236 )
...
Signed-off-by: WaterWhisperer <waterwhisperer24@qq.com >
2025-11-17 02:32:22 +00:00
Ning Sun
2bbc4bc4bc
fix: correct signature of current_schemas function ( #7233 )
2025-11-17 01:42:09 +00:00
Alan Tang
b1525e566b
chore: fix SQLness test for COPY command from CSV file ( #7235 )
...
chore: fix SQLness test for COPY command from CSV file
Signed-off-by: StandingMan <jmtangcs@gmail.com >
2025-11-16 07:08:13 +00:00
discord9
8153068b89
chore: bump main branch version to 1.0.0-beta.1 ( #7191 )
...
* chore: bump main branch version to 1.0.0-beta.1
Signed-off-by: discord9 <discord9@163.com >
* rename beta.1 to beta1
Signed-off-by: discord9 <discord9@163.com >
* again
Signed-off-by: discord9 <discord9@163.com >
* test: correct redact version
Signed-off-by: discord9 <discord9@163.com >
* chore
Signed-off-by: discord9 <discord9@163.com >
---------
Signed-off-by: discord9 <discord9@163.com >
2025-11-11 14:52:03 +00:00
Yingwen
bb6a3a2ff3
feat: support altering sst format for a table ( #7206 )
...
* refactor: remove memtable_builder from MitoRegion
Signed-off-by: evenyag <realevenyag@gmail.com >
* chore: add alter format
Signed-off-by: evenyag <realevenyag@gmail.com >
* feat: support changing the format and memtable
Signed-off-by: evenyag <realevenyag@gmail.com >
* feat: support changing sst format via table options
Signed-off-by: evenyag <realevenyag@gmail.com >
* fix: set scanner and memtable builder with correct format
Signed-off-by: evenyag <realevenyag@gmail.com >
* style: fix clippy
Signed-off-by: evenyag <realevenyag@gmail.com >
* fix: fix incorrect metadata in version after alter
Signed-off-by: evenyag <realevenyag@gmail.com >
* test: add sqlness test
Signed-off-by: evenyag <realevenyag@gmail.com >
* test: replace region_id in sqlness result
Signed-off-by: evenyag <realevenyag@gmail.com >
* fix: create correct memtable when setting sst_format explicitly
Signed-off-by: evenyag <realevenyag@gmail.com >
* test: sqlness alter_format test set sst_format to primary_key
Signed-off-by: evenyag <realevenyag@gmail.com >
* chore: remove verbose log
Signed-off-by: evenyag <realevenyag@gmail.com >
---------
Signed-off-by: evenyag <realevenyag@gmail.com >
2025-11-11 13:19:00 +00:00
Weny Xu
47937961f6
feat(metric)!: enable sparse primary key encoding by default ( #7195 )
...
* feat(metric): enable sparse primary key encoding by default
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: update config.md
Signed-off-by: WenyXu <wenymedia@gmail.com >
* fix: fix unit tests
Signed-off-by: WenyXu <wenymedia@gmail.com >
* fix: fix unit tests
Signed-off-by: WenyXu <wenymedia@gmail.com >
* fix sqlness
Signed-off-by: WenyXu <wenymedia@gmail.com >
* Update src/mito-codec/src/key_values.rs
Co-authored-by: Yingwen <realevenyag@gmail.com >
* feat: only allow setting primary key encoding for metric engine
Signed-off-by: evenyag <realevenyag@gmail.com >
* feat: support deleting rows from logical region instead of physical region
This keeps the behavior the same as put. It's easier to support sparse
encoding for deleting logical regions. Now the metric engine doesn't
support delete rows from physical region directly.
Signed-off-by: evenyag <realevenyag@gmail.com >
* test: update sqlness
Signed-off-by: evenyag <realevenyag@gmail.com >
* chore: remove unused error
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
Signed-off-by: evenyag <realevenyag@gmail.com >
Co-authored-by: Yingwen <realevenyag@gmail.com >
2025-11-11 06:33:51 +00:00
Alan Tang
910a383420
feat(expr): support avg functions on vector ( #7146 )
...
* feat(expr): support vec_elem_avg function
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* feat: support vec_avg function
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* test: add more query test for avg aggregator
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* fix: fix the merge batch mode
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* refactor: use sum and count as state for avg function
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* refactor: refactor merge batch mode for avg function
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* feat: add additional vector restrictions for validation
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
---------
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
Co-authored-by: Yingwen <realevenyag@gmail.com >
2025-11-07 13:42:14 +00:00
fys
35951afff9
chore: remove unnecessary code related to triggers ( #7192 )
...
* chore: remove unused triggers memory tables
* fix: cargo clippy
* fix: sqlness
2025-11-06 08:09:14 +00:00
Yingwen
0939dc1d32
test: run sqlness for flat format ( #7178 )
...
* test: support flat format in sqlness
Signed-off-by: evenyag <realevenyag@gmail.com >
* test: replace region stats test result with NUM
Signed-off-by: evenyag <realevenyag@gmail.com >
* ci: add flat format to sqlness ci
Signed-off-by: evenyag <realevenyag@gmail.com >
---------
Signed-off-by: evenyag <realevenyag@gmail.com >
2025-11-05 11:23:12 +00:00
Ruihang Xia
aac3ede261
feat: allow creating logical tabel with same partition rule with physical table's ( #7177 )
...
* feat: allow creating logical tabel with same partition rule with physical table's
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix errors
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2025-11-05 06:37:17 +00:00
Yingwen
d944e5c6b8
test: add sqlness for delete and filter ( #7171 )
...
Signed-off-by: evenyag <realevenyag@gmail.com >
2025-11-04 02:13:47 +00:00
Sicong Hu
30894d7599
feat(mito): Optimize async index building with priority-based batching ( #7034 )
...
* feat: add priority-based batching to IndexBuildScheduler
Signed-off-by: SNC123 <sinhco@outlook.com >
* fix: clean old puffin-related cache
Signed-off-by: SNC123 <sinhco@outlook.com >
* test: add test for IndexBuildScheduler
Signed-off-by: SNC123 <sinhco@outlook.com >
* feat: different index file id for read and async write
Signed-off-by: SNC123 <sinhco@outlook.com >
* feat: different index file id for delete
Signed-off-by: SNC123 <sinhco@outlook.com >
* chore: clippy
Signed-off-by: SNC123 <sinhco@outlook.com >
* fix: apply suggestions
Signed-off-by: SNC123 <sinhco@outlook.com >
* fix: apply comments
Signed-off-by: SNC123 <sinhco@outlook.com >
* combine files and index files
Signed-off-by: SNC123 <sinhco@outlook.com >
* feat: add index_file_id into ManifestSstEntry
Signed-off-by: SNC123 <sinhco@outlook.com >
* Update src/mito2/src/gc.rs
Signed-off-by: SNC123 <sinhco@outlook.com >
* resolve conflicts
Signed-off-by: SNC123 <sinhco@outlook.com >
* fix: sqlness
Signed-off-by: SNC123 <sinhco@outlook.com >
* chore: fmt
Signed-off-by: SNC123 <sinhco@outlook.com >
---------
Signed-off-by: SNC123 <sinhco@outlook.com >
2025-10-31 02:13:17 +00:00
discord9
68247fc9b1
fix: count_state use stat to eval&predicate w/out region ( #7116 )
...
* fix: count_state use stat to eval
Signed-off-by: discord9 <discord9@163.com >
* cleanup
Signed-off-by: discord9 <discord9@163.com >
* fix: use predicate without region
Signed-off-by: discord9 <discord9@163.com >
* test: diverge standalone/dist impl
Signed-off-by: discord9 <discord9@163.com >
---------
Signed-off-by: discord9 <discord9@163.com >
2025-10-27 02:14:45 +00:00
dennis zhuang
d8563ba56d
feat: adds regex_extract function and more type tests ( #7107 )
...
* feat: adds format, regex_extract function and more type tests
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* fix: forgot functions
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* chore: forgot null type
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* test: forgot date type
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* feat: remove format function
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
* test: update results after upgrading datafusion
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
---------
Signed-off-by: Dennis Zhuang <killme2008@gmail.com >
2025-10-25 08:41:49 +00:00