-
Notifications
You must be signed in to change notification settings - Fork 129
Conference notes for 2022 05 03
Robert McLay edited this page Jun 6, 2022
·
1 revision
- Print message when unloading a module that wasn't loaded (Issue #576)
- How TCL break and LmodBreak is handled in Lmod
- Q&A
- Robert McLay (TACC, US)
- Kenneth Hoste (HPC-UGent, Belgium)
- Kurt Lust (Univ. of Antwerp, Belgium - LUMI User Support Team)
- Matthew Cawood (TACC, US)
- Ward Poelmans (Vrije Universiteit Brussel, Belgium)
- Mikael Öhman (Chalmers University of Technology, Sweden)
- Bennet Fauber (Univ. of Michigan, US)
- see https://github.com/TACC/Lmod/issues/576
- "warning" message will be printed, but exit code will remain zero
- was implemented on request by Spack developers
- not included in an Lmod release yet
- Kenneth will try to run EasyBuild test suite on top of Lmod that includes this change
- EasyBuild already sets $LMOD_QUIET, so won't be affected by this
- and it probably doesn't unload modules anyway (especially none that are not loaded)
- slides available at https://github.com/TACC/Lmod/blob/master/my_docs/22/lmod_zoom_mtg_2022_05_03/presentation.pdf
-
break
statement outside of a loop in Tcl is an error (and we'll take advantage of that) - when a break statement is hit, none of the changes specified by that module file get applied (and only that module will not be loaded)
- top of FrameStk is (in some sense) buffer of changes that are made by module file which is being loaded
- if break happens, all those changes are ignored by kicking out the top of the stack (see
M.LmodBreak
function)
- if break happens, all those changes are ignored by kicking out the top of the stack (see
-
Robert has not found time yet to look into problem reported by Bennet via Lmod-users mailing list
- see https://sourceforge.net/p/lmod/mailman/message/37648391/
- Lmod is producing traceback 3/5 times?!
- traceback are even not consistent
- using Lmod 8.6.x on top of Lua 5.3 (RHEL8)
- looping over hash tables in Lua 5.3 happens in random order of keys (way more than Lua 5.1 did), which could be relevant here...
- problem is happening on bare
module avail
ormodule spider
, also withmodule spider foo
- Bennet should try the
check_module_tree_syntax
tool (module file linter) - traceback suggests towards loop being triggered
- could be related to having a module file that is changing
$MODULEPATH
with location of module file being loaded
-
Mikael's issue (https://github.com/TACC/Lmod/issues/575)
- no answer yet on this...
- looks like Lmod will need to have AI capabilities?
-
LmodError vs LmodWarning
- LmodError: totally cancels whole
module
command - LmodWarning prints a warning and does non-zero exit
- LmodBreak: stops processing module being loaded, doesn't apply changes, cancels rest of module command
- LmodError: totally cancels whole
- Tue June 7th 2022 at 09:30 US Central (14:30 UTC)
- topic: explaining how
module load
is processed by Lmod, stepping through the codebase - future topics: how module name is converted into an internal object in Lmod codebase