On 10/30/06, Fernando Perez <[EMAIL PROTECTED]> wrote:
On 10/23/06, Travis Oliphant <[EMAIL PROTECTED]> wrote:

> I've placed them in SVN (r3384):
>
> arraydescr_dealloc needs to do something like.
>
> if (self->fields == Py_None) {
>     print something
>     incref(self)
>     return;
> }

Here is some more info.  We left a long-running job over the weekend
with the prints you suggested.  Oddly, something happened at the OS
level which killed our SSH connection to that machine, but the above
numpy dealloc() warning never printed (we logged this).

What did happen is that the refcount you suggested we print:

sys.getrefcount (numpy.dtype('float'))

eventually seems to have wrapped around and gone negative.  I'm
attaching the log file with those print statements, the key point is
that this happens eventually:

PSVD Iteration  19
Ref count  1989827662
bar 444
PSVD Iteration  0
Ref count  2021353399
PSVD Iteration  1
Ref count  2143386207
PSVD Iteration  2
Ref count  -2001245193
PSVD Iteration  3
Ref count  -1915816437
PSVD Iteration  4
Ref count  -1902698473

That refcount is for dtype('float') as indicated above.  Is it not a
problem that this particular refcount goes negative?  Eventually it
may continue increasing and hit a zero, point at which I imagine that
the bad dealloc will occur.

Are refcounts stored in signed 32-bit ints? Why? I'd have naively
expected them to be stored in unsigned longs to avoid wraparound
problems, but maybe I'm completely missing the real problem here.

I suspect the real problem is that the refcount keeps going up. Even if it was unsigned it would eventually wrap to zero and with a bit of luck get garbage collected. So probably something isn't decrementing the refcount.

Chuck


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Numpy-discussion mailing list
Numpy-discussion@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/numpy-discussion

Reply via email to