Skip to content

V0.3.1 wip#163

Merged
ibaldin merged 23 commits intomainfrom
v0.3.1-wip
Feb 24, 2026
Merged

V0.3.1 wip#163
ibaldin merged 23 commits intomainfrom
v0.3.1-wip

Conversation

@ibaldin
Copy link
Collaborator

@ibaldin ibaldin commented Feb 24, 2026

  • Reversed the order of removing senders and shutting down send threads in e2sar_perf to ensure no losses occur due to premature de-listing of the sender IP in LB
  • Fixed multiple memory leaks in segmenter and reassembler
  • Fixed proper handling of -v/--novalidate flag in lbadm
  • Added 'Zero-to-Hero' scripts that show how to do performance testing on Perlmutter (located in scripts/zero_to_hero). The scripts exercise the wide variety of E2SAR tools and show how they can be integrated into Slurm workflows.

ibaldin and others added 23 commits February 18, 2026 20:38
…perf, making sure queued data is sent out before exit
…e leak, in reassembler several shutdown leaks
Transferred scripts/zero_to_hero directory with all documentation,
examples, and utilities from the zero_to_hero branch.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit resolves all blocking and non-blocking issues identified in the
PR #159 code review.

Blocking fixes:
- Remove hardcoded /global/homes/y/yak/ paths from SLURM scripts
  (perlmutter_slurm.sh, perlmutter_multi_slurm.sh) and require
  E2SAR_SCRIPTS_DIR environment variable instead
- Fix reservation validity check in minimal_reserve.sh to use instance URI
  instead of admin URI, ensuring stale sessions are properly detected

Configuration improvements:
- Add LB_NAME variable and --lbname option to minimal_reserve.sh for
  configurable reservation names (replaces hardcoded "yk_test")
- Make container image configurable via E2SAR_IMAGE variable in
  minimal_reserve.sh and minimal_free.sh

Security and logging:
- Redact EJFAT_URI tokens in output logs for minimal_sender.sh,
  minimal_receiver.sh, and minimal_free.sh
- Remove duplicate END_TIME/EXIT_CODE log entries in minimal_sender.sh
  and minimal_receiver.sh (trap handler already logs these)

Documentation:
- Update CLAUDE.md with E2SAR_SCRIPTS_DIR requirement for SLURM scripts
- Document LB_NAME environment variable and --lbname option
- Add prerequisites section for SLURM batch processing

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add cleanup traps to prevent orphaned LB reservations on job cancellation,
replace unsafe source commands with grep-based extraction to prevent code
execution, and hide authentication tokens from process listings.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fixes remaining security vulnerabilities in minimal_reserve.sh and minimal_free.sh:

- Replace unsafe source command with grep-based URI extraction in minimal_reserve.sh
- Use --env instead of -e for EJFAT_URI to prevent token exposure in process listings
- Properly handle temporary URI swapping for validation while preserving admin URI

These changes complete the security hardening started in commit 8a314d4, ensuring
all EJFAT_URI tokens are safely passed through environment variables rather than
command-line arguments visible in ps output.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Transferred scripts/zero_to_hero directory with all documentation, examples, and utilities from the zero_to_hero branch. This documentation shows how to run e2sar_perf and other tools using Perlmutter.
Add workflow dispatch input for PR number.
@ibaldin ibaldin self-assigned this Feb 24, 2026
@ibaldin ibaldin merged commit 2672824 into main Feb 24, 2026
1 check passed
@ibaldin ibaldin deleted the v0.3.1-wip branch February 24, 2026 03:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant