[Thread Prev][Thread Next][Index]

Re: [ferret_users] : pyferret 7.2 segmentation fault when a second variable is displayed

Hi Martin,

Thank you for the report.  PyFerret users should wait to upgrade PyFerret until I complete a new release; there will be another update to Ferret and PyFerret later this week.  I am not sure at this point if it will make any difference for Ferret user's experience.

When (attempting to) compile and run the Mac version of PyFerret I ran into a number of issues, including an issue similar to that you show.  It was at this time I realized there was still a mix of C-allocated memory and Python-allocated memory (although I though Python.h had aliases so the C memory management statements would actually use Python memory management).  Once I got everything moved to Python memory management everything worked fine.  (I just ran your test and it was successful.)  I had not seen any issue on RedHat systems, but since Mac is now a Unix-type system, it does not surprise me you are seeing this on other Linux systems.

Since you are building your own PyFerret, I have checked in updates on GitHub 
If you are so inclined, you might try rebuilding from that code and seeing if you still have the problem.  I have been working (through the weekend) on revising code in Ferret (and PyFerret) so: (1) hopefully more C memory management statements will not appear in the future in PyFerret, and (2) we can do a thorough check of memory management to ensure everything appears as expected.  So there will be further updates, but hopefully it will be insignificant for the end-user's experience.


On Mon, Jul 17, 2017 at 1:56 AM, Martin Schmidt <martin.schmidt@xxxxxxxxxxxxxxxxx> wrote:

my new version of pyferret ends with an segmentation fault, when I am trying to display more than one variable.

See the example below. I have compiled pyferret by myself, so there may be, perhaps, some error in my installation of python, but the same python behaves well with earlier pyferret versions. The same error occurs with two different builds on different system version (openSuse 13.2 and SLES_11).

Below is an example with hycom data. Other data sets produce the same error. Does anyone else experience the same?



mschmidt@phy-59:~> ferret

        PyFerret v7.2 (optimized)
        Linux 3.16.7-53-default - 07/15/17
        17-Jul-17 10:32

yes? use http://tds.hycom.org/thredds/dodsC/GLBu0.08/expt_91.2/ts3z
yes? sh data
     currently SET data sets:
    1> http://tds.hycom.org/thredds/dodsC/GLBu0.08/expt_91.2/ts3z (default)
 name     title                             I         J K         L
 TAU      Tau                              ...       ... ...       1:437
          Water Temperature                1:4500    1:2001 1:40      1:437
 SALINITY Salinity                         1:4500    1:2001 1:40      1:437

yes? shade/x=0/l=100 WATER_TEMP
yes? shade/x=0/l=100 SALINITY
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/sw/viz/ferret/py_ferret_v720_os132_py_27/lib/python2.7/site-packages/pyferret/__init__.py", line 538, in init
    result = run()
  File "/sw/viz/ferret/py_ferret_v720_os132_py_27/lib/python2.7/site-packages/pyferret/__init__.py", line 710, in run
    retval = libpyferret._run(str_command)

**ERROR Ferret crash; signal = 11 (SIGSEGV)
Enter Ctrl-D to exit Python

Dr. Martin Schmidt
Leibniz-Institute for Baltic Sea Research
Seestrasse 15
D18119 Rostock

Karl M. Smith, Ph.D.
JISAO Univ. Wash. and PMEL NOAA
"The contents of this message are mine personally and do
not necessarily reflect any position of the Government
or the National Oceanic and Atmospheric Administration."

[Thread Prev][Thread Next][Index]
Contact Us
Dept of Commerce / NOAA / OAR / PMEL / Ferret

Privacy Policy | Disclaimer | Accessibility Statement