I have patched my ConnectionHandler.java to print a one liner for every
incoming and outgoing message.  This gives me a "big picture" printout
of what is going on.  Looking at this I see some things which look like
bugs.  For example:

Src:tcp/207.96.1.41:2399 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2400 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2401 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2402 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2403 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2404 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2405 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2406 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2407 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2408 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2409 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2410 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2411 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2412 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2413 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2414 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2415 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2416 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In
Src:tcp/207.96.1.41:2417 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In

These all came in over a period of about 10 seconds.

Here is what led up to this:

Src:tcp/216.254.66.23:1996 htl:3 depth:20 id:13a8750574694912 
type:InsertRequest In
Dst:tcp/130.215.228.33:19114 htl:2 depth:21 id:13a8750574694912 
type:InsertRequest Out
Dst:tcp/216.254.66.23:1996 htl:21 depth:0 id:13a8750574694912 
type:QueryRestarted Out
Src:tcp/130.215.228.33:19114 htl:22 depth:0 id:13a8750574694912 
type:QueryRestarted In
Src:tcp/130.215.228.33:3677 htl:21 depth:1 id:13a8750574694912 type:InsertReply 
In
Dst:tcp/207.96.1.41:19114 htl:1 depth:21 id:13a8750574694912 type:InsertRequest 
Out
Dst:tcp/216.254.66.23:1996 htl:20 depth:2 id:13a8750574694912 type:InsertReply 
Out
Src:tcp/130.215.228.33:19114 htl:22 depth:0 id:13a8750574694912 
type:QueryRestarted In
Src:tcp/130.215.228.33:19114 htl:22 depth:0 id:13a8750574694912 
type:InsertReply In
Dst:tcp/130.215.228.33:3677 htl:21 depth:1 id:13a8750574694912 type:InsertReply 
Out
Src:tcp/216.254.66.23:1996 htl:15 depth:7 id:13a8750574694912 type:InsertReply 
In
Dst:tcp/130.215.228.33:19114 htl:14 depth:8 id:13a8750574694912 
type:InsertReply Out
Src:tcp/130.215.228.33:3677 htl:13 depth:9 id:13a8750574694912 type:InsertReply 
In
Dst:tcp/216.254.66.23:1996 htl:12 depth:10 id:13a8750574694912 type:InsertReply 
Out
Src:tcp/216.254.66.23:1996 htl:20 depth:3 id:13a8750574694912 type:InsertReply 
In
Dst:tcp/130.215.228.33:3677 htl:19 depth:4 id:13a8750574694912 type:InsertReply 
Out
Src:tcp/130.215.228.33:19114 htl:18 depth:4 id:13a8750574694912 
type:InsertReply In
Dst:tcp/216.254.66.23:1996 htl:17 depth:5 id:13a8750574694912 type:InsertReply 
Out
Src:tcp/216.254.66.23:1996 htl:9 depth:13 id:13a8750574694912 type:InsertReply 
In 
Dst:tcp/130.215.228.33:19114 htl:8 depth:14 id:13a8750574694912 
type:InsertReply Out
Src:tcp/207.96.1.41:19114 htl:21 depth:0 id:13a8750574694912 type:TimedOut In
Dst:tcp/216.254.66.23:1996 htl:20 depth:1 id:13a8750574694912 type:TimedOut Out 
Src:tcp/207.96.1.41:2399 htl:21 depth:0 id:13a8750574694912 type:QueryRestarted 
In

I forwarded a request, timed out and sent a QueryRestarted.  But before
I could find another node to talk to, I received first a QueryRestarted
(which I ignored) and then an InsertReply from the node I had forwarded
to.  Still I went ahead and forwarded my InsertRequest to another node,
while honoring the InsertReply and sending it back to my requestor.

That does not seem correct already, but I have not tried to analyze
it further.

Another example, this one I can understand better:

Src:tcp/129.116.44.244:4865 htl:5 depth:25 id:1f6d7522f9041601 
type:InsertRequest In
Dst:tcp/198.11.16.81:19114 htl:4 depth:26 id:1f6d7522f9041601 
type:InsertRequest Out
Dst:tcp/129.116.44.244:4865 htl:26 depth:0 id:1f6d7522f9041601 
type:QueryRestarted Out
Src:tcp/140.239.65.102:-15633 htl:6 depth:23 id:1f6d7522f9041601 
type:InsertRequest In
Dst:tcp/140.239.65.102:19114 htl:3 depth:26 id:1f6d7522f9041601 
type:InsertRequest Out
Dst:tcp/140.239.65.102:-15633 htl:5 depth:0 id:1f6d7522f9041601 
type:RequestFailed Out
Dst:tcp/129.116.44.244:4865 htl:26 depth:0 id:1f6d7522f9041601 
type:QueryRestarted Out
Src:tcp/140.239.65.102:19114 htl:2 depth:0 id:1f6d7522f9041601 
type:RequestFailed In
Dst:tcp/208.35.70.25:19114 htl:2 depth:26 id:1f6d7522f9041601 
type:InsertRequest Out
Dst:tcp/216.121.191.70:800 htl:1 depth:26 id:1f6d7522f9041601 
type:InsertRequest Out
Dst:tcp/129.116.44.244:4865 htl:26 depth:0 id:1f6d7522f9041601 
type:QueryRestarted Out
Dst:tcp/129.116.44.244:4865 htl:26 depth:0 id:1f6d7522f9041601 type:InsertReply 
Out
Src:tcp/208.35.70.25:19114 htl:1 depth:0 id:1f6d7522f9041601 type:RequestFailed 
In
Dst:tcp/129.116.44.244:4865 htl:26 depth:0 id:1f6d7522f9041601 type:InsertReply 
Out
Src:tcp/129.116.44.244:4865 htl:25 depth:1 id:1f6d7522f9041601 type:InsertReply 
In
Dst:tcp/129.116.44.244:4865 htl:24 depth:2 id:1f6d7522f9041601 type:InsertReply 
Out
Src:tcp/129.116.44.244:4865 htl:23 depth:3 id:1f6d7522f9041601 type:InsertReply 
In
Dst:tcp/129.116.44.244:4865 htl:22 depth:4 id:1f6d7522f9041601 type:InsertReply 
Out
Src:tcp/129.116.44.244:4865 htl:21 depth:5 id:1f6d7522f9041601 type:InsertReply 
In
Dst:tcp/129.116.44.244:4865 htl:20 depth:6 id:1f6d7522f9041601 type:InsertReply 
Out
Src:tcp/129.116.44.244:4865 htl:19 depth:7 id:1f6d7522f9041601 type:InsertReply 
In
Dst:tcp/129.116.44.244:4865 htl:18 depth:8 id:1f6d7522f9041601 type:InsertReply 
Out

This went on until htl counted down to zero.

I think what happened here is that I sent two InsertReplies when I
should only have sent one.  The first happened when htl counted down to
zero on my attempts to send out InsertRequest (most nodes in the list
are broken now).  I sent another InsertReply apparently in response to
a RequestFailed, which I shouldn't have done sense I already sent one.

For some reason the original requesting node echoed it back to me.
This is probably happening in its Message:sendBack; I think the first
InsertReply changed the MessageMemory fields so that sendBack now sends
it back to me.  Then I send it back to him, and we dance until dark.

Hopefully this will suggest some bug fixes, or I can look at it some
more later...

Hal

_______________________________________________
Freenet-dev mailing list
Freenet-dev at lists.sourceforge.net
http://lists.sourceforge.net/mailman/listinfo/freenet-dev

Reply via email to