build fails after running out of disk space

Issue #242 closed
Erik Schnetter created an issue

After running out of disk space (and then removing 16 GByte), building fails on numrel09:

$ ./bin/sim build DEBUG: Simfactory command: ./bin/../simfactory/lib/sim.py "build" DEBUG: Version exported The Simulation Factory: Manage Cactus simulations

Info: defs: /home/eschnett/EinsteinToolkit-hg-vanilla/simfactory/etc/defs.ini Info: defs.local: /home/eschnett/EinsteinToolkit-hg-vanilla/simfactory/etc/defs.local.ini Info: Executing command: build Using configuration: sim Info: Cactus Directory: /home/eschnett/EinsteinToolkit-hg-vanilla Traceback (most recent call last): File "./bin/../simfactory/lib/sim.py", line 142, in <module> main() File "./bin/../simfactory/lib/sim.py", line 139, in main CommandDispatch() File "./bin/../simfactory/lib/sim.py", line 106, in CommandDispatch module.main() File "/home/eschnett/EinsteinToolkit-hg-vanilla/simfactory/lib/sim-build.py", line 420, in main CommandDispatch() File "/home/eschnett/EinsteinToolkit-hg-vanilla/simfactory/lib/sim-build.py", line 347, in CommandDispatch exec("command_%s()" % command) File "<string>", line 1, in <module> File "/home/eschnett/EinsteinToolkit-hg-vanilla/simfactory/lib/sim-build.py", line 391, in command_build PrepConfiguration(config) File "/home/eschnett/EinsteinToolkit-hg-vanilla/simfactory/lib/sim-build.py", line 58, in PrepConfiguration prop.init(propertiesFile) File "/home/eschnett/EinsteinToolkit-hg-vanilla/simfactory/lib/restartlib.py", line 101, in init self.ImportProperties() File "/home/eschnett/EinsteinToolkit-hg-vanilla/simfactory/lib/restartlib.py", line 107, in ImportProperties for key in section.keys(): AttributeError: 'NoneType' object has no attribute 'keys'

This looks as if some internal information about the build has become corrupt, maybe because of a partially written file.

This may be a rare case not worth handling elegantly. However -- what should I do now?

Keyword:

Comments (8)

  1. anonymous
    • changed status to resolved
    • removed comment

    In that specific function, i made a check for this case now -- it will fatal() if this situation occurs. The best thing to do now would be to run sim purge <simulationname> --restart-id=<restart_id> and it will purge that specific restart out of your simulation. I don't know if we can really elegantly handle this, though I am open to suggestions on how.

  2. Erik Schnetter reporter
    • changed status to open
    • removed comment

    The problem was that Cactus/configs/sim/properties.ini did exist but was empty; it had nothing to do with simulations. (There were no simulations on this machine.) Could you update the error message to reflect this?

    Removing the empty ini file solved the problem.

  3. Ian Hinder
    • removed comment

    The code has been restructured since this ticket was opened. A missing properties.ini file in the configuration now leads to incorrect behaviour, as SimFactory assumes the default values for all properties. For example, it will use the default thornlist instead of the one that the configuration was built with.

    The attached patch detects a missing properties.ini file and aborts with an error message warning the user that the configuration has been corrupted and needs to be deleted and rebuilt.

    I do not know a SimFactory command to do this (build --clean did not work), so the user is expected to use the "rm" command.

  4. Erik Schnetter reporter
    • removed comment

    Please apply the patch.

    I would change the wording from "Please delete the configuration [...]" to "If you think the configuration has been corrupted, you need to delete [...]".

  5. Ian Hinder
    • removed comment

    Committed in r1291. Please close the ticket if you think the problem has now been solved.

  6. Log in to comment