Intermittent Matplotlib crash on OS X

Anand Patil wrote:

Matplotlib occasionally crashes Python at the end of a long program on my powerbook g4 running OS X 10.4. gdb output follows:

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x0a68fe40
0x002eae50 in visit_decref (op=0x28a1cb0, data=0x0) at /Users/ronald/Python/r25/Modules/gcmodule.c:270
270 /Users/ronald/Python/r25/Modules/gcmodule.c: No such file or directory.
      in /Users/ronald/Python/r25/Modules/gcmodule.c

or

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000056
0x002eae50 in visit_decref (op=0x28a17e0, data=0x0) at /Users/ronald/Python/r25/Modules/gcmodule.c:270
270 in /Users/ronald/Python/r25/Modules/gcmodule.c

It's always something like that, and it always happens after the little Python icon starts bouncing around in the dock. I don't know anyone named Ronald and no such directory exists on my machine.
  

What version of matplotlib, what version of Python and where did you them from from (build from source, some binary installer, fink...?)

-- Russell

It's Python 2.5, and the new Matplotlib 0.9 built from source. I saw the same problem with Python 2.4.3 and Matplotlib 0.8.(can't remember), which was part of the reason I upgraded. However, I didn't look at the problem with gdb using the earlier versions.
   
This still sounds like a problem in which some component was built with a different version of another component than the one you are actually running. Are you sure you have only the one version of mpl and one version of python, so that the former was compiled against the latter? And the same for numpy or Numeric or numarray?

Totally sure, I erased my old site-packages directory and started over. I'm using the latest release of numpy.

You might want to look back through the mailing list archive; there has been a lot of discussion recently about how to get a working combination of numpy and mpl on a Mac.

Will do.

Come to think of it, could this be a problem with Python itself? gcmodule.c sounds like the garbage collector.

Thanks,
Anand

Anand Patil wrote:

Anand Patil wrote:

Matplotlib occasionally crashes Python at the end of a long program on my powerbook g4 running OS X 10.4. gdb output follows:

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x0a68fe40
0x002eae50 in visit_decref (op=0x28a1cb0, data=0x0) at /Users/ronald/Python/r25/Modules/gcmodule.c:270
270 /Users/ronald/Python/r25/Modules/gcmodule.c: No such file or directory.
      in /Users/ronald/Python/r25/Modules/gcmodule.c

or

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000056
0x002eae50 in visit_decref (op=0x28a17e0, data=0x0) at /Users/ronald/Python/r25/Modules/gcmodule.c:270
270 in /Users/ronald/Python/r25/Modules/gcmodule.c

It's always something like that, and it always happens after the little Python icon starts bouncing around in the dock. I don't know anyone named Ronald and no such directory exists on my machine.
  

What version of matplotlib, what version of Python and where did you them from from (build from source, some binary installer, fink...?)

-- Russell

It's Python 2.5, and the new Matplotlib 0.9 built from source. I saw the same problem with Python 2.4.3 and Matplotlib 0.8.(can't remember), which was part of the reason I upgraded. However, I didn't look at the problem with gdb using the earlier versions.
   

This still sounds like a problem in which some component was built with a different version of another component than the one you are actually running. Are you sure you have only the one version of mpl and one version of python, so that the former was compiled against the latter? And the same for numpy or Numeric or numarray?

Totally sure, I erased my old site-packages directory and started over. I'm using the latest release of numpy.

You might want to look back through the mailing list archive; there has been a lot of discussion recently about how to get a working combination of numpy and mpl on a Mac.

Will do.

Come to think of it, could this be a problem with Python itself? gcmodule.c sounds like the garbage collector.

Yes, but my guess is that gdb is pointing to a problem with garbage collection that is caused by an error or version mismatch elsewhere, most likely in extension code, not in Python itself.

Eric

···

Thanks,
Anand