Skip to content

NetCDF 4.10.1 test unit_test/run_dfaltpluginpath.sh fails if HOME is not set #3415

Description

@Alexander-Barth

In Julia, we are building NetCDF in a sand-boxed environment where HOME is not defined.
I am currently trying to make a build with plugins enabled, and but the test run_dfaltpluginpath.sh fails:

/unit_test # ./run_dfaltpluginpath.sh
Segmentation fault (core dumped)

The test tries to run the utility ncpathcvt with the argument:

# /workspace/srcdir/netcdf-c-4.10.1/unit_test/../ncdump/ncpathcvt '-S;' -w '/tmp;'
Segmentation fault (core dumped)

After /tmp; there should come the HOME directory. Setting HOME to a dummy value, like /home/dummy works for run_dfaltpluginpath.sh.

gdb suggested that the segmentation fault triggered in nclistclearall:

sandbox:${WORKSPACE}/srcdir/netcdf-c-4.10.1/unit_test # gdb --args /workspace/srcdir/netcdf-c-4.10.1/ncdump/.libs/lt-ncpathcvt '-S;' -w '/tmp;'
[...]
Starting program: /workspace/srcdir/netcdf-c-4.10.1/ncdump/.libs/lt-ncpathcvt -S\; -w /tmp\;
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7e10d84 in nclistclearall () from /workspace/srcdir/netcdf-c-4.10.1/liblib/.libs/libnetcdf.so.22
(gdb) where
#0  0x00007ffff7e10d84 in nclistclearall () from /workspace/srcdir/netcdf-c-4.10.1/liblib/.libs/libnetcdf.so.22
#1  0x00007ffff7e10d58 in nclistfreeall () from /workspace/srcdir/netcdf-c-4.10.1/liblib/.libs/libnetcdf.so.22
#2  0x00007ffff7e0ec48 in ncuriparse () from /workspace/srcdir/netcdf-c-4.10.1/liblib/.libs/libnetcdf.so.22
#3  0x00007ffff7e185b6 in testurl () from /workspace/srcdir/netcdf-c-4.10.1/liblib/.libs/libnetcdf.so.22
#4  0x00007ffff7e17d4b in NCpathcvt () from /workspace/srcdir/netcdf-c-4.10.1/liblib/.libs/libnetcdf.so.22
#5  0x00007ffff7e18295 in NCpathcvt_test () from /workspace/srcdir/netcdf-c-4.10.1/liblib/.libs/libnetcdf.so.22
#6  0x00000000004016f8 in processdir ()
#7  0x0000000000401b5e in main ()

I guess it is fine for the tests to set a dummy HOME variable, but I wanted to let you since apparently the failure is in nclistclearall from libnetcdf.so.

CC: @eschnett @bjarthur

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions