mix raxol.memory.stability (Raxol v2.0.1)

View Source

Long-running memory stability tests for detecting memory leaks and performance degradation.

This task runs extended memory tests that simulate real-world usage patterns over extended periods to detect memory leaks, performance degradation, and stability issues.

Usage

mix raxol.memory.stability
mix raxol.memory.stability --duration 3600
mix raxol.memory.stability --scenario vim_session
mix raxol.memory.stability --with-profiling

Options

  • --duration - Test duration in seconds (default: 1800 = 30 minutes)
  • --scenario - Specific scenario to test (vim_session, log_streaming, interactive_shell)
  • --with-profiling - Enable detailed memory profiling
  • --output - Output directory for results (default: bench/stability)
  • --interval - Measurement interval in seconds (default: 30)
  • --memory-threshold - Memory growth threshold in MB (default: 10)

Test Scenarios

vim_session

Simulates a Vim editing session with:

  • File editing operations
  • Syntax highlighting
  • Buffer management
  • Search and replace operations

log_streaming

Simulates continuous log streaming with:

  • High-frequency text updates
  • ANSI color processing
  • Buffer scrolling
  • Pattern matching

interactive_shell

Simulates interactive shell usage with:

  • Command execution
  • Output processing
  • History management
  • Tab completion

Exit Codes

  • 0: Stability test passed
  • 1: Memory leak detected
  • 2: Performance degradation detected
  • 3: Test execution failed

Summary

Functions

Callback implementation for Mix.Task.run/1.

Functions

run(args)

@spec run(list()) :: no_return()

Callback implementation for Mix.Task.run/1.