mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-21 20:06:37 +00:00
eb7eb9c5a1
* fix: resolve logic errors in ahm heal module - Fix response publishing logic in HealChannelProcessor to properly handle errors - Fix negative index handling in DiskStatusChange event to fail fast instead of silently converting to 0 - Enhance timeout control in heal_erasure_set Step 3 loop to immediately respond to cancellation/timeout - Add proper error propagation for task cancellation and timeout in bucket healing loop * fix: stabilize performance impact measurement test - Increase measurement count from 3 to 5 runs for better stability - Increase workload from 5000 to 10000 operations for more accurate timing - Use median of 5 measurements instead of single measurement - Ensure with_scanner duration is at least baseline to avoid negative overhead - Increase wait time for scanner state stabilization * wip * Update crates/ahm/src/heal/channel.rs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * refactor: remove redundant ok_or_else + expect in event.rs Replace redundant ok_or_else() + expect() pattern with unwrap_or_else() + panic!() to avoid creating unnecessary Error type when the value will panic anyway. This also defers error message formatting until the error actually occurs. * Update crates/ahm/src/heal/task.rs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix(ahm): fix logic errors and add unit tests - Fix panic in HealEvent::to_heal_request for invalid indices - Replace unwrap() calls with proper error handling in resume.rs - Fix race conditions and timeout calculation in task.rs - Fix semaphore acquisition error handling in erasure_healer.rs - Improve error message for large objects in storage.rs - Add comprehensive unit tests for progress, event, and channel modules - Fix clippy warning: move test module to end of file in heal_channel.rs * style: apply cargo fmt formatting * refactor(ahm): address copilot review suggestions - Add comment to check_control_flags explaining why return value is discarded - Fix hardcoded median index in performance test using constant and dynamic calculation --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
29 lines
987 B
Rust
29 lines
987 B
Rust
// Copyright 2024 RustFS Team
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
pub mod channel;
|
|
pub mod erasure_healer;
|
|
pub mod event;
|
|
pub mod manager;
|
|
pub mod progress;
|
|
pub mod resume;
|
|
pub mod storage;
|
|
pub mod task;
|
|
pub mod utils;
|
|
|
|
pub use erasure_healer::ErasureSetHealer;
|
|
pub use manager::HealManager;
|
|
pub use resume::{CheckpointManager, ResumeCheckpoint, ResumeManager, ResumeState, ResumeUtils};
|
|
pub use task::{HealOptions, HealPriority, HealRequest, HealTask, HealType};
|