Skip to content

Issue in MDSplus models generation (IMAS-Core>=5.6) #146

Closed

Description

@olivhoenen

Commit a14b8b6 (#98) tries to get compatibility with IMAS-Core>=5.6 (using the new MDSPLUS_MODELS_PATH variable), this works well when using existing models, but breaks generation of models. The external Java process jTraverser (plain MDSplus) only finds where to create tree ids through ids_path variable (constructed by definition as treename_path).

--- Logging error ---
Traceback (most recent call last):
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/mdsplus_model.py", line 327, in create_mdsplus_model
    check_output(
    ~~~~~~~~~~~~^
        [
        ^
    ...<14 lines>...
        },
        ^^
    )
    ^
  File "/work/imas/opt/EasyBuild/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/subprocess.py", line 472, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
           ~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
               **kwargs).stdout
               ^^^^^^^^^
  File "/work/imas/opt/EasyBuild/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/subprocess.py", line 577, in run
    raise CalledProcessError(retcode, process.args,
                             output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['java', '-Xms1g', '-Xmx8g', '-XX:+UseG1GC', '-cp', '/work/imas/opt/EasyBuild/software/MDSplus/7.153.3-GCCcore-14.3.0/java/classes/jTraverser.jar', 'mds.jtraverser.CompileTree', 'ids']' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/work/imas/opt/EasyBuild/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/logging/__init__.py", line 1151, in emit
    msg = self.format(record)
  File "/work/imas/opt/EasyBuild/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/logging/__init__.py", line 999, in format
    return fmt.format(record)
           ~~~~~~~~~~^^^^^^^^
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/setup_logging.py", line 35, in format
    return formatter.format(record)
           ~~~~~~~~~~~~~~~~^^^^^^^^
  File "/work/imas/opt/EasyBuild/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/logging/__init__.py", line 712, in format
    record.message = record.getMessage()
                     ~~~~~~~~~~~~~~~~~^^
  File "/work/imas/opt/EasyBuild/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/logging/__init__.py", line 400, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
TypeError: not all arguments converted during string formatting
Call stack:
  File "/home/ITER/hoeneno/GIT/IMAS-Python/../mds_test.py", line 3, in <module>
    db = imas.DBEntry("imas:mdsplus?path=./testmds","w",dd_version="3.42.2")
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/db_entry.py", line 192, in __init__
    self._dbe_impl = cls.from_uri(self.uri, mode, self._ids_factory)
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/db_entry_al.py", line 84, in from_uri
    return cls(uri, _OPEN_MODES[mode], factory)
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/db_entry_al.py", line 61, in __init__
    self._setup_backend(backend, mode, factory)
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/db_entry_al.py", line 120, in _setup_backend
    ids_path = mdsplus_model_dir(factory)
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/mdsplus_model.py", line 182, in mdsplus_model_dir
    create_mdsplus_model(tmp_cache_dir_path)
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/mdsplus_model.py", line 348, in create_mdsplus_model
    logger.error("Error making MDSPlus model in {path}", cache_dir_path)
Message: 'Error making MDSPlus model in {path}'
Arguments: (PosixPath('/tmp/hoeneno/imas/mdsplus/3.42.2.xml-d66c8a74_83dbc8fc919444b7886f5c548036a119'),)
13:33:50 ERROR    Error creating MDSPlus file @mdsplus_model.py:197
Traceback (most recent call last):
  File "/home/ITER/hoeneno/GIT/IMAS-Python/../mds_test.py", line 3, in <module>
    db = imas.DBEntry("imas:mdsplus?path=./testmds","w",dd_version="3.42.2")
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/db_entry.py", line 192, in __init__
    self._dbe_impl = cls.from_uri(self.uri, mode, self._ids_factory)
                     ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/db_entry_al.py", line 84, in from_uri
    return cls(uri, _OPEN_MODES[mode], factory)
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/db_entry_al.py", line 61, in __init__
    self._setup_backend(backend, mode, factory)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/db_entry_al.py", line 120, in _setup_backend
    ids_path = mdsplus_model_dir(factory)
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/mdsplus_model.py", line 200, in mdsplus_model_dir
    raise ee
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/mdsplus_model.py", line 182, in mdsplus_model_dir
    create_mdsplus_model(tmp_cache_dir_path)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/mdsplus_model.py", line 349, in create_mdsplus_model
    raise e
  File "/work/imas/opt/EasyBuild/software/IMAS-Python/2.3.0-intel-2025b/lib/python3.13/site-packages/imas/backends/imas_core/mdsplus_model.py", line 327, in create_mdsplus_model
    check_output(
    ~~~~~~~~~~~~^
        [
        ^
    ...<14 lines>...
        },
        ^^
    )
    ^
  File "/work/imas/opt/EasyBuild/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/subprocess.py", line 472, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
           ~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
               **kwargs).stdout
               ^^^^^^^^^
  File "/work/imas/opt/EasyBuild/software/Python/3.13.5-GCCcore-14.3.0/lib/python3.13/subprocess.py", line 577, in run
    raise CalledProcessError(retcode, process.args,
                             output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['java', '-Xms1g', '-Xmx8g', '-XX:+UseG1GC', '-cp', '/work/imas/opt/EasyBuild/software/MDSplus/7.153.3-GCCcore-14.3.0/java/classes/jTraverser.jar', 'mds.jtraverser.CompileTree', 'ids']' returned non-zero exit status 1.

Activity

  1. self-assigned this
    on Oct 22, 2026
  2. added theissue type on Oct 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions