easybuild-easyblocks icon indicating copy to clipboard operation
easybuild-easyblocks copied to clipboard

installation error was not reported properly for impi/impi-4.0.0.028*

Open fgeorgatos opened this issue 12 years ago • 5 comments
trafficstars

Hi,

this is minor issue, don't be alarmed.

Introduction: The default license we have now is obtained via a 3-year Intel Cluster XE subscription purchased recently (Nov.12) which is supposed to cover previous versions, too; Alas (as per internal issue #691555 of Intel's support site) there is an incompatibility with impi-4.0.0.028 and we need to be provided a special (secondary) license file to overcome this technical limitation. Yes, that's a bugfix licensefile!

Unfortunately, the issue is masked and not reported at the right time. Preferably, easybuild should report this issue during the install step, rather than sanity checking.

As you can see below, the real culprit is indeed the flexlm licensing issue:

sw@gaia-64:~$ time eb /home/users/sw/CFGS/i/impi/impi-4.0.0.028*.eb
== resolving dependencies ...
== processing EasyBuild easyconfig /home/users/sw/CFGS/i/impi/impi-4.0.0.028-32bit.eb
== building and installing impi-4.0.0.028-32bit...
== fetching files...
== getting ready, creating build dir, resetting environment...
== unpacking...
== patching...
== preparing...
== configuring...
== building...
== testing...
== installing...
== taking care of extensions...
== packaging...
== postprocessing...
== sanity checking...
Traceback (most recent call last):
  File "/opt/apps/default/software/easybuild/1.1.0dev/easybuild-framework/easybuild/main.py", line 1552, in <module>
    main(options, orig_paths, log, logfile, hn, parser)
  File "/opt/apps/default/software/easybuild/1.1.0dev/easybuild-framework/easybuild/main.py", line 525, in main
    (success, _) = build_and_install_software(spec, options, log, origEnviron)
  File "/opt/apps/default/software/easybuild/1.1.0dev/easybuild-framework/easybuild/main.py", line 1009, in build_and_install_software
    regtest_online=options.regtest_online)
  File "/opt/apps/default/software/easybuild/1.1.0dev/easybuild-framework/easybuild/framework/easyblock.py", line 1595, in run_all_steps
    self.run_step(stop_name, step_methods, skippable=skippable)
  File "/opt/apps/default/software/easybuild/1.1.0dev/easybuild-framework/easybuild/framework/easyblock.py", line 1533, in run_step
    m(self)
  File "/opt/apps/default/software/easybuild/1.1.0dev/easybuild-framework/easybuild/framework/easyblock.py", line 1566, in <lambda>
    ('sanitycheck', 'sanity checking', [lambda x: x.sanity_check_step()], False),
  File "/opt/apps/default/software/easybuild/1.1.0dev/easybuild-easyblocks/easybuild/easyblocks/i/impi.py", line 116, in sanity_check_step
    super(EB_impi, self).sanity_check_step(custom_paths=custom_paths)
  File "/opt/apps/default/software/easybuild/1.1.0dev/easybuild-framework/easybuild/framework/easyblock.py", line 1397, in sanity_check_step
    os.chdir(self.installdir)
OSError: [Errno 2] No such file or directory: '/home/users/sw/easybuild.20130126/software/impi/4.0.0.028-32bit'
Command exited with non-zero status 1
2.10user 0.60system 0:04.89elapsed 55%CPU (0avgtext+0avgdata 70224maxresident)k
0inputs+277112outputs (0major+73725minor)pagefaults 0swaps

real    0m4.900s
user    0m2.100s
sys 0m0.604s
sw@gaia-64:~$ 
sw@gaia-64:~$ time eb /home/users/sw/CFGS/i/impi/impi-4.0.0.028*eb -ld 2>&1|grep -10 -i flexlm
== 2013-01-27 17:16:10,303 main.EB_impi INFO installing...
== installing...
== 2013-01-27 17:16:10,304 main.EB_impi INFO Starting install step
== 2013-01-27 17:16:10,304 main.EB_impi INFO Running method stage_install_step part of step install
== 2013-01-27 17:16:10,304 main.EB_impi INFO Running method make_installdir part of step install
== 2013-01-27 17:16:10,304 main.EB_impi DEBUG Creating the installation directory /home/users/sw/easybuild.20130126/software/impi/4.0.0.028-32bit (cleanup: True)
== 2013-01-27 17:16:10,304 main.EB_impi INFO Cleaning only, no actual creation of /home/users/sw/easybuild.20130126/software/impi/4.0.0.028-32bit, only verification/creation of dirname /home/users/sw/easybuild.20130126/software/impi
== 2013-01-27 17:16:10,305 main.EB_impi INFO Running method install_step part of step install
== 2013-01-27 17:16:10,305 main.fileTools DEBUG run_cmd: running cmd ./install.sh --tmp-dir=/tmp/impi/4.0.0.028/dummy-dummy-32bit/l_mpi_pu_4.0.0.028/4.0.0.028/mytmpdir --silent=/tmp/impi/4.0.0.028/dummy-dummy-32bit/l_mpi_pu_4.0.0.028/silent.cfg (in /tmp/impi/4.0.0.028/dummy-dummy-32bit/l_mpi_pu_4.0.0.028)
== 2013-01-27 17:16:11,470 main.fileTools INFO cmd "./install.sh --tmp-dir=/tmp/impi/4.0.0.028/dummy-dummy-32bit/l_mpi_pu_4.0.0.028/4.0.0.028/mytmpdir --silent=/tmp/impi/4.0.0.028/dummy-dummy-32bit/l_mpi_pu_4.0.0.028/silent.cfg" exited with exitcode 0 and output:
No valid FLEXlm license keys were found for this product.
To get FLEXlm license please contact the Intel(R) support team at https://registrationcenter.intel.com/support.
Exiting...

== 2013-01-27 17:16:11,471 main.fileTools DEBUG Using default regular expression: (?<![(,]|\w)(?:error|segmentation fault|failed)(?![(,]|\.?\w)
== 2013-01-27 17:16:11,471 main.EB_impi INFO taking care of extensions...
== taking care of extensions...
== 2013-01-27 17:16:11,471 main.EB_impi INFO Starting extensions step
== 2013-01-27 17:16:11,471 main.EB_impi INFO Running method extensions_step part of step extensions
== 2013-01-27 17:16:11,472 main.EB_impi DEBUG No extensions in exts_list
== 2013-01-27 17:16:11,472 main.EB_impi INFO packaging...
== packaging...

real    0m4.959s
user    0m2.196s
sys 0m0.552s
sw@gaia-64:~$ 

ps. I send this mostly in the hope that others will not have to duplicate the debugging effort and also to eventually phase out this version in favor of newer ones

fgeorgatos avatar Jan 27 '13 16:01 fgeorgatos

even if you have an account with Intel, you won't be able to read the relevant issues (nor nearby related ones 691558 & 692140)

I copy here verbatim the response as coming from their support team: The problem is that the older versions of the Intel® MPI Library used a different code for license verification.

So, you really need to get a secondary 3yr license for your flexlm and merge it with the original one from Intel, this is the workaround from the formal support channels.

Another related issue, just in case:

If you hear other people stumbling on tarballs for 11.1.073, the only "proper" salvation is to contact Intel via their support website and ask for the files - you won't find them elsewhere; this is unfortunate because these tarballs are part of the dependency chain for ictce/3.2.2 toolchain and many other builds. Another possible way to go around this last one is via a nasty hack, to symlink l_cproc_p_11.1.073.tgz -> l_cproc_p_11.1.080.tgz, which you can find. :-(

fgeorgatos avatar Jan 28 '13 00:01 fgeorgatos

@fgeorgatos: ping on this?

boegel avatar Jan 23 '16 13:01 boegel

@boegel: pong?

fgeorgatos avatar Feb 25 '16 03:02 fgeorgatos

@fgeorgatos I propose we close this issue... The traceback issue shouldn't occur anymore now.

Unfortunately, detecting an installation problem in install_step is not so trivial for the Intel installers, since they exit with 0 regardless of whether the installation worked or not. In that case, the sanity check is our fallback mechanism; in fact, it was the very reason it was introduced...

boegel avatar Dec 26 '16 10:12 boegel

I think the feature request on this one would be something like:

  • grep installation output for No valid FLEXlm license keys were found for this product. and bail out if so

IMHO, some other package might eventually have the same need; I'm not fanatic about it, yet I'd keep it

fgeorgatos avatar Feb 23 '17 02:02 fgeorgatos