We have been using python embedded via the C API and have used Twisted for various things.&nbsp; We have come across some strange behavior and I cannot figure out what is going on.<br><br><br>from twisted.internet import reactor<br>
from twisted.web.client import downloadPage<br><br>...<br><br>def fetchRepo():<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; global gameType, gameName, setupComplete, cp<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (setupComplete):<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; url = urlbase + &quot;/&quot; + gameType + &quot;/&quot; + gameName + &quot;/repo.ini&quot;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print &quot;url is : &quot; + url<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; d = downloadPage(url, &quot;C:\\svntest\\gamerepo.ini&quot;)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; d.addCallback(downloadSuccess)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; d.addErrback(downloadFailure)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #cp.readfp(open(&quot;C:\\game-repo.ini&quot;))<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print &quot;urls not setup, throw errors etc.&quot;<br>...<br><br>This is an example of how we have been using downloadPage from twisted.web.client.&nbsp; I have no problems getting the example to work when I make a simple app or write the code into the intrepeter.&nbsp; But if I use it inside my app I get the user timeout below.<br>
<br>Unhandled error in Deferred:<br>Traceback (most recent call last):<br>Failure: twisted.internet.error.TimeoutError: User timeout caused connection failure.<br><br><br>Am I forgetting something trivial?&nbsp; The reactor is running as we use PB for database pooling.&nbsp; Can I not call downloadPage after a reactor is setup and connected?<br>
<br>James<br><br>