You have saved my sanity - I thought it was me! If you're ever in London, beers are on me! Cheers, Phil -----Original Message----- From: Chris McDonough To: Mayers, Philip J; zope@zope.org Sent: 05/04/01 22:07 Subject: Re: [Zope] ZServer *still* dying - help? OK, I've been able to reproduce it. I have no idea of its cause however... but its definitely a Zope bug. We'll get on it. - C ----- Original Message ----- From: "Mayers, Philip J" <p.mayers@ic.ac.uk> To: "'Chris McDonough '" <chrism@digicool.com> Sent: Thursday, April 05, 2001 4:53 PM Subject: RE: [Zope] ZServer *still* dying - help?
Urk - ipchains error. Try it now.
Cheers, Phil
-----Original Message----- From: Chris McDonough To: Mayers, Philip J; zope@zope.org Sent: 05/04/01 20:59 Subject: Re: [Zope] ZServer *still* dying - help?
I can't seem to download the zexp... maybe an internet wind?
----- Original Message ----- From: "Mayers, Philip J" <p.mayers@ic.ac.uk> To: "'Chris McDonough'" <chrism@digicool.com>; <zope@zope.org> Sent: Thursday, April 05, 2001 3:27 PM Subject: RE: [Zope] ZServer *still* dying - help?
It seems to be very difficult to get a consistently failing test case, but easier with the DB adaptor. That said, how about this:
http://blacklotus.cc.ic.ac.uk/~pjm3/bug2.zexp
Seems to suffer from the same problem, and has *no* dependencies (doesn't need a database or any products). Simply import it, hammer the /HDB/showmachine_html url without a ?machineid=whatever, it seems ok, hammer it *with* the argument, it fails. You will probably need to use the floodget script I link earlier, unless you can press F5 *really* fast ;o)
Regards, Phil
+----------------------------------+ | Phil Mayers, Network Support | | Centre for Computing Services | | Imperial College | +----------------------------------+
-----Original Message----- From: Chris McDonough [mailto:chrism@digicool.com] Sent: 05 April 2001 19:50 To: Mayers, Philip J; Thomas B. Passin; zope@zope.org Subject: Re: [Zope] ZServer *still* dying - help?
Thank you very much for your work on packaging this up. But... I thought it happened without postgres and that it was a property of calling a DTML method from a python script with a lot of arguments?
A very simple example without postgres would be way better, even if it's just, "here's two methods, type them in, view one, and keep clicking refresh really fast". If it's a bug in Zope, and it's reproducible I'll try to fix it. If it's a bug in the postgres DA, I'd like to try, but I can't really spend much time on it. As well, the maintainer of the DA should be involved.
If you can't send something that doesn't involve the DA, I understand... but I won't be able to do much with it today.
Tks!
- C
----- Original Message ----- From: "Mayers, Philip J" <p.mayers@ic.ac.uk> To: "'Chris McDonough'" <chrism@digicool.com>; "Thomas B. Passin" <tpassin@mitretek.org>; <zope@zope.org> Sent: Thursday, April 05, 2001 2:40 PM Subject: RE: [Zope] ZServer *still* dying - help?
Ok, I've got a "fails reliably once every few (>15) request" still held over from the last person I sent it to - it *still* fails on Zope 2.3.1, I've got a zexp and the full instructions:
Ok, the zexp should be accessible from:
http://blacklotus.cc.ic.ac.uk/~pjm3/bug.zexp
You'll need Psycopg installed and a Postgresql server. I used psycopg-0.4.6.tar.gz, available from:
http://blacklotus.cc.ic.ac.uk/~pjm3/psycopg-0.4.6.tar.gz (note - same results with 0.5.1)
If you can't get a Postgresql server, let me know and you can point it at mine (I'll need to know the subnet(s) you'll be coming from). The following should create everything needed to repro the bug:
CREATE TABLE machine ( machineid text, owner text NOT NULL, ownerdept text NOT NULL, owneremail text NOT NULL, ownertel text, machinetype text, machineos text, machineserialno text, location text NOT NULL, comment text, updatedby text, updatedat timestamp, PRIMARY KEY (machineid) );
insert into machine (machineid, owner, ownerdept, owneremail, ownertel, machinetype, machineos, machineserialno, location, comment, updatedby, updatedat) values ('wildfire.net.ic.ac.uk', 'Phil Mayers', '410 Mech Eng', 'p.mayers@ic.ac.uk', '46973', 'PC NT / Linux', '410 Mech Eng', 'batch', now())
Import the ZEXP, then try getting:
http://zope.server:port/showmachine_html
Very quickly, possibly using the script I posted yesterday:
http://blacklotus.cc.ic.ac.uk/~pjm3/floodget.py
Usage: floodget.py server:port /url/file?argument1=value1 username password number_of_threads So: floodget.py server.com:8080 /showmachine_html username pass 100
I use either 100 or 1000 threads. All should be well. Now try:
http://zope.server:port/showmachine_html?machineid=wildfire.net.ic.ac.uk
I get failures and the child threads dying quickly with only 5-25
threads.
Regards, Phil
+----------------------------------+ | Phil Mayers, Network Support | | Centre for Computing Services | | Imperial College | +----------------------------------+
-----Original Message----- From: Chris McDonough [mailto:chrism@digicool.com] Sent: 05 April 2001 18:06 To: Chris McDonough; Thomas B. Passin; zope@zope.org Subject: Re: [Zope] ZServer *still* dying - help?
Wait, no I *didnt* write a unit test for this. Sorry! I wrote a
unit test
that sends lots of named parameters to a python script, not a dtml method...
If you can boil this down to an always-fails case we can fix it.
----- Original Message ----- From: "Chris McDonough" <chrism@digicool.com> To: "Thomas B. Passin" <tpassin@mitretek.org>; <zope@zope.org> Sent: Thursday, April 05, 2001 12:56 PM Subject: Re: [Zope] ZServer *still* dying - help?
It still shouldn't be crashing.
I wrote a unit test for this!! (testParam26 in the test suite) ;-) Wonder if it passes... it does. Darn.
What Zope version is this?
----- Original Message ----- From: "Thomas B. Passin" <tpassin@mitretek.org> To: <zope@zope.org> Sent: Thursday, April 05, 2001 12:49 PM Subject: Re: [Zope] ZServer *still* dying - help?
I don't know what's happening, but what about attaching the params to the REQUEST, then you don't have to send them separately. Of course, you'd have to rewrite show_html a bit, but it shouldn't take much doing.
Then you would write things like ... <dtml-call "REQUEST.set('param1',m.param1)"> ... print container.machine.show_html(context,REQUEST)
Or make the separate params into a single python list and pass the list:
params=[m.param1,m.param2,...] print container.machine.show_html(context,REQUEST,params)
Cheers,
Tom P
Mayers, Philip J asked -
What's happening - I have a PythonScript that does this:
m = container.machine.SQL_get(machineid=machineid)[0] print container.machine.show_html(context,REQUEST, param1=m.param1, param2=m.param2, param3=m.param3, param4=m.param4, param5=m.param5, param6=m.param6, param7=m.param7, param8=m.param8, param9=m.param9, param0=m.param0) return printed
show_html is a DTML document. When called at "high" speed
(2-3 times a
second) by URL traversal (i.e. GETing http://site.name/Zope/path/pythonscript?machineid=whatever) this causes either (in order of likelihood): ...
*But*, if I reduce the number of named parameters to the DTML method (when of course it doesn't render properly) then everything's OK. The current code dies if there are >8 named parameters. But it seems to vary. I thought that the parameters had to be records from an SQL query, but now I'm not so sure.
_______________________________________________ Zope maillist - Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )
_______________________________________________ Zope maillist - Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )
_______________________________________________ Zope maillist - Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )
_______________________________________________ Zope maillist - Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )