awsteiner / o2scl

Object-oriented Scientific Computing Library
https://awsteiner.org/code/o2scl
GNU General Public License v3.0
35 stars 14 forks source link

exc_overflow_error in eos_nse_full_ts test #16

Closed badshah400 closed 4 years ago

badshah400 commented 4 years ago

When running make check on some systems (specifically, building packages for openSUSE Leap 15.2 and older), the eos_nse_full_ts test aborts with an overflow error:

[  953s] terminate called after throwing an instance of 'o2scl::exc_overflow_error'
[  953s]   what():  Error eovrflw in file exp.c at line 542.
[  953s]   overflow
[  953s] /bin/sh: line 1:  4179 Aborted                 ./eos_nse_full_ts > eos_nse_full.scr

I say some systems, because the test succeeds on a system with gcc 10.2 but gives the above error when using gcc 7up to gcc 9. You may find the build status for different versions of openSUSE here: https://build.opensuse.org/package/show/home:badshah400:branches:science/o2scl.

The full build log from the system with the test error is attached: _log.zip

Not seen with version 0.924 which builds successfully on all these systems.

Thanks.

awsteiner commented 4 years ago

Let me see if I can make a dockerfile to test these things before release instead of after them...

awsteiner commented 4 years ago

The docker build on opensuse/leap didn't throw the same exception. However, I think I know what's going on. I've updated src/other/polylog.h with a fix in commit 78c3ce2c44030059e208c62c62217e594eca02ff. I'm going to close this for now but let me know if it still isn't fixed. Also, let me know how I can send a release candidate for the next release so we can catch these things.

badshah400 commented 4 years ago

Thanks, that did it.

To track possible issues before a release, I have a set up that, when triggered, downloads the git master and builds the rpm from it, running the tests during the process. If you tag a commit as beta or pre-release, I can trigger a build from that commit and test. Here are the sources (I basically just have to hit trigger service to download the latest git tip): https://build.opensuse.org/package/show/home:badshah400:Staging/o2scl.