Weny Xu
24e3364142
fix: relax azblob validation requirements ( #7970 )
2026-04-15 08:08:39 +00:00
jeremyhi
e3f7ea8783
feat(cli): implement import-v2 data import pipeline ( #7898 )
...
* feat(cli): implement import-v2 data import pipeline
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: cargo fmt
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: by AI comments
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix(cli): harden import-v2 snapshot validation
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: excape sql
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix(cli): redact escaped secrets in copy sql logs
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* test(cli): tighten export v2 e2e helpers
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix(cli): log execution time
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
---------
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
2026-04-14 03:15:36 +00:00
jeremyhi
f0ea87f52f
fix: windows ci ( #7905 )
...
* fix: windows ci
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: typo
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* chore: use common create_temp_dir
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
---------
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
2026-04-03 02:17:42 +00:00
jeremyhi
ab10696657
feat: implement export-v2 chunked data export flow ( #7841 )
...
* feat: implement export-v2 chunked data export flow
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: by codex comment
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: by gemini comment
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: clippy
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: by comment
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: handle empty export ranges consistently
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: validate resume config
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: file-uri paths
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* feat: check args on schema-only mode
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
---------
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
2026-03-31 22:43:40 +00:00
Ning Sun
e14404c677
chore: update rust toolchain to 2026-03-21 ( #7849 )
...
* chore: update rust toolchain to 2026-03-21
* chore: new format
* fix: lint
* chore: resolve lint issues
* chore: remove as_millis_f64
* chore: deps up
2026-03-30 12:13:14 +00:00
jeremyhi
805536aed1
fix: windows file path ( #7839 )
...
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
2026-03-20 08:19:41 +00:00
jeremyhi
16fcbb2729
feat: export import v2 pr1 ( #7785 )
...
* feat: v2 schema handling
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* feat: impl m1.5 ddl export/import and schema tests
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* chore: git ignore update
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* chore: add license header
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* chore: make fmt-check happy
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: Run imported DDL against the intended schema
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: Canonicalize schema names after case-insensitive check
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: escape sql funcs
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: Fixed by carrying explicit execution_schema in DdlStatement instead of parsing schema from SQL
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix: Fixed by encoding schema names as safe path segments in shared DDL path helpers
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* refactor(cli): make export/import v2 schema recovery DDL-only
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* chore: by clippy
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* chore: follow our styling
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix(cli): reject remote snapshot URIs with empty root
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix(cli): dedupe schema filters after canonicalization
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
* fix(cli): schema-scoped detection to cover external tables
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
---------
Signed-off-by: jeremyhi <fengjiachun@gmail.com >
2026-03-19 21:26:41 +00:00
Weny Xu
b17947b5d8
feat: add COPY support for GCS/Azblob with OSS/GCS/Azblob integration coverage ( #7743 )
...
* feat: add gcs and azblob backends to copy datasource
Signed-off-by: WenyXu <wenymedia@gmail.com >
* test: add copy to/from oss integration coverage
Signed-off-by: WenyXu <wenymedia@gmail.com >
* test: add copy to/from gcs/azure integration coverage
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: use existing layers
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat: hide `credential_path` in cli
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: remove logs
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2026-03-04 04:21:21 +00:00
dependabot[bot]
b0fb4abbdf
chore(deps): bump tracing-subscriber from 0.3.19 to 0.3.20 ( #7720 )
...
* chore(deps): bump tracing-subscriber from 0.3.19 to 0.3.20
Bumps [tracing-subscriber](https://github.com/tokio-rs/tracing ) from 0.3.19 to 0.3.20.
- [Release notes](https://github.com/tokio-rs/tracing/releases )
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-subscriber-0.3.19...tracing-subscriber-0.3.20 )
---
updated-dependencies:
- dependency-name: tracing-subscriber
dependency-version: 0.3.20
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
* chore: remove ansi term depdenncy
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ning Sun <sunning@greptime.com >
2026-02-25 23:56:55 +00:00
Weny Xu
df04267c54
fix(repartition): reject writes on deallocating regions during region merge ( #7694 )
...
* feat(meta): add write route policy to region route with backward compatibility
Signed-off-by: WenyXu <wenymedia@gmail.com >
* fix(meta): use partition_expr compatibility accessor in repartition matching
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(meta): introduce staging partition rule enum for repartition instructions
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(datanode): plumb staging partition rule enum through heartbeat handlers
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(meta): mark pending-deallocate regions as reject-all during merge staging
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(partition): exclude reject-all regions from write partitioning
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(mito): store staging partition rule enum in region state
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(mito): reject writes in staging when partition rule is reject-all
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(meta): send enter staging instruction with reject-all
Signed-off-by: WenyXu <wenymedia@gmail.com >
* fix(repartition): preserve reject-all on exit, merge enter-staging instructions, and allow staged bulk writes
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: refactor to ignore all writes
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: rename StagingPartitionRule to StagingPartitionDirective across staging flow
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: add comments
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: clippy
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: nit
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: rename
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2026-02-25 07:04:38 +00:00
LFC
8c23b29725
refactor: remove the RawTableMeta and RawTableInfo to make codes more concise ( #7626 )
...
* refactor: remove the `RawTableMeta` and `RawTableInfo` to make codes more concise
Signed-off-by: luofucong <luofc@foxmail.com >
* fix ci
Signed-off-by: luofucong <luofc@foxmail.com >
* fix ci
Signed-off-by: luofucong <luofc@foxmail.com >
---------
Signed-off-by: luofucong <luofc@foxmail.com >
2026-02-10 07:10:04 +00:00
LFC
fcfab97d8c
feat: cli tool to repair partition columns mismatch ( #7605 )
...
* feat: cli tool to repair partition columns mismatch
Signed-off-by: luofucong <luofc@foxmail.com >
* Apply suggestions from code review
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* fix: harden partition column repair
Signed-off-by: MichaelScofield <MichaelScofield@users.noreply.github.com >
---------
Signed-off-by: luofucong <luofc@foxmail.com >
Signed-off-by: MichaelScofield <MichaelScofield@users.noreply.github.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-02-09 02:58:25 +00:00
fys
8f48d233ef
fix: unit tests for export module ( #7607 )
...
fix: unit test about export
2026-01-23 06:11:33 +00:00
Weny Xu
25687bb282
feat: add ddl timeout/wait options, repartition WITH parsing, meta-client startup refactor ( #7589 )
...
* feat: add ddl request timeouts and unify meta client startup
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat: omplement ALTER TABLE repartition DDL options parsing
Signed-off-by: WenyXu <wenymedia@gmail.com >
* test: add sqlness tests
Signed-off-by: WenyXu <wenymedia@gmail.com >
* test: add unit tests
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat: pass timeout argument to procedure
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: refine comments
Signed-off-by: WenyXu <wenymedia@gmail.com >
* test: assert timeout
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions
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-20 09:26:53 +00:00
Weny Xu
4e35028e28
test(cli): fix snapshot test paths on Windows ( #7574 )
...
* test(cli): fix snapshot test paths on Windows
Signed-off-by: WenyXu <wenymedia@gmail.com >
* fix: fix bugs
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: styling
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2026-01-16 06:54:24 +00:00
Weny Xu
ed171d9264
feat(cli): support RaftEngine store backend for metadata snapshot operations ( #7467 )
...
* feat(cli): support RaftEngine store backend for metadata snapshot operations
Signed-off-by: WenyXu <wenymedia@gmail.com >
* fix: allow empty aksk
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2026-01-14 02:24:36 +00:00
Weny Xu
f3e2d333e4
feat(repartition): implement region allocation for repartition procedure ( #7534 )
...
* refactor: rename WalOptionsAllocator to WalProvider
The name "WalOptionsAllocator" was misleading because:
- For RaftEngine variant, it doesn't actually allocate anything
- The actual allocation logic lives in KafkaTopicPool
"WalProvider" better describes its role as providing WAL options
based on the configured WAL backend (RaftEngine or Kafka).
Changes:
- Rename `WalOptionsAllocator` to `WalProvider`
- Rename `WalOptionsAllocatorRef` to `WalProviderRef`
- Rename `build_wal_options_allocator` to `build_wal_provider`
- Rename module `wal_options_allocator` to `wal_provider`
- Rename error types: `BuildWalOptionsAllocator` -> `BuildWalProvider`,
`StartWalOptionsAllocator` -> `StartWalProvider`
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor(meta): extract allocator traits from TableMetadataAllocator
Refactor TableMetadataAllocator to use trait-based dependency injection
for better testability and separation of concerns.
Changes:
- Add `ResourceIdAllocator` trait to abstract ID allocation
- Add `WalOptionsAllocator` trait to abstract WAL options allocation
- Implement traits for `Sequence` and `WalProvider`
- Remove duplicate `allocate_region_wal_options` function
- Rename `table_id_sequence` to `table_id_allocator` for consistency
- Rename `TableIdSequenceHandler` to `TableIdAllocatorHandler`
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(meta): add max_region_number tracking to PhysicalTableRouteValue
Add `max_region_number` field to track the highest region number ever
allocated for a table. This value only increases when regions are added
and never decreases when regions are dropped, ensuring unique region
numbers across the table's lifetime.
Changes:
- Add `max_region_number` field to `PhysicalTableRouteValue`
- Implement custom `Deserialize` for backward compatibility
- Update `update_region_routes` to maintain max_region_number
- Calculate max_region_number from region_routes in `new()`
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: extract TableRouteAllocator trait from TableMetadataAllocator
- Add TableRouteAllocator trait for abstracting region route allocation
- Implement blanket impl for all PeerAllocator types
- Add PeerAllocator impl for Arc<T> to support trait object delegation
- Update TableMetadataAllocator to use TableRouteAllocatorRef
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: rename TableRouteAllocator to RegionRoutesAllocator
- Rename table_route.rs to region_routes.rs
- Rename TableRouteAllocator trait to RegionRoutesAllocator
- Rename wal_option.rs to wal_options.rs for consistency
- Update TableMetadataAllocator to use new naming
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(meta-srv): implement region allocation for repartition procedure
This commit implements the region allocation phase of the repartition procedure,
which handles allocating new regions when a table needs to be split into more partitions.
Key changes:
- Refactor `RegionRoutesAllocator::allocate` to accept `(region_number, partition_expr)` tuples
for more flexible region number assignment
- Simplify `AllocationPlanEntry` by removing `regions_to_allocate` and `regions_to_deallocate`
fields (now derived from source/target counts)
- Add `convert_allocation_plan_to_repartition_plan` function to handle allocation, equal,
and deallocation cases
- Fix `RepartitionPlanEntry::allocate_regions()` to return target regions (was incorrectly
returning source regions)
- Implement complete `AllocateRegion` state with:
- Region route allocation via `RegionRoutesAllocator`
- WAL options allocation via `WalOptionsAllocator`
- Operating region registration for concurrency control
- Region creation on datanodes via `CreateTableExecutor`
- Table route metadata update
- Add `TableRouteValue::max_region_number()` helper method
- Add comprehensive unit tests for plan conversion and allocation logic
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2026-01-08 11:03:58 +00:00
Weny Xu
ada4666e10
refactor: remove region_numbers from TableMeta and TableInfo ( #7519 )
...
* refactor: remove `region_numbers` from `TableMeta` and `TableInfo`
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat: create partitions from region route
Signed-off-by: WenyXu <wenymedia@gmail.com >
* fix: fix build
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2026-01-06 13:21:36 +00:00
Weny Xu
9343da7fe8
feat(meta-srv): fallback to non-TLS connection when etcd TLS prefer mode fail ( #7507 )
...
* feat(meta-srv): fallback to non-TLS connection when etcd TLS prefer mode fail
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore(ci): set timeout for deploy cluster
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: simplify etcd TLS prefer mode handling
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-12-31 10:03:34 +00:00
Lanqing Yang
8d9afc83e3
feat: allow auto schema creation for pg ( #7459 )
...
Signed-off-by: lyang24 <lanqingy93@gmail.com >
2025-12-23 08:55:24 +00:00
Weny Xu
4d66bd96b8
feat: make distributed time constants and client timeouts configurable ( #7433 )
...
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-12-19 02:23:20 +00:00
shuiyisong
c088d361a4
chore: expose disable_ec2_metadata option ( #7439 )
...
chore: add option for disable ec2 metadata
Signed-off-by: shuiyisong <xixing.sys@gmail.com >
2025-12-18 11:55:08 +00:00
McKnight22
72eede8b38
refactor(cli): unify storage configuration for export command ( #7280 )
...
* refactor(cli): unify storage configuration for export command
- Utilize ObjectStoreConfig to unify storage configuration for export command
- Support export command for Fs, S3, OSS, GCS and Azblob
- Fix the Display implementation for SecretString always returned the string
"SecretString([REDACTED])" even when the internal secret was empty.
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* refactor(cli): unify storage configuration for export command
- Change the encapsulation permissions of each configuration
options for every storage backend to public access.
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
Co-authored-by: WenyXu <wenymedia@gmail.com >
* refactor(cli): unify storage configuration for export command
- Update the implementation of ObjectStoreConfig::build_xxx() using macro solutions
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
Co-authored-by: WenyXu <wenymedia@gmail.com >
* refactor(cli): unify storage configuration for export command
- Introduce config validation for each storage type
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* refactor(cli): unify storage configuration for export command
- Enable trait-based polymorphism for storage type handling
(from inherent impl to trait impl)
- Extract helper functions to reduce code duplication
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* refactor(cli): unify storage configuration for export command
- Improve SecretString handling and validation
(Distinguishing between "not provided" and "empty string")
- Add validation when using filesystem storage
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* refactor(cli): unify storage configuration for export command
- Refactor storage field validation with macro
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* refactor(cli): unify storage configuration for export command
- support GCS Application Default Credentials (like GKE, Cloud Run, or local development with ) in export
(Enabling ADC without validating or to be present)
(Making optional in GCS validation (defaults to https://storage.googleapis.com ))
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* refactor(cli): unify storage configuration for export command
This commit refactors the validation logic for object store configurations in the CLI to leverage clap features and reduce boilerplate.
Key changes:
- Update wrap_with_clap_prefix macro to use clap's requires attribute.
This ensures that storage-specific options (e.g., --s3-bucket) are only accepted when the corresponding backend is enabled (e.g., --s3).
- Simplify FieldValidator trait by removing the is_provided method, as dependency checks are now handled by clap.
- Introduce validate_backend! macro to standardize the validation of required fields for enabled backends.
- Refactor ExportCommand to remove explicit validation calls (validate_s3, etc.) and rely on the validation within backend constructors.
- Add integration tests for ExportCommand to verify build success with S3, OSS, GCS, and Azblob configurations.
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
* refactor(cli): unify storage configuration for export command
- Use macros to simplify storage export implementation
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
Co-authored-by: WenyXu <wenymedia@gmail.com >
* refactor(cli): unify storage configuration for export command
- Rollback StorageExport trait implementation to not using macro for better code clarity and maintainability
- Introduce format_uri helper function to unify URI formatting logic
- Fix OSS URI path bug inherited from legacy code
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
Co-authored-by: WenyXu <wenymedia@gmail.com >
* refactor(cli): unify storage configuration for export command
- Remove unnecessary async_trait
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
Co-authored-by: jeremyhi <jiachun_feng@proton.me >
---------
Signed-off-by: McKnight22 <tao.wang.22@outlook.com >
Co-authored-by: WenyXu <wenymedia@gmail.com >
Co-authored-by: jeremyhi <jiachun_feng@proton.me >
2025-12-18 03:16:53 +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
Ruihang Xia
a049b68c26
feat: import backup data from local files ( #7180 )
...
* feat: import backup data from local files
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add unit tests
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 >
2025-11-06 07:33:33 +00:00
shuiyisong
11c0381fc1
chore: set default catalog using build env ( #7156 )
...
* chore: update reference to const
Signed-off-by: shuiyisong <xixing.sys@gmail.com >
* chore: use option_env to set default catalog
Signed-off-by: shuiyisong <xixing.sys@gmail.com >
* chore: use const_format
Signed-off-by: shuiyisong <xixing.sys@gmail.com >
* chore: update reference in cli
Signed-off-by: shuiyisong <xixing.sys@gmail.com >
* chore: introduce a build.rs to set default catalog
Signed-off-by: shuiyisong <xixing.sys@gmail.com >
* chore: remove unused feature gate
Signed-off-by: shuiyisong <xixing.sys@gmail.com >
---------
Signed-off-by: shuiyisong <xixing.sys@gmail.com >
2025-10-29 18:10:58 +00:00
fys
20b5b9bee4
chore: remove unused deps ( #7108 )
2025-10-17 11:53:19 +00:00
Alan Tang
8073e552df
feat: add updated_on to tablemeta with a default of created_on ( #7072 )
...
* feat: add updated_on to tablemeta with a default of created_on
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* feat: support the update_on on alter procedure
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* feat: add updated_on into information_schema.tables
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* fix: make sqlness happy
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* test: add test case for tablemeta update
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* fix: fix failing test for ALTER TABLE
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
* feat: use created_on as default for updated_on when missing
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
---------
Signed-off-by: Alan Tang <jmtangcs@gmail.com >
2025-10-15 11:12:27 +00:00
LFC
8fe17d43d5
chore: update rust to nightly 2025-10-01 ( #7069 )
...
* chore: update rust to nightly 2025-10-01
Signed-off-by: luofucong <luofc@foxmail.com >
* chore: nix update
---------
Signed-off-by: luofucong <luofc@foxmail.com >
Co-authored-by: Ning Sun <sunning@greptime.com >
2025-10-11 07:30:52 +00:00
Ning Sun
660790148d
fix: various typos reported by CI ( #7047 )
...
* fix: various typos reported by CI
* fix: additional typo
2025-10-02 15:11:09 +00:00
localhost
4a3c5f85e5
fix: fix test_resolve_relative_path_relative on windows ( #7039 )
2025-09-28 13:03:57 +00:00
Weny Xu
07b9de620e
fix(cli): fix FS object store handling of absolute paths ( #7018 )
...
* fix(cli): fix FS object store handling of absolute paths
Signed-off-by: WenyXu <wenymedia@gmail.com >
* test: add unit tests
Signed-off-by: WenyXu <wenymedia@gmail.com >
* Update src/cli/src/utils.rs
Co-authored-by: LFC <990479+MichaelScofield@users.noreply.github.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
Co-authored-by: LFC <990479+MichaelScofield@users.noreply.github.com >
2025-09-25 03:38:33 +00:00
Weny Xu
0c038f755f
refactor(cli): refactor object storage config ( #7009 )
...
* refactor: refactor object storage config
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: public common config
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-09-24 06:50:47 +00:00
Weny Xu
0a959f9920
feat: add TLS support for mysql backend ( #6979 )
...
* refactor: move etcd tls code to `common-meta`
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: move postgre pool logic to `utils::postgre`
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat: setup mysql ssl options
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat: add test for mysql backend with tls
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: simplify certs generation
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-09-16 13:46:37 +00:00
Weny Xu
9fe7069146
feat: add postgres tls support for CLI ( #6941 )
...
* feat: add postgres tls support for cli
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-09-11 12:18:13 +00:00
Ruihang Xia
c9377e7c5a
build: bump rust edition to 2024 ( #6920 )
...
* bump edition
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* format
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* gen keyword
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* lifetime and env var
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* one more gen fix
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* lifetime of temporaries in tail expressions
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* format again
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* clippy nested if
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* clippy let and return
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2025-09-08 02:37:18 +00:00
Logic
cbcfdf9d65
feat: add optional schema for Postgres metadata tables ( #6764 )
...
* feat(meta): add optional schema for Postgres metadata tables
- Add `schema` option to specify a custom schema for metadata tables
- Update `PgStore` and `PgElection` to support optional schema
- Modify SQL templates to use schema when provided
- Add tests for schema support in Postgres backend
Signed-off-by: Logic <zqr10159@dromara.org >
* refactor(meta): remove unused `create_schema_statement` and simplify `PgSqlTemplateFactory`
- Remove `create_schema_statement` from `PgSqlTemplateSet` struct
- Simplify `PgSqlTemplateFactory` by removing `new` method and merging it with `with_schema`
- Update related tests to reflect these changes
Signed-off-by: Logic <zqr10159@dromara.org >
* refactor(meta-srv): remove unused imports
- Remove unused import of BoxedError from common_error::ext- Remove unused import of TlsOption from servers::tls
Signed-off-by: Logic <zqr10159@dromara.org >
* build(meta): update Postgres version and add error handling imports
- Update Postgres version to 17 in docker-compose.yml
- Add BoxedError import for error handling in meta-srv
Signed-off-by: Logic <zqr10159@dromara.org >
* feat(postgres): add support for optional schema in PgElection and related components
Signed-off-by: Logic <zqr10159@dromara.org >
* feat(postgres): add support for optional schema in PgElection and related components
Signed-off-by: Logic <zqr10159@dromara.org >
* fix(develop): update Postgres schema commands to specify host
Signed-off-by: Logic <zqr10159@dromara.org >
* refactor(postgres): simplify plugin options handling and update SQL examples
Signed-off-by: Logic <zqr10159@dromara.org >
* refactor(postgres): simplify plugin options handling and update SQL examples
Signed-off-by: Logic <zqr10159@dromara.org >
* fix(postgres): update meta_election_lock_id description for optional schema support
Signed-off-by: Logic <zqr10159@dromara.org >
* fix(postgres): add health check and fallback wait for Postgres in CI setup
* fix(postgres): update Docker setup for Postgres and add support for Postgres 15
* fix(postgres): remove redundant Postgres setup step in CI configuration
* Update tests-integration/fixtures/postgres/init.sql
Co-authored-by: Weny Xu <wenymedia@gmail.com >
* Update .github/workflows/develop.yml
* Update tests-integration/fixtures/docker-compose.yml
* Update src/common/meta/src/kv_backend/rds/postgres.rs
Co-authored-by: Weny Xu <wenymedia@gmail.com >
* Update src/common/meta/src/kv_backend/rds/postgres.rs
Co-authored-by: Weny Xu <wenymedia@gmail.com >
* Update src/common/meta/src/kv_backend/rds/postgres.rs
Co-authored-by: Weny Xu <wenymedia@gmail.com >
* Update src/common/meta/src/kv_backend/rds/postgres.rs
Co-authored-by: Weny Xu <wenymedia@gmail.com >
* fix: Refactor PostgreSQL backend to support optional schema in PgStore and related SQL templates
* feat: Update PostgreSQL configuration and add PG15 specific integration tests
* feat: Update PostgreSQL configuration and add PG15 specific integration tests
* refactor(postgres): update test schemas from 'greptime_schema' to 'test_schema'
* Update .github/workflows/develop.yml
* refactor: minor factor
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions
Signed-off-by: WenyXu <wenymedia@gmail.com >
* fix: fix unit test
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: Logic <zqr10159@dromara.org >
Signed-off-by: WenyXu <wenymedia@gmail.com >
Co-authored-by: Weny Xu <wenymedia@gmail.com >
2025-08-28 09:24:14 +00:00
Yan Tingwang
32a3ef36f9
feat(metasrv): support tls for etcd client ( #6818 )
...
* add TLS support for etcd client connections~
Signed-off-by: codephage2020 <tingwangyan2020@163.com >
* locate correct certs
Signed-off-by: codephage2020 <tingwangyan2020@163.com >
* Updated certs
Signed-off-by: codephage2020 <tingwangyan2020@163.com >
* Updated CI
Signed-off-by: codephage2020 <tingwangyan2020@163.com >
* Updated CI
Signed-off-by: codephage2020 <tingwangyan2020@163.com >
* Update docker-compose.yml
* tests for TLS client creation
Signed-off-by: codephage2020 <tingwangyan2020@163.com >
* modify tests
Signed-off-by: codephage2020 <tingwangyan2020@163.com >
---------
Signed-off-by: codephage2020 <tingwangyan2020@163.com >
2025-08-27 07:41:05 +00:00
Zhenchi
fb3b1d4866
feat: Store partition expr in RegionMetadata ( #6699 )
...
* wire partition.expr_json option constant and parsing
test(mito2): manifest roundtrip persists partition_expr JSON
test(mito2): create/open with partition.expr_json persists in manifest
docs: add comments for partition.expr_json option and RegionOptions.partition_expr
serde: include RegionOptions.partition_expr (skip if None)
test(mito2): doc intent and verify runtime backfill + persistence-after-alter for partition expr
add partition expr to create request
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* add create_with_partition_expr_persists_manifest
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* pass partition expr to create request
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* polish
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* fix sqlness
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* fix test
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* remove unused dep
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
---------
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
2025-08-13 22:05:37 +00:00
Ruihang Xia
572e29b158
feat: support tls for pg backend ( #6611 )
...
* load tls
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* impl tls
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* pass options
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* implement require mode
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* clean up
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update config
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix clippy
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* default to prefer
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update example config
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* adjust example config
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* handle client cert and key properly
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* implement verify_ca and verify_full
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update integration test for config api
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* change config name and default mode
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2025-08-04 00:41:08 +00:00
Zhenchi
2298227e0c
refactor: refactor partition mod to use PartitionExpr instead of PartitionDef ( #6554 )
...
* refactor: refactor partition mod to use PartitionExpr instead of PartitionDef
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* fix snafu
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* Puts expression into PbPartition
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* address comments
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* fix compile
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* update proto
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* add serde test
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
* add serde test
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
---------
Signed-off-by: Zhenchi <zhongzc_arch@outlook.com >
2025-07-23 03:51:28 +00:00
Weny Xu
a858f55257
refactor(meta): separate validation and execution logic in alter logical tables procedure ( #6478 )
...
* refactor(meta): separate validation and execution logic in alter logical tables procedure
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-07-09 06:48:27 +00:00
LFC
c2f1447345
refactor: stores the http server builder in Metasrv instance ( #6461 )
...
* refactor: stores the http server builder in Metasrv instance
Signed-off-by: luofucong <luofc@foxmail.com >
* resolve PR comments
Signed-off-by: luofucong <luofc@foxmail.com >
* fix ci
Signed-off-by: luofucong <luofc@foxmail.com >
---------
Signed-off-by: luofucong <luofc@foxmail.com >
2025-07-07 06:39:05 +00:00
Weny Xu
7d17782fd5
feat: persist column ids in table metadata ( #6457 )
...
* feat: persist column ids in table metadata
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-07-04 08:12:29 +00:00
fys
6b90e2b6b4
fix: allow clippy::print_stdout in cli crate ( #6436 )
...
* fix: allow clippy::print_stdout in cli crate
* add clippy lint options
2025-07-02 01:40:58 +00:00
Weny Xu
4a665fd27b
refactor: move #[allow(clippy::print_stdout)] to lib level ( #6398 )
...
chore: allow cli to print stdout
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-06-27 02:40:12 +00:00
Weny Xu
3fb1b726c6
refactor(cli): simplify metadata command parameters ( #6364 )
...
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-06-20 09:00:21 +00:00
Weny Xu
d9faa5c801
feat(cli): add metadata del commands ( #6339 )
...
* feat: introduce cli for deleting metadata
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor(cli): flatten metadata command structure
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: add alias
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor(meta): implement logical deletion for CLI tool
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-06-19 06:48:00 +00:00
Weny Xu
49cb4da6d2
feat: introduce CLI tool for repairing logical table metadata ( #6322 )
...
* feat: introduce logical table metadata repair cli tool
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: deps
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: flatten doctor module structure
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: apply suggestions from CR
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-06-17 13:53:59 +00:00
Weny Xu
03bb6e4f28
feat(cli): add metadata get commands ( #6299 )
...
* refactor(cli): restructure cli modules and commands
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(cli): add metadata get commands
Signed-off-by: WenyXu <wenymedia@gmail.com >
* feat(cli): enhance table metadata query capabilities
Signed-off-by: WenyXu <wenymedia@gmail.com >
* refactor: minor refactor
Signed-off-by: WenyXu <wenymedia@gmail.com >
---------
Signed-off-by: WenyXu <wenymedia@gmail.com >
2025-06-11 16:33:36 +00:00