On Saturday 29 March 2003 06:51 pm, Ian Bicking wrote:
[snip]
> > My webkit console log says:
> >
> > Traceback (most recent call last):
> >   File "./WebKit/ThreadedAppServer.py", line 749, in run
> >     server.mainloop()
> >   File "./WebKit/ThreadedAppServer.py", line 188, in mainloop
> >     handler = self._handlerCache[serverAddress].pop()
> > KeyError: ('127.0.0.1', 14464)
> >
> >
> > I don't know why, but it's almost certainly caused by new code. Let
> > me know what you think.
>
> What's on port 14464?  Apparently it's getting a connection on that
> port, but hasn't set any handler up for it...

In a nutshell: We can't use large port numbers for the WebKit app server 
anymore.

The details:
I did a little more snooping and found out that the nightly build broke 
after the 19th which is significant because that's when 
ThreadedAppServer.py got revamped by NewTheadedAppServer:

Revision 1.64 / Wed Mar 19 11:37:28 2003 UTC (11 days, 12 hours ago) by 
ianbicking
Branch: MAIN
Changes since 1.63: +245 -339 lines
Diff to previous 1.63


On a hunch, I changed the port from its original value of 80000 to 9999 
and now it works. I then reversed the situation: I installed fresh 
copies of Apache and WebwareCVS, got them working, then pumped up the 
port # to 70001 and got this:

KeyError: ('127.0.0.1', 4465)

Looks like a classic case of 16bit vs 32bit. I thought those days were 
over!  :)

The python prompt says that "70001 & 0xFFFF" = 4465 which confirms my 
suspicion. Looking at the diffs, I can't really see where the 
limitation is coming from. We should either get rid of it, or catch bad 
port numbers in Python and report them as such.

Here are the diffs:
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/webware/Webware/WebKit/ThreadedAppServer.py.diff?r1=text&tr1=1.63&r2=text&tr2=1.64&diff_format=h

Any thoughts on what introduced this?


Another problem is that when I click on the Error example, I get this 
traceback:
Traceback (most recent call last):
  File "./WebKit/ThreadedAppServer.py", line 359, in threadloop
    handler.handleRequest()
  File "./WebKit/ThreadedAppServer.py", line 658, in handleRequest
    transaction = self._server._app.dispatchRawRequest(dict, streamOut)
  File "./WebKit/Application.py", line 435, in dispatchRawRequest
    self.handleExceptionInTransaction(sys.exc_info(), trans)
  File "./WebKit/Application.py", line 630, in 
handleExceptionInTransaction
    self._exceptionHandler(self, transaction, excInfo,
AttributeError: Application instance has no attribute 
'_exceptionHandler'

I don't know for sure that this broke from the NewThreadedAppServer. I 
just noticed it.

-- 
Chuck
http://ChuckEsterbrook.com



-------------------------------------------------------
This SF.net email is sponsored by:
The Definitive IT and Networking Event. Be There!
NetWorld+Interop Las Vegas 2003 -- Register today!
http://ads.sourceforge.net/cgi-bin/redirect.pl?keyn0001en
_______________________________________________
Webware-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/webware-devel

Reply via email to