This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Hi Lynton, > I have found a problem associated with compression of variables. > The example I am attaching is apparent from running valgrind as > it reports the condition: > > "Conditional jump or move depends on uninitialised value(s)" > in routine fill_window (deflate.c:1442) > However, I suspect that the problem may be the cause of a segment core > dump in my full programme when using compiler optimisatiion. > > I attach a tar-zipped file of the test example. > This includes the netCDF output file and the screen output > from running valgrind > valgrind ./test >valgrind.out > > > I am using hdf5 version 1.8.10-patch1 > and netCDF version 4.2.1.1 with the patch described by JIRA ticket NCF=217 > // https://bugtracking.unidata.ucar.edu/browse/NCF-217 : > // for (dim = grp->dim; dim && dim->next; dim = dim->next) > // if (strcmp(dim->name, var->name) && !dim->dirty) > for (dim = grp->dim; dim ; dim = dim->next) > if (!strcmp(dim->name, var->name) && !dim->dirty) Sorry, but I can't seem to duplicate the problem. Using the same version of HDF5 (1.8.10-patch1) and the same patch applied to netCDF-4.2.1.1 built using that version of HDF5, the test works fine and valgrind shows no errors: C_test2$ make test gcc -g -I/machine/russ/installs/nc4211-patched/include -I/share/ed/local/spike/include -c -o test.o test.c gcc -g -I/machine/russ/installs/nc4211-patched/include -I/share/ed/local/spike/include -c -o ncCheck.o ncCheck.c gcc test.o ncCheck.o -L/machine/russ/installs/nc4211-patched/lib -lnetcdf -Wl,-rpath -Wl,/machine/russ/installs/nc4211-patched/lib -o test C_test2$ ./test C_test2$ valgrind ./test ==2964== Memcheck, a memory error detector ==2964== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al. ==2964== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info ==2964== Command: ./test ==2964== ==2964== ==2964== HEAP SUMMARY: ==2964== in use at exit: 541,960 bytes in 40 blocks ==2964== total heap usage: 2,969 allocs, 2,929 frees, 2,012,562 bytes allocated ==2964== ==2964== LEAK SUMMARY: ==2964== definitely lost: 0 bytes in 0 blocks ==2964== indirectly lost: 0 bytes in 0 blocks ==2964== possibly lost: 0 bytes in 0 blocks ==2964== still reachable: 541,960 bytes in 40 blocks ==2964== suppressed: 0 bytes in 0 blocks ==2964== Rerun with --leak-check=full to see details of leaked memory ==2964== ==2964== For counts of detected and suppressed errors, rerun with: -v ==2964== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 32149 from 5) C_test2$ valgrind --version valgrind-3.8.1 C_test2$ gcc --version gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4) --Russ Russ Rew UCAR Unidata Program address@hidden http://www.unidata.ucar.edu Ticket Details =================== Ticket ID: TLH-274520 Department: Support netCDF Priority: Normal Status: Closed