Stephen R. van den Berg wrote:
Not consistently, but once every 10 tries or so, I get the following backtrace which does not seem to originate in my own code:
Might it be triggered by an HTTP keep-alive session terminating?
My normal program logic works fine, so all API-sessions I have with Google seem to work within limits. It mostly clutters the logs and undoubtedly is the cause of some spurious network traffic nobody asked for.
I suspect that the SSL.Buffer created on line ~1057 of Connection.pike for some reason hasn't been destructed. The most likely cause for this is probably that it is stuck as an argument in a backtrace for the call of handle_handshake() a few lines further down.
Try running your test case with -DSSL3_DEBUG and see if you can trigger the issue and if you get messages about handshaking errors before.
You can also try adding an inherit of Builtin.DestructImmediate (this class ought to be moved to Pike.DestructImmediate) to SSL.Buffer, and see if this solves the issue.
/grubba