MacOS X backend possible leak

Paris (U.E.), le 28/01/2011

  Bonsoir

    I am trying to code a specialized data visualization technique (quite old and mostly forgotten), which I will release under the Python Software License. I want to customize the navigation bar read-out so as to give more relevant information than cartesian coordinates. I am not quite there yet, and may be missing a few things, but I have run into a problem.

    If I try to output a specific string to the navigation bar, using

      fig.canvas.toolbar.set_message("Toto")

then sure enough the correct message appears in the right place. However, using the MacOS X backend, I get the leak message reproduced at the end of this message. I would much prefer to code in a backend-agnostic manner. Could someone please point me in the right direction?

  Merci

      Hubert Holin

8>< =========================================== ><8
2011-01-27 15:22:27.892 Python[747:10b] *** _NSAutoreleaseNoPool(): Object 0x10ad544c0 of class NSCFString autoreleased with no pool in place - just leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x103193750 0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.895 Python[747:10b] *** _NSAutoreleaseNoPool(): Object 0x10ad89aa0 of class NSSelectionArray autoreleased with no pool in place - just leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff81618b2c 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.897 Python[747:10b] *** _NSAutoreleaseNoPool(): Object 0x10ad70ad0 of class NSSelectionArray autoreleased with no pool in place - just leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff8161a1e0 0x7fff81618e64 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.899 Python[747:10b] *** _NSAutoreleaseNoPool(): Object 0x1025f9350 of class NSSelectionArray autoreleased with no pool in place - just leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff8161ad88 0x7fff816192f4 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.901 Python[747:10b] *** _NSAutoreleaseNoPool(): Object 0x10ad6d480 of class NSAttributeDictionaryEnumerator autoreleased with no pool in place - just leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff83041f08 0x7fff83042100 0x7fff83044bf0 0x7fff830449a8 0x7fff81619a58 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.903 Python[747:10b] *** _NSAutoreleaseNoPool(): Object 0x10ad8a8f0 of class NSCFDictionary autoreleased with no pool in place - just leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff81619a58 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.905 Python[747:10b] *** _NSAutoreleaseNoPool(): Object 0x1025f96f0 of class NSCFDictionary autoreleased with no pool in place - just leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff815f8f44 0x7fff815f8cec 0x7fff81619d40 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.912 Python[747:10b] *** _NSAutoreleaseNoPool(): Object 0x10ad8ab20 of class NSConcreteValue autoreleased with no pool in place - just leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff82c207e8 0x7fff8161a028 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.914 Python[747:10b] *** _NSAutoreleaseNoPool(): Object 0x10ad8ac60 of class NSCFDictionary autoreleased with no pool in place - just leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff83045098 0x7fff8161a05c 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60 0x100133654 0x100000f54 0x300000000)

Hi Hubert,

I just uploaded a fix for this bug to the matplotlib trunk svn repository (see revision 8936). If you reinstall matplotlib from trunk, the bug should disappear.

Best,
--Michiel.

···

--- On Thu, 1/27/11, Hubert Holin <Hubert.Holin@...207...> wrote:

From: Hubert Holin <Hubert.Holin@...207...>
Subject: [matplotlib-devel] MacOS X backend possible leak
To: matplotlib-devel@lists.sourceforge.net
Date: Thursday, January 27, 2011, 7:23 PM
Paris (U.E.), le 28/01/2011

Bonsoir

    I am trying to code a

specialized data visualization technique (quite old and
mostly forgotten), which I will release under the Python
Software License. I want to customize the navigation bar
read-out so as to give more relevant information than
cartesian coordinates. I am not quite there yet, and may be
missing a few things, but I have run into a problem.

    If I try to output a

specific string to the navigation bar, using

fig.canvas.toolbar.set_message("Toto")

then sure enough the correct message appears in the right
place. However, using the MacOS X backend, I get the leak
message reproduced at the end of this message. I would much
prefer to code in a backend-agnostic manner. Could someone
please point me in the right direction?

Merci

Hubert Holin

8>< ===========================================
><8
2011-01-27 15:22:27.892 Python[747:10b] ***
_NSAutoreleaseNoPool(): Object 0x10ad544c0 of class
NSCFString autoreleased with no pool in place - just
leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x103193750
0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0
0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840
0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098
0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098
0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc
0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.895 Python[747:10b] ***
_NSAutoreleaseNoPool(): Object 0x10ad89aa0 of class
NSSelectionArray autoreleased with no pool in place - just
leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff81618b2c
0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598
0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78
0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840
0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300
0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc
0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840
0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60
0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.897 Python[747:10b] ***
_NSAutoreleaseNoPool(): Object 0x10ad70ad0 of class
NSSelectionArray autoreleased with no pool in place - just
leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff8161a1e0
0x7fff81618e64 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8
0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770
0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0
0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840
0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098
0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098
0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc
0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.899 Python[747:10b] ***
_NSAutoreleaseNoPool(): Object 0x1025f9350 of class
NSSelectionArray autoreleased with no pool in place - just
leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff8161ad88
0x7fff816192f4 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8
0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770
0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0
0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840
0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098
0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098
0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc
0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.901 Python[747:10b] ***
_NSAutoreleaseNoPool(): Object 0x10ad6d480 of class
NSAttributeDictionaryEnumerator autoreleased with no pool in
place - just leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff83041f08
0x7fff83042100 0x7fff83044bf0 0x7fff830449a8 0x7fff81619a58
0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598
0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78
0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840
0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300
0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc
0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840
0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60
0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.903 Python[747:10b] ***
_NSAutoreleaseNoPool(): Object 0x10ad8a8f0 of class
NSCFDictionary autoreleased with no pool in place - just
leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff81619a58
0x7fff81618abc 0x7fff815499b4 0x7fff815496b8 0x7fff81632598
0x7fff8152a814 0x7fff8152a2d8 0x103193770 0x10000dd78
0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0 0x1000ed840
0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840 0x1000e8300
0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000eaffc
0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840
0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc 0x100118d60
0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.905 Python[747:10b] ***
_NSAutoreleaseNoPool(): Object 0x1025f96f0 of class
NSCFDictionary autoreleased with no pool in place - just
leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff815f8f44
0x7fff815f8cec 0x7fff81619d40 0x7fff81618abc 0x7fff815499b4
0x7fff815496b8 0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8
0x103193770 0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78
0x1000eb2f0 0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc
0x1000ed840 0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840
0x1000eb098 0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840
0x1000eb098 0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950
0x1001188bc 0x100118d60 0x100133654 0x100000f54
0x300000000)
2011-01-27 15:22:27.912 Python[747:10b] ***
_NSAutoreleaseNoPool(): Object 0x10ad8ab20 of class
NSConcreteValue autoreleased with no pool in place - just
leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff82c207e8
0x7fff8161a028 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8
0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770
0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0
0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840
0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098
0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098
0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc
0x100118d60 0x100133654 0x100000f54 0x300000000)
2011-01-27 15:22:27.914 Python[747:10b] ***
_NSAutoreleaseNoPool(): Object 0x10ad8ac60 of class
NSCFDictionary autoreleased with no pool in place - just
leaking
Stack: (0x7fff82cc8d24 0x7fff82ba348c 0x7fff83045098
0x7fff8161a05c 0x7fff81618abc 0x7fff815499b4 0x7fff815496b8
0x7fff81632598 0x7fff8152a814 0x7fff8152a2d8 0x103193770
0x10000dd78 0x1000e4910 0x100033df0 0x10000dd78 0x1000eb2f0
0x1000ed840 0x1000eb098 0x1000eaffc 0x1000eaffc 0x1000ed840
0x1000e8300 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098
0x1000eaffc 0x1000ed840 0x1000eb098 0x1000ed840 0x1000eb098
0x1000ed840 0x1000eb098 0x1000ed840 0x1000ed950 0x1001188bc
0x100118d60 0x100133654 0x100000f54 0x300000000)

------------------------------------------------------------------------------
Special Offer-- Download ArcSight Logger for FREE (a $49
USD value)!
Finally, a world-class log management solution at an even
better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer
expires
February 28th, so secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsight-sfd2d
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
matplotlib-devel List Signup and Options