Category archives: Snaking

Discussions of programming, particularly of programming Python

RSS feed of Snaking

Oh, yes, the memory-leak safari continues... (Just in case anyone cares...)


Tracking down the memory leak is not going well. So far each time I think I've isolated a test case that produces a leak it eventually stabilises at some memory level after an hour or two of operation.

There's something funky going on that I'm thinking may be a reference loop that's requiring the cyclic ...

Continue reading

Doesn't look like it's in any condition to update to using v4 (PySNMP is hard enough to use with full releases...)


After a few attempts to get everything working with PySNMP v4a1, think I'm going to have to shelve that work and move back to PySNMP 3.x. Whatever fixes may have shown up, the amount of rewriting it's requiring is just too much to consider in the middle of trying to track down this memory leak. ...

Continue reading

Seem to have fallen behind in tracking PySNMP (Apparently there's a version 4 now...)


PySNMP (which is where I'm trying to track down the memory leak at the moment) appears to have a new version in development (in CVS). Really should have been paying attention to what changed before I hit "update" in the CVS module. Looks like some pretty serious refactoring.

Also appears to have a MIB parser ...

Continue reading

Need to put together a PyCon presentation proposal (or three) ("Functional embarrassment to exploding decorators, the creation myth of descriptors")


Also would be nice to have PyOpenGL-as-ctypes as a presentation, but that requires getting enough time to actually finish (heck, start) the project.

Maybe should do something for BasicProperty, PyTable and wxOO, just a quicky "save yourself some work" thing. Maybe build a wxPython UI for Cinemon just to be perverse :) .

Hmm, ...

Continue reading

Anyone know a decent tool for finding memory leaks? (Even being able to reliably and automatically determine *if* there's a leak would be good...)


Pinning down memory leaks in large-ish systems with large numbers of libraries is a bit of a pain. I wind up using the silly Windows task manager (yes, I'm still using Windows, despite having fixed Linux (sort-of) a while ago). Sure, I don't do this very often, but would be nice to have tools when ...

Continue reading

Memory leaks in TwistedSNMP (Tracking things down that shouldn't leak...)


Seems as though there's something leaking memory in TwistedSNMP (I've been tracking down Cinemon's leak). Doesn't appear to be particularly large, but with the number of queries Cinemon does, could be a contributor. Haven't yet figured out where the silly error is inside TwistedSNMP (more precisely, I've determined which test cases are leaking, I just ...

Continue reading

Words formed from serendipitous (Natasha's obsession...)


Natasha caught wind of Alan's wife's "serendipitous" words challenge. She's apparently up to 250 words... running the word-finder script, however, says that there's something like 1845 words in total (though that includes abbreviations and proper nouns)... hopefully it's not distracting her from writing the novel.

Still a leak... (Though much slower now)


Cinemon still has a leak somewhere. It's pretty large still, about 6MB/hr. That should exhaust system memory in about two weeks and cause a reboot :( . Much better than 19 hours, but nothing like acceptable (no leak is acceptable). Grr.

Next most likely culprit would be PySNMP's message cache, I suppose. After that, possibly ...

Continue reading

A new PyDispatcher release (Hopefully this fixes the memory leak in Cinemon..)


Found a memory leak in how Dispatcher deals with it's back-reference table. Basically it would allow you to replace a registratation of a receiver, but would not remove the replaced receiver's back-references. It also wasn't removing the back-reference when a signal was explicitly disconnected.

Both of those operations are fairly rare, but Cinemon does them ...

Continue reading

Thinking as I try to find the Cinemon leak... (Considerations as the test-suite trundles)


I think it's time to move PyOpenGL off of SWIG and on to ctypes. Rene did some preliminary work on this... well... it's a while ago now. The basic C-style API isn't that hard, it's replicating the Pythonic API that causes the problems. It's likely worth the pain just to reduce build problems, the flexibility ...

Continue reading