If BEGIN is not called for each request then how the come END is?
I mean going by the logic that the BEGIN is only executed once when the script is loaded into memory, I would assume that the END is also only executed once when it leaves memory
i.e the interpreter ends not the request.
that'll teach me to assume eh.
regarding your problem I think you are probably right perls own garbage collection will hopefully save you the bother.
This was annoying me, so google yielded this understanding mod_perl environments