<br><br><div class="gmail_quote">On Thu, Dec 27, 2012 at 2:23 PM, Jason J. W. Williams <span dir="ltr">&lt;<a href="mailto:jasonjwwilliams@gmail.com" target="_blank">jasonjwwilliams@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
We have an application that uses Twisted Web to listen for an API call and when it receives it, the app then connects over SMTP to the specified mail server IP and validates whether the indicated user exists. The app has been running without issue or modification for close to 2 years (uses Twisted 10.2.0). Then suddenly last night it started being unable to find the starttls() method on the Connection object when negotiating with any mail server:<div>

<br></div><div><a href="https://gist.github.com/4391179" target="_blank">https://gist.github.com/4391179</a></div><div><br></div><div>We were able to replicate the problem consistently, and determine it was not a network issue. The weird part is that simply restarting the application cleared the issue and TLS SMTP connections were able to be made again. Since the Twisted modules were loaded at startup, I&#39;m a little confused on how it suddenly decided  the TLS methods were missing until we restarted.</div>

<div></div></blockquote><div><br><br>Do you have any code that runs reload(), or twisted.python.rebuild, or maybe did that manually in a Manhole session? Given how tcp.py is written that&#39;s the only thing I can think of, at least.<br>
<br>Or maybe it&#39;s cosmic rays (got ECC RAM?)/hardware problems/memory corruption. I&#39;ve seen some utterly impossible Python tracebacks that had to have been something like these catchalls, which isn&#39;t very satisfying an answer.<br>
</div></div><br clear="all"><br>-- <br>Itamar Turner-Trauring, Future Foundries LLC<br><a href="http://futurefoundries.com/" target="_blank">http://futurefoundries.com/</a> — Twisted consulting, training and support.<br>