Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test failure when NEST is installed system-wide #116

Closed
mih opened this issue Sep 30, 2015 · 6 comments · Fixed by #318
Closed

Test failure when NEST is installed system-wide #116

mih opened this issue Sep 30, 2015 · 6 comments · Fixed by #318
Labels
I: No breaking change Previously written code will work as before, no one should note anything changing (aside the fix) S: Normal Handle this with default priority T: Enhancement New functionality, model or documentation ZC: Installation DO NOT USE THIS LABEL ZP: Pending DO NOT USE THIS LABEL

Comments

@mih
Copy link

mih commented Sep 30, 2015

I have prepared a Debian packaging for NEST v2.8 targeting Debian proper (PR will come shortly). I have sorted out most things already. However, I am facing an issue when running the test suite for a NEST installation in /usr. This culprit is this:

Running test 'unittests/test_round_validate.sli'... 
   > Running  mpirun -np 1 /usr/bin/nest /usr/share/doc/nest/unittests/test_round_valid
ate.sli
   > NEST v2.8.0 (C) 2004 The NEST Initiative
   > 
   > Sep 30 17:34:23 file [Error]: FileOpenError
   >     Could not open the following file for writing: 
   >     "/usr/share/doc/nest/help/sli/array.hlp".
   > --------------------------------------------------------------------------
   > MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD 
   > with errorcode 126.
   > 
   > NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
   > You may or may not see output from other processes, depending on
   > exactly when Open MPI kills them.
   > --------------------------------------------------------------------------
   > --------------------------------------------------------------------------
   > mpirun has exited due to process rank 0 with PID 3952 on
   > node meiner exiting improperly. There are two reasons this could occur:
   > 
   > 1. this process did not call "init" before exiting, but others in
   > the job did. This can cause a job to hang indefinitely while it waits
   > for all processes to call "init". By rule, if one process calls "init",
   > then ALL processes must call "init" prior to termination.
   > 
   > 2. this process called "init", but exited without calling "finalize".
   > By rule, all processes that call "init" MUST call "finalize" prior to
   > exiting or it will be considered an "abnormal termination"
   > 
   > This may have caused other processes in the application to be
   > terminated by signals sent by mpirun (as reported here).
   > --------------------------------------------------------------------------
-> 126 (Failed: error in test script)

Is there a way to make this work -- maybe by writing into a temp dir? If not, I would exclude this test -- it is the only one that fails.

It would be nice to be able to run (a subset of) the tests without having to install NEST somewhere, but I could not figure out how -- it seems to heavily rely on its installation prefix.

Other open issues where I would appreciate you input are:

  • is Python3 supported?
  • if yes, is it possible to build for multiple Python versions with your autotools setup (doesn't look like it)
  • can you confirm that all source code is (C) Nest initiative and GPL-2+? What about contributed pieces like ./testsuite/manualtests/stdp_prot.m ?

Thanks!

Sidenote: It would be nice, if the HEAD of master could be progressed to include the v2.8.0 tag.

@jougs
Copy link
Contributor

jougs commented Oct 1, 2015

Many thanks for your work on the packaging and for reporting this.

It seems like we've never seen this error before (it's kind of curious that NEST tries to write to a help file during startup...). Could you please post the output of the following command?

mpirun -np 1 /usr/bin/nest --verbosity=ALL /usr/share/doc/nest/unittests/test_round_valid
ate.sli

@mih
Copy link
Author

mih commented Oct 1, 2015

Here is the log

% mpirun -np 1 /usr/bin/nest --verbosity=ALL /usr/share/doc/nest/unittests/test_round_validate.sli          

Oct 01 10:02:55 SLIStartup [Debug]: 
    Initialising from file: /usr/share/nest/sli/sli-init.sli

Oct 01 10:02:55 basic process management [Debug]: 
    Initializing.

Oct 01 10:02:55 POSIX-Regexp [Debug]: 
    Initializing.

Oct 01 10:02:55 Filesystem access [Debug]: 
    Initializing.

Oct 01 10:02:55 NEST Kernel 2 [Debug]: 
    Initializing.

Oct 01 10:02:55 NEST Standard Models Module [Debug]: 
    Initializing.

Oct 01 10:02:55 NEST Precise Spike-Timing Models Module [Debug]: 
    Initializing.

Oct 01 10:02:55 TopologyModule [Debug]: 
    Initializing.

Oct 01 10:02:55 NEST-Dynamic Loader [Debug]: 
    Initializing.

Oct 01 10:02:55 SLIFunctionWrapper [Debug]: 
    Defining wrapper 'pageoutput'.

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file library.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/library.sli ... yes

Oct 01 10:02:55 SLIFunctionWrapper [Debug]: 
    Defining wrapper '::checknestedlookup'.

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file ps-lib.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/ps-lib.sli ... yes

Oct 01 10:02:55 sli-init [Status]: 
    Executing module initializers...

Oct 01 10:02:55 sli-init [Debug]: 
    Executing module initializer: (oosupport.sli) run

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file oosupport.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/oosupport.sli ... yes

Oct 01 10:02:55 sli-init [Debug]: 
    Executing module initializer: (librandom) run

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file librandom.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/librandom.sli ... yes

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file oosupport.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/oosupport.sli ... yes

Oct 01 10:02:55 sli-init [Debug]: 
    Executing module initializer: (mathematica) run (arraylib) run

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file mathematica.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/mathematica.sli ... yes

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file arraylib.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/arraylib.sli ... yes

Oct 01 10:02:55 sli-init [Debug]: 
    Executing module initializer: M_DEBUG (SLIgraphics) (Initialising Graphics
    IO) message

Oct 01 10:02:55 SLIgraphics [Debug]: 
    Initialising Graphics IO

Oct 01 10:02:55 sli-init [Debug]: 
    Executing module initializer: (processes.sli) run

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file processes.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/processes.sli ... yes

Oct 01 10:02:55 sli-init [Debug]: 
    Executing module initializer: (regexp) run

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file regexp.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/regexp.sli ... yes

Oct 01 10:02:55 SLIFunctionWrapper [Debug]: 
    Defining wrapper 'grep'.

Oct 01 10:02:55 SLIFunctionWrapper [Debug]: 
    Defining wrapper 'grep'.

Oct 01 10:02:55 sli-init [Debug]: 
    Executing module initializer: (filesystem.sli) run

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file filesystem.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/filesystem.sli ... yes

Oct 01 10:02:55 sli-init [Debug]: 
    Executing module initializer: (nest-init) run

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file nest-init.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/nest-init.sli ... yes

Oct 01 10:02:55 nest-init.sli [Debug]: 
    Initializing SLI support for NEST Kernel.

Oct 01 10:02:55 sli-init [Debug]: 
    Executing module initializer: (models-init) run

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file models-init.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/models-init.sli ... yes

Oct 01 10:02:55 sli-init [Debug]: 
    Executing module initializer: (topology-interface) run

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file topology-interface.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/topology-interface.sli ... yes

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file FormattedIO.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/FormattedIO.sli ... yes

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file debug.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/debug.sli ... yes

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file helpinit.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/helpinit.sli ... yes

Oct 01 10:02:55 SLIFunctionWrapper [Debug]: 
    Defining wrapper 'apropos'.

Oct 01 10:02:55 SLIFunctionWrapper [Debug]: 
    Defining wrapper 'which'.

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file rcsinfo:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for ./rcsinfo ... no

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/rcsinfo ... no

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/doc/nest/examples/rcsinfo ... no

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/doc/nest/examples/FacetsBenchmarks/rcsinfo ... 
    no

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file rcsinfo.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for ./rcsinfo.sli ... no

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/rcsinfo.sli ... yes

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file rcsinfo.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for ./rcsinfo.sli ... no

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/rcsinfo.sli ... yes
NEST v2.8.0 (C) 2004 The NEST Initiative

Oct 01 10:02:55 searchfile [Debug]: 
    Locating file unittest.sli:

Oct 01 10:02:55 searchfile [Debug]: 
      searching for ./unittest.sli ... no

Oct 01 10:02:55 searchfile [Debug]: 
      searching for /usr/share/nest/sli/unittest.sli ... yes

Oct 01 10:02:55 file [Error]: FileOpenError
    Could not open the following file for writing: 
    "/usr/share/doc/nest/help/sli/array.hlp".
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD 
with errorcode 126.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun has exited due to process rank 0 with PID 24472 on
node meiner exiting improperly. There are two reasons this could occur:

1. this process did not call "init" before exiting, but others in
the job did. This can cause a job to hang indefinitely while it waits
for all processes to call "init". By rule, if one process calls "init",
then ALL processes must call "init" prior to termination.

2. this process called "init", but exited without calling "finalize".
By rule, all processes that call "init" MUST call "finalize" prior to
exiting or it will be considered an "abnormal termination"

This may have caused other processes in the application to be
terminated by signals sent by mpirun (as reported here).
--------------------------------------------------------------------------

@jougs
Copy link
Contributor

jougs commented Apr 4, 2016

Dear @Hanke,
sorry for the endless delay. Can you please re-check if the issues persist with the current version of master? With the merge of #213, we have replaced the build system with cmake.

@tammoippen
Copy link
Contributor

@heplesser Can you look at this? Thank you!

@jougs
Copy link
Contributor

jougs commented Jul 17, 2018

@mih I just realized that I mentioned someone completely not you two years ago :-(
Are you still interested in this and if yes, could you please have another look at this?

@jougs jougs reopened this Jul 17, 2018
@terhorstd terhorstd added T: Enhancement New functionality, model or documentation ZC: Installation DO NOT USE THIS LABEL ZP: Pending DO NOT USE THIS LABEL S: Normal Handle this with default priority I: No breaking change Previously written code will work as before, no one should note anything changing (aside the fix) labels Jul 23, 2018
jakobj added a commit to stinebuu/nest-simulator that referenced this issue Jul 30, 2018
@jougs
Copy link
Contributor

jougs commented Sep 13, 2018

We close this, as we now have a Debian/Ubuntu package in a PPA by @steffengraber and the problem does not seem to be a problem there.

@jougs jougs closed this as completed Sep 13, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I: No breaking change Previously written code will work as before, no one should note anything changing (aside the fix) S: Normal Handle this with default priority T: Enhancement New functionality, model or documentation ZC: Installation DO NOT USE THIS LABEL ZP: Pending DO NOT USE THIS LABEL
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants