Commit Graph
393 Commits
Author SHA1 Message Date
houseme 8660c2af12 merge main 2025-05-28 17:26:31 +08:00
overtrue 8747a91df8 feat: add comprehensive formatting rules and type inference guidelines 2025-05-28 16:04:38 +08:00
安正超 a1f4abf6c3 fix: resolve all Clippy warnings across codebase - Fixed field reassignment warnings in ecstore/src/file_meta.rs by using struct initialization instead of default + field assignment - Fixed overly complex boolean expression in ecstore/src/utils/os/mod.rs by removing meaningless assertion - Replaced manual Default implementation with derive in crates/zip/src/lib.rs - Updated io::Error usage to use io::Error::other() instead of deprecated pattern - Removed useless assertions and clone-on-copy warnings - Fixed unwrap usage by replacing with expect() providing meaningful error messages - Fixed useless vec usage by using array repeat instead - All code now passes comprehensive Clippy check with --all-targets --all-features -- -D warnings 2025-05-28 11:00:07 +08:00
overtrue 84791e4877 feat: add comprehensive tests for rustfs storage module 2025-05-28 00:12:41 +08:00
houseme a95138868e improve code 2025-05-27 19:07:09 +08:00
houseme ade4d33eb1 fix typo 2025-05-27 16:56:44 +08:00
houseme ca8f399832 format comment 2025-05-27 13:56:19 +08:00
houseme 2cadbba6ad Merge branch 'main' of github.com:rustfs/s3-rustfs into feature/observability-metrics
# Conflicts:
#	Cargo.toml
#	iam/src/manager.rs
#	iam/src/store/object.rs
#	rustfs/src/admin/handlers/sts.rs
#	rustfs/src/main.rs
#	rustfs/src/storage/ecfs.rs
2025-05-25 18:10:13 +08:00
houseme dee19fdc35 improve code for event 2025-05-25 17:52:22 +08:00
houseme 864071d641 cargo fmt 2025-05-25 17:46:59 +08:00
overtrue fc194f3a4a feat: add comprehensive test cases for grpc module 2025-05-25 15:39:04 +08:00
overtrue 9d90913697 feat: translate Chinese comments to English across codebase 2025-05-25 15:24:34 +08:00
overtrue 1a9bfd1b86 fix: resolve zip import issue by using rustfs-zip package 2025-05-25 15:04:46 +08:00
overtrue 5fff195295 feat: complete zip compression module implementation 2025-05-25 13:14:38 +08:00
houseme 0f22b21c8d improve channel adapter 2025-05-21 16:44:59 +08:00
houseme 1c088546b3 add 2025-05-21 07:15:47 +08:00
houseme 2d9394a8e0 improve code run fun 2025-05-19 23:04:02 +08:00
houseme c6de1ae994 feat: rename crate from rustfs-event-notifier to rustfs-event
This change simplifies the crate name to better reflect its core functionality
as the event handling system for RustFS. The renamed package maintains all
existing functionality while improving naming consistency across the project.

- Updated all imports and references to use the new crate name
- Maintained API compatibility with existing implementations
- Updated tests to reflect the name change
2025-05-19 17:23:17 +08:00
houseme dff7476143 improve comment 2025-05-19 13:39:46 +08:00
houseme fd1bf30de8 test metrics 2025-05-16 20:16:43 +08:00
houseme 6659b77f9a improve comment and error 2025-05-16 17:00:56 +08:00
5304b73588 Update rustfs/src/storage/ecfs.rs
Co-authored-by: Copilot <[email protected]>
2025-05-14 20:56:33 +08:00
weisdandhouseme 44958797e5 add legalhold api 2025-05-14 20:56:33 +08:00
weisdandGitHub 41194b3f6b Merge pull request #398 from rustfs/feat/legalhold
add legalhold api
2025-05-13 09:35:11 +08:00
0477e8d3ed Update rustfs/src/storage/ecfs.rs
Co-authored-by: Copilot <[email protected]>
2025-05-13 09:28:22 +08:00
houseme cdd285dec8 add metric 2025-05-13 09:17:52 +08:00
weisd c69a2f83a6 add legalhold api 2025-05-12 15:45:22 +08:00
houseme 571cedf4ce feat(obs): implement global OpenTelemetry guard management 2025-05-12 13:32:18 +08:00
housemeandGitHub dd7da015e3 Feature/rustfs config (#396)
* init rustfs config

* improve code for rustfs-config crate

* add

* improve code for comment

* fix: modify rustfs-config crate name

* add default fn

* improve error logger

* fix: modify docker config yaml

* improve code for config

* feat: restrict kafka feature to Linux only

- Add target-specific feature configuration in Cargo.toml for obs and event-notifier crates
- Implement conditional compilation for kafka feature only on Linux systems
- Add appropriate error handling for non-Linux platforms
- Ensure backward compatibility with existing code

* refactor(ci): optimize build workflow for better efficiency

- Integrate GUI build steps into main build-rustfs job
- Add conditional GUI build execution based on tag releases
- Simplify workflow by removing redundant build-rustfs-gui job
- Copy binary directly to embedded-rustfs directory without downloading artifacts
- Update merge job dependency to only rely on build-rustfs
- Improve cross-platform compatibility for Windows binary naming (.exe)
- Streamline artifact uploading and OSS publishing process
- Maintain consistent conditional logic for release operations

* refactor(ci): optimize build workflow for better efficiency

- Integrate GUI build steps into main build-rustfs job
- Add conditional GUI build execution based on tag releases
- Simplify workflow by removing redundant build-rustfs-gui job
- Copy binary directly to embedded-rustfs directory without downloading artifacts
- Update merge job dependency to only rely on build-rustfs
- Improve cross-platform compatibility for Windows binary naming (.exe)
- Streamline artifact uploading and OSS publishing process
- Maintain consistent conditional logic for release operations

* fix(ci): add repo-token to setup-protoc action for authentication

- Add GITHUB_TOKEN parameter to arduino/setup-protoc@v3 action
- Ensure proper authentication for Protoc installation in CI workflow
- Maintain consistent setup across different CI environments

* modify config

* improve readme.md

* remove env config relation

* add allow(dead_code)
2025-05-12 01:17:31 +08:00
weisd 76fdefeca4 feat: auto-extract support 2025-05-08 17:42:20 +08:00
29ddf4dbc8 refactor: standardize constant management and fix typos (#387)
* init rustfs config

* init rustfs-utils crate

* improve code for rustfs-config crate

* add

* improve code for comment

* init rustfs config

* improve code for rustfs-config crate

* add

* improve code for comment

* Unified management of configurations and constants

* fix: modify rustfs-config crate name

* add default fn

* improve code for rustfs config

* refactor: standardize constant management and fix typos

- Create centralized constants module for global static constants
- Replace runtime format! expressions with compile-time constants
- Fix DEFAULT_PORT reference issues in configuration arguments
- Use const-str crate for compile-time string concatenation
- Update tokio dependency from 1.42.2 to 1.45.0
- Ensure consistent naming convention for configuration constants

* fix

* Update common/workers/src/workers.rs

Co-authored-by: Copilot <[email protected]>

---------

Co-authored-by: Copilot <[email protected]>
2025-05-07 17:23:22 +08:00
junxiang Mu 0ac1095c70 support spec char as delimiter
Signed-off-by: junxiang Mu <[email protected]>
2025-05-06 11:10:30 +08:00
01d5383ce3 Feature/bucket event notification (#365)
* add tracing instrument

* fix rebalance/decom

* modify Telemetry filter order

* feat: improve address binding and port handling mechanism (#366)

* feat: improve address binding and port handling mechanism

1. Add support for ":port" format to enable dual-stack binding (IPv4/IPv6)
2. Implement automatic port allocation when port 0 is specified
3. Optimize server startup process with unified address resolution
4. Enhance error handling and logging for address resolution
5. Improve graceful shutdown with signal listening
6. Clean up commented code in console.rs

Files:
- ecstore/src/utils/net.rs
- rustfs/src/console.rs
- rustfs/src/main.rs

Branch: feature/server-and-console-port

* improve code for console

* improve code

* improve code for console and net.rs

* Update rustfs/src/main.rs

Co-authored-by: Copilot <[email protected]>

* Update rustfs/src/utils/mod.rs

Co-authored-by: Copilot <[email protected]>

---------

Co-authored-by: Copilot <[email protected]>

* upgrade config file

* modify

* fix readme

Signed-off-by: junxiang Mu <[email protected]>

* improve readme.md

* improve code for readme.md
add chinese readme.md

* Implement Storage Service Event Notification System

Added event notification capability to the storage module, enabling the storage service to publish object operation events. Key changes include:

1. Created `event_notifier` module providing core functionality:
   - `create_metadata()` - Creates event metadata objects with default configuration ID
   - `send_event()` - Asynchronously sends event notifications with error handling

2. Integrated the `rustfs_event_notifier` library:
   - Supports object creation, deletion, and access events
   - Provides event metadata building and management
   - Includes proper error propagation

These changes enable the system to trigger notifications when storage operations occur, facilitating auditing, monitoring, and integration with other systems.

* fix

---------

Signed-off-by: junxiang Mu <[email protected]>
Co-authored-by: weisd <[email protected]>
Co-authored-by: Copilot <[email protected]>
Co-authored-by: junxiang Mu <[email protected]>
2025-04-30 00:31:55 +08:00
guojidanandGitHub 08f7de2e33 Merge pull request #371 from rustfs/pref
tmp5
2025-04-29 19:09:30 +08:00
junxiang Mu 05fad0aca0 tmp5
Signed-off-by: junxiang Mu <[email protected]>
2025-04-29 11:08:48 +00:00
houseme b411a38813 upgrade docker image version and fix docker comman 2025-04-29 19:04:53 +08:00
guojidanandGitHub a45411edbe Merge pull request #370 from rustfs/pref
Pref
2025-04-29 18:56:24 +08:00
junxiang Mu 8f917e4a19 tmp4
Signed-off-by: junxiang Mu <[email protected]>
2025-04-29 10:55:02 +00:00
junxiang Mu 7e1135df8f tmp3
Signed-off-by: junxiang Mu <[email protected]>
2025-04-29 10:53:03 +00:00
houseme e5cd061e18 improve code for request and telemetry 2025-04-29 11:55:59 +08:00
e9d6e2ca95 feat: improve address binding and port handling mechanism (#366)
* feat: improve address binding and port handling mechanism

1. Add support for ":port" format to enable dual-stack binding (IPv4/IPv6)
2. Implement automatic port allocation when port 0 is specified
3. Optimize server startup process with unified address resolution
4. Enhance error handling and logging for address resolution
5. Improve graceful shutdown with signal listening
6. Clean up commented code in console.rs

Files:
- ecstore/src/utils/net.rs
- rustfs/src/console.rs
- rustfs/src/main.rs

Branch: feature/server-and-console-port

* improve code for console

* improve code

* improve code for console and net.rs

* Update rustfs/src/main.rs

Co-authored-by: Copilot <[email protected]>

* Update rustfs/src/utils/mod.rs

Co-authored-by: Copilot <[email protected]>

---------

Co-authored-by: Copilot <[email protected]>
2025-04-27 23:44:26 +08:00
weisd 87bec2e6a6 fix rebalance/decom 2025-04-26 22:55:37 +08:00
houseme 05f1412323 improve code for opentelemetry 2025-04-26 17:26:54 +08:00
houseme 7926ac015a improve code for tracing log 2025-04-24 19:14:46 +08:00
housemeandGitHub 86353d98d5 feat: add TraceLayer for HTTP service and improve metrics (#361)
* improve code for opentelemetry and add system metrics

* feat: add TraceLayer for HTTP service and improve metrics

- Add TraceLayer to HTTP server for request tracing
- Implement system metrics for process monitoring
- Optimize init_telemetry method for better resource management
- Add graceful shutdown handling for telemetry components
- Fix GracefulShutdown ownership issues with Arc wrapper

* improve code for init_process_observer

* remove tomlfmt.toml

* Translation comment

* improve code for console CompressionLayer params
2025-04-24 19:04:57 +08:00
weisd 56575d58f4 fix:#352, #353
fix: verify_file bug
2025-04-24 15:32:12 +08:00
guojidanandGitHub e58eaacb20 Merge pull request #349 from rustfs/fix-data-scan
Fix data scan
2025-04-23 17:30:05 +08:00
junxiang Mu 45a9b6313e fmt
Signed-off-by: junxiang Mu <[email protected]>
2025-04-23 09:29:37 +00:00
junxiang Mu 380a451bc1 fix capacity
Signed-off-by: junxiang Mu <[email protected]>
2025-04-23 09:26:22 +00:00
houseme 4f347a92c1 feat: integrate event-notifier system with rustfs
- Rename package from rustfs-event-notifier to event-notifier for consistency
- Add shutdown hooks for event notification system in main process
- Handle graceful termination of notification services on server shutdown
- Implement initialization and configuration loading for event notification
- Fix environment variable configuration to properly parse adapter arrays
- Update example code to demonstrate proper configuration usage

This change ensures proper integration between rustfs and the event
notification system, with clean startup and shutdown sequences to prevent
resource leaks during application lifecycle.
2025-04-22 20:49:39 +08:00