librelist archives

« back to archive

Thrash Latest Fossil Please

Thrash Latest Fossil Please

From:
Zed A. Shaw
Date:
2010-10-08 @ 20:36
Hey Everyone,

I've rooted out the last bug I can find in the trunk and need some folks
to try out my thrashing script.  This bug was a problem with
registrations not being initialized right, so there would be mixing of
IO.  It had nothing to do with the IOBuf, just something I found while
thrashing the new IOBuf code.

How you can test this for me is this:

1. Grab the latest fossil trunk (fossil up).
2. Make it with: make clean dev && sudo make install
3. Run all of these things in separate windows:
   a. examples/http_0mq/upload.py
   b. examples/http_0mq/xml.py
   c. examples/chat/chat.py
   d. examples/chat/www.py  or fossil serve
4. Copy the examples/config/complex.conf to mongrel2.conf
5. Start up m2sh
   a. load
   b. start -every
6. Finally, run tests/system_tests/thrash.sh in as many different
windows as you can.

You can also hit http://localhost:6767/chatdemo/ and get that to load.
There's a weird thing where it sometimes doesn't load the jsSocket.swf
which I can't reproduce.  If you do let me know.

After that just thrash it and look for crashes.  curl will sometimes
report "empty response" but I haven't figured that out other than curl
is closing the socket too early.

It also probably has some memory leeks I'll remove soon so stay tuned
for those.

-- 
Zed A. Shaw
http://zedshaw.com/

Re: [mongrel2] Thrash Latest Fossil Please

From:
snacktime
Date:
2010-10-12 @ 00:00
On Fri, Oct 8, 2010 at 1:36 PM, Zed A. Shaw <zedshaw@zedshaw.com> wrote:
> Hey Everyone,
>
> I've rooted out the last bug I can find in the trunk and need some folks
> to try out my thrashing script.  This bug was a problem with
> registrations not being initialized right, so there would be mixing of
> IO.  It had nothing to do with the IOBuf, just something I found while
> thrashing the new IOBuf code.
>
> How you can test this for me is this:

I'll get around to these tests I promise...

I was just testing out the xml paths for the xml jsSocket stuff, and
I'm  pretty sure I'm passing the right data.  This is what I'm seeing
in the logs:

[ERROR] (src/connection.c:111: errno: Resource temporarily
unavailable) Handler not found: <chat

This what m2sh inserts into sqlite for my handlers:

DEBUG src/config/db.c:65: [SQL] INSERT INTO server (uuid, access_log,
error_log, pid_file, chroot, default_host, name, port) VALUES
('2f62bd5-9e59-49cd-993c-3b6013c28f05', '/logs/access.log',
'/logs/error.log', '/run/mongrel2.pid', './', 'mongrel2.org', 'main',
6767);
DEBUG src/config/db.c:65: [SQL] INSERT INTO host (server_id, name,
matching) VALUES (1, 'mongrel2.org', 'mongrel2.org');
DEBUG src/config/db.c:65: [SQL] INSERT INTO handler (send_spec,
send_ident, recv_spec, recv_ident) VALUES
('tcp://192.168.234.10:9999', '54c6755b-9628-40a4-9a2d-cc82a816345e',
'tcp://192.168.234.10:9998', '');
DEBUG src/config/db.c:65: [SQL] UPDATE handler SET raw_payload=1 WHERE
id=last_insert_rowid();
DEBUG src/config/db.c:65: [SQL] INSERT INTO route (path, host_id,
target_id, target_type) VALUES ('@chat', 1, 1, 'handler');
DEBUG src/config/db.c:65: [SQL] INSERT INTO route (path, host_id,
target_id, target_type) VALUES ('<chat/>', 1, 1, 'handler');

Re: [mongrel2] Thrash Latest Fossil Please

From:
Zed A. Shaw
Date:
2010-10-12 @ 00:33
On Mon, Oct 11, 2010 at 05:00:58PM -0700, snacktime wrote:
> On Fri, Oct 8, 2010 at 1:36 PM, Zed A. Shaw <zedshaw@zedshaw.com> wrote:
> > Hey Everyone,
> >
> > I've rooted out the last bug I can find in the trunk and need some folks
> > to try out my thrashing script.  This bug was a problem with
> > registrations not being initialized right, so there would be mixing of
> > IO.  It had nothing to do with the IOBuf, just something I found while
> > thrashing the new IOBuf code.
> >
> > How you can test this for me is this:
> 
> I'll get around to these tests I promise...
> 
> I was just testing out the xml paths for the xml jsSocket stuff, and
> I'm  pretty sure I'm passing the right data.  This is what I'm seeing
> in the logs:
> 
> [ERROR] (src/connection.c:111: errno: Resource temporarily
> unavailable) Handler not found: <chat
...
> target_id, target_type) VALUES ('<chat/>', 1, 1, 'handler');

Change the route to "<chat" and you're set.  I managed to normalize it
so that it just routes on the tag and you can use a full tag,
attributes, whatever.  How it does it is it just scans for everything
from the < and tag name until a /, space, or >.  So this is how it
translates:

<chat><msg>hi</msg> -> <chat
<chat/> -> <chat
<chat id="zed">hi</chat> -> <chat

Also fossil up since there was a bug in that.

-- 
Zed A. Shaw
http://zedshaw.com/