[web2py] Re: Rocket 1.2
On second look, this doesn't seem related to the new version. I rolled back with the same result. I will try to debug and let you know. On Dec 3, 4:02 pm, "mr.freeze" wrote: > I'm getting this in the console on Windows 7: > ERROR:Rocket.Errors.Thread-15:Traceback (most recent call last): > File "C:\web2py\gluon\rocket.py", line 989, in run > self.run_app(conn) > File "C:\web2py\gluon\rocket.py", line 1429, in run_app > self.write(data, sections) > File "C:\web2py\gluon\rocket.py", line 1357, in write > self.conn.sendall(data) > File "", line 1, in sendall > TypeError: sendall() argument 1 must be convertible to a buffer, not A > > On Dec 3, 3:28 pm, Jonathan Lundell wrote: > > > On Dec 3, 2010, at 1:24 PM, Fran wrote: > > > > On Dec 3, 7:39 pm, Jonathan Lundell wrote: > > >> A patch is on its way to Massimo. > > > > Works a treat :) > > > No need to touch options.py - phew :) > > > > Many thanks, > > > Glad to help. Sorry for the initial confusion, but I suppose that's why the > > trunk isn't "stable" > > > I'd update options.py eventually, if I were you. > >
[web2py] Re: Rocket 1.2
I'm getting this in the console on Windows 7: ERROR:Rocket.Errors.Thread-15:Traceback (most recent call last): File "C:\web2py\gluon\rocket.py", line 989, in run self.run_app(conn) File "C:\web2py\gluon\rocket.py", line 1429, in run_app self.write(data, sections) File "C:\web2py\gluon\rocket.py", line 1357, in write self.conn.sendall(data) File "", line 1, in sendall TypeError: sendall() argument 1 must be convertible to a buffer, not A On Dec 3, 3:28 pm, Jonathan Lundell wrote: > On Dec 3, 2010, at 1:24 PM, Fran wrote: > > > > > On Dec 3, 7:39 pm, Jonathan Lundell wrote: > >> A patch is on its way to Massimo. > > > Works a treat :) > > No need to touch options.py - phew :) > > > Many thanks, > > Glad to help. Sorry for the initial confusion, but I suppose that's why the > trunk isn't "stable" > > I'd update options.py eventually, if I were you.
Re: [web2py] Re: Rocket 1.2
On Dec 3, 2010, at 1:24 PM, Fran wrote: > > On Dec 3, 7:39 pm, Jonathan Lundell wrote: >> A patch is on its way to Massimo. > > Works a treat :) > No need to touch options.py - phew :) > > Many thanks, Glad to help. Sorry for the initial confusion, but I suppose that's why the trunk isn't "stable" I'd update options.py eventually, if I were you.
[web2py] Re: Rocket 1.2
On Dec 3, 7:39 pm, Jonathan Lundell wrote: > A patch is on its way to Massimo. Works a treat :) No need to touch options.py - phew :) Many thanks, Fran.
Re: [web2py] Re: Rocket 1.2
On Dec 3, 2010, at 11:32 AM, Jonathan Lundell wrote: > > On Dec 3, 2010, at 11:27 AM, Jonathan Lundell wrote: >> >> On Dec 3, 2010, at 11:20 AM, Fran wrote: >>> >>> On Dec 3, 6:20 pm, Jonathan Lundell wrote: I sent Massimo a patch that will retain backward compatibility. >>> >>> Thanks but not quite yet: >>> Traceback (most recent call last): >>> File "C:\Bin\web2py\gluon\winservice.py", line 46, in SvcDoRun >>> self.start() >>> File "C:\Bin\web2py\gluon\winservice.py", line 103, in start >>> if options.get('numthreads') is not None and >>> options.get('minthreads') is None: >>> AttributeError: 'module' object has no attribute 'get' >> >> Crap. OK, thanks; I'll take another look. If it's convenient, could you >> probe a little and tell me what exactly options is? I assumed it was a dict, >> but apparently not. > > Never mind, I figured it out. One more patch coming. A patch is on its way to Massimo. In the meantime, here's the relevant section of winservice.py if you want to try it out. Let me know. (If you define both minthreads and maxthreads in options.py, you can change "if True" to "if False" and avoid the legacy logic altogether, but please try it first as-is.) options = __import__(opt_mod, [], [], '') if True: # legacy support for old options files, which have only (deprecated) numthreads if hasattr(options, 'numthreads') and not hasattr(options, 'minthreads'): options.minthreads = options.numthreads if not hasattr(options, 'minthreads'): options.minthreads = None if not hasattr(options, 'maxthreads'): options.maxthreads = None import main self.server = main.HttpServer( ip=options.ip, port=options.port, password=options.password, pid_filename=options.pid_filename, log_filename=options.log_filename, profiler_filename=options.profiler_filename, ssl_certificate=options.ssl_certificate, ssl_private_key=options.ssl_private_key, min_threads=options.minthreads, max_threads=options.maxthreads, server_name=options.server_name, request_queue_size=options.request_queue_size, timeout=options.timeout, shutdown_timeout=options.shutdown_timeout, path=options.folder )
Re: [web2py] Re: Rocket 1.2
On Dec 3, 2010, at 11:27 AM, Jonathan Lundell wrote: > > On Dec 3, 2010, at 11:20 AM, Fran wrote: >> >> On Dec 3, 6:20 pm, Jonathan Lundell wrote: >>> I sent Massimo a patch that will retain backward compatibility. >> >> Thanks but not quite yet: >> Traceback (most recent call last): >> File "C:\Bin\web2py\gluon\winservice.py", line 46, in SvcDoRun >> self.start() >> File "C:\Bin\web2py\gluon\winservice.py", line 103, in start >> if options.get('numthreads') is not None and >> options.get('minthreads') is None: >> AttributeError: 'module' object has no attribute 'get' > > Crap. OK, thanks; I'll take another look. If it's convenient, could you probe > a little and tell me what exactly options is? I assumed it was a dict, but > apparently not. Never mind, I figured it out. One more patch coming.
Re: [web2py] Re: Rocket 1.2
On Dec 3, 2010, at 11:20 AM, Fran wrote: > > On Dec 3, 6:20 pm, Jonathan Lundell wrote: >> I sent Massimo a patch that will retain backward compatibility. > > Thanks but not quite yet: > Traceback (most recent call last): > File "C:\Bin\web2py\gluon\winservice.py", line 46, in SvcDoRun > self.start() > File "C:\Bin\web2py\gluon\winservice.py", line 103, in start > if options.get('numthreads') is not None and > options.get('minthreads') is None: > AttributeError: 'module' object has no attribute 'get' Crap. OK, thanks; I'll take another look. If it's convenient, could you probe a little and tell me what exactly options is? I assumed it was a dict, but apparently not.
[web2py] Re: Rocket 1.2
On Dec 3, 6:20 pm, Jonathan Lundell wrote: > I sent Massimo a patch that will retain backward compatibility. Thanks but not quite yet: Traceback (most recent call last): File "C:\Bin\web2py\gluon\winservice.py", line 46, in SvcDoRun self.start() File "C:\Bin\web2py\gluon\winservice.py", line 103, in start if options.get('numthreads') is not None and options.get('minthreads') is None: AttributeError: 'module' object has no attribute 'get' Best Wishes, Fran.
Re: [web2py] Re: Rocket 1.2
On Dec 3, 2010, at 9:32 AM, Fran wrote: > > On Dec 3, 6:17 am, Jonathan Lundell wrote: >> Rocket 1.2.0 (web2py's embedded web server) is now in the trunk. >> It have various improvements, which perhaps Tim will describe. There is one >> user-visible interface change that might affect some of you. In the previous >> version, Rocket's min_threads and max_threads were 10 and 1024 respectively. >> The cli (and winservice options) --numthreads option allowed the user to >> override min_threads. >> In the new version, the Rocket defaults are 10 and 0 (meaning no upper >> limit), and the cli options are --minthreads and --maxthreads (--numthreads >> is provided for compatibility, meaning the same as --minthreads, >but is >> deprecated). >> If you're running CPython, my impression is that you need to do nothing, and >> if you've been ignoring thread-count options, also do nothing. If you've >> been patching maxthreads, the new default of 0 may work fine for >you, and >> if not you now have command-line access to it. Tim suggests increasing >> minthreads to 64 for a production server. >> If you're running winservice, numthreads is now ignored; you must use >> minthreads and maxthreads (assuming that you want something other than the >> defaults). > > Sounds good...however my Windows service no longer starts as of this > version: > Traceback (most recent call last): > File "C:\Bin\web2py\gluon\winservice.py", line 46, in SvcDoRun >self.start() > File "C:\Bin\web2py\gluon\winservice.py", line 113, in start >min_threads=options.minthreads, > AttributeError: 'module' object has no attribute 'minthreads' > > My options.py has numthreads = 10 still (I see options_std.py still > just has numthreads not minthreads) but it's supposed to be backward- > compatible anyway. I sent Massimo a patch that will retain backward compatibility. However, users of winservice should add: minthreads = None maxthreads = None to their options.py. You can leave numthreads there for compatibility with older versions, but it can be deleted for the new version once that compatibility is unneeded.
Re: [web2py] Re: Rocket 1.2
On Dec 3, 2010, at 9:32 AM, Fran wrote: > > On Dec 3, 6:17 am, Jonathan Lundell wrote: >> Rocket 1.2.0 (web2py's embedded web server) is now in the trunk. >> It have various improvements, which perhaps Tim will describe. There is one >> user-visible interface change that might affect some of you. In the previous >> version, Rocket's min_threads and max_threads were 10 and 1024 respectively. >> The cli (and winservice options) --numthreads option allowed the user to >> override min_threads. >> In the new version, the Rocket defaults are 10 and 0 (meaning no upper >> limit), and the cli options are --minthreads and --maxthreads (--numthreads >> is provided for compatibility, meaning the same as --minthreads, >but is >> deprecated). >> If you're running CPython, my impression is that you need to do nothing, and >> if you've been ignoring thread-count options, also do nothing. If you've >> been patching maxthreads, the new default of 0 may work fine for >you, and >> if not you now have command-line access to it. Tim suggests increasing >> minthreads to 64 for a production server. >> If you're running winservice, numthreads is now ignored; you must use >> minthreads and maxthreads (assuming that you want something other than the >> defaults). > > Sounds good...however my Windows service no longer starts as of this > version: > Traceback (most recent call last): > File "C:\Bin\web2py\gluon\winservice.py", line 46, in SvcDoRun >self.start() > File "C:\Bin\web2py\gluon\winservice.py", line 113, in start >min_threads=options.minthreads, > AttributeError: 'module' object has no attribute 'minthreads' > > My options.py has numthreads = 10 still (I see options_std.py still > just has numthreads not minthreads) but it's supposed to be backward- > compatible anyway. > Python 2.6.6 > > Do I need to add --minthreads 10 to my registry (currently just has > 'web2py options') > > Meanwhile: > bzr revert -r 2688 I should have mentioned that I didn't test with winservice, and I now see that options_std.py needs to be updated, as well as any derived options.py. I'll send Massimo a patch to for winservice backwards compatibility, but in the meantime, add minthreads=None and maxthreads=None to options.py, and remove the numthreads line.
[web2py] Re: Rocket 1.2
On Dec 3, 6:17 am, Jonathan Lundell wrote: > Rocket 1.2.0 (web2py's embedded web server) is now in the trunk. > It have various improvements, which perhaps Tim will describe. There is one > user-visible interface change that might affect some of you. In the previous > version, Rocket's min_threads and max_threads were 10 and 1024 respectively. > The cli (and winservice options) --numthreads option allowed the user to > override min_threads. > In the new version, the Rocket defaults are 10 and 0 (meaning no upper > limit), and the cli options are --minthreads and --maxthreads (--numthreads > is provided for compatibility, meaning the same as --minthreads, >but is > deprecated). > If you're running CPython, my impression is that you need to do nothing, and > if you've been ignoring thread-count options, also do nothing. If you've been > patching maxthreads, the new default of 0 may work fine for >you, and if not > you now have command-line access to it. Tim suggests increasing minthreads to > 64 for a production server. > If you're running winservice, numthreads is now ignored; you must use > minthreads and maxthreads (assuming that you want something other than the > defaults). Sounds good...however my Windows service no longer starts as of this version: Traceback (most recent call last): File "C:\Bin\web2py\gluon\winservice.py", line 46, in SvcDoRun self.start() File "C:\Bin\web2py\gluon\winservice.py", line 113, in start min_threads=options.minthreads, AttributeError: 'module' object has no attribute 'minthreads' My options.py has numthreads = 10 still (I see options_std.py still just has numthreads not minthreads) but it's supposed to be backward- compatible anyway. Python 2.6.6 Do I need to add --minthreads 10 to my registry (currently just has 'web2py options') Meanwhile: bzr revert -r 2688 Many thanks, Fran.
[web2py] Re: Rocket 1.2
Thanks Jonathan! Yes, that's all correct. I forgot about uploading new documentation but there are no significant changes in the documentation. The thread count advice for Jython still holds. -tim On Dec 3, 12:17 am, Jonathan Lundell wrote: > Rocket 1.2.0 (web2py's embedded web server) is now in the trunk. > > It have various improvements, which perhaps Tim will describe. There is one > user-visible interface change that might affect some of you. In the previous > version, Rocket's min_threads and max_threads were 10 and 1024 respectively. > The cli (and winservice options) --numthreads option allowed the user to > override min_threads. > > In the new version, the Rocket defaults are 10 and 0 (meaning no upper > limit), and the cli options are --minthreads and --maxthreads (--numthreads > is provided for compatibility, meaning the same as --minthreads, but is > deprecated). > > If you're running CPython, my impression is that you need to do nothing, and > if you've been ignoring thread-count options, also do nothing. If you've been > patching maxthreads, the new default of 0 may work fine for you, and if not > you now have command-line access to it. Tim suggests increasing minthreads to > 64 for a production server. > > If you're running JPython, Tim has some thread-count advice for you > here:http://packages.python.org/rocket/usage.html(it's for 1.1.x, not 1.2, > but I assume that it still applies). > > If you're running winservice, numthreads is now ignored; you must use > minthreads and maxthreads (assuming that you want something other than the > defaults). > > Again, this is in the trunk, and unless the wheels fall off will be in the > next release *after* 1.89.5, which is current-stable.