RE: Persistent connections and TCP RST issue

Here are some traces.... Hoping it helps

 

I see that state goes to HT_CLOSED and then HTTP_RECOVER_PIPE.

 

In the function HTHost_recoverPipe(host) in CASE HTTP_RECOVER_PIPE

It unregisters the events.

 

Finally it fails as there are no more events unregistered on that socket
calling end to eventloop

 

I even tried setting the state for CASE HT_CLOSED from HTTP_RECOVER_PIPE
to HTTP_KILL_PIPE

 

But still exit the evnt loop

 

 

raj

 

 

Request..... Created 0x81163380

sendHTRequest..... issuing REQUEST with method 0

HTAccess.... Accessing document http://135.8.63.60:8080/bush.jpg

Net Before.. calling 0x81807ce0 (request 0x81163380, context 0x0)

Net Before.. calling 0x81808694 (request 0x81163380, context 0x0)

URL Tree.... did NOT find `w3c-AA'

Credentials. verified

Net Before.. calling 0x818134ec (request 0x81163380, context 0x0)

URL Tree.... did NOT find `w3c-pep'

Net Before.. calling 0x81807b50 (request 0x81163380, context 0x0)

Net Object.. 0x81173a60 created with hash 4

Net Object.. starting request 0x81163380 (retry=1) with net object
0x81173a60

HTTP........ Looking for `http://135.8.63.60:8080/bush.jpg'

HTHost parse Looking up `135.8.63.60' on port 8080

Host info... REUSING CHANNEL 0x8117e0f0

Host info... Added Net 0x81173a60 (request 0x81163380) to pipe on Host
0x81171530, 2 requests made, 1 requests

 in pipe, 0 pending

Timer....... Deleted active timer 0x81172800

HTHost...... No ActivateRequest callback handler registered

Channel..... Semaphore increased to 1 for channel 0x8117e0f0

Host connect Unlocking Host 0x81171530

StreamStack. Constructing stream stack for text/x-http to www/present

Tee......... Created stream 0x81171690 with resolver 0x81819ff0

HTTP........ Dumping response to `w3chttp.out'

Tee......... Created stream 0x81171080 with resolver 0x81819ff0

HTTP........ Dumping request to `w3chttp.out'

HTTP........ Generating HTTP/1.x Request Headers

HTTP........ Generating General Headers

Buffer...... Flushing 0x81189d90

Write Socket 229 bytes written to 22

Alert Call.. No entry found for opcode 16

|HTReader_read| Socket Closed

Read Socket. FIN received on socket 22

|HTHost_register| Unregister for READ and WRITE

Timer....... Deleted active timer 0x81163210

Event....... No more events registered for socket 22

Event....... Reset MaxSock from 22 to 21

Event....... Socket 22 unregistered for HTEvent_READ

Event....... Couldn't find socket 22. Can't unregister type
HTEvent_WRITE

|HTTPEvent| Going HT_CLOSED

HTTPEvent... state=HTTP_RECOVER_PIPE

|HTTPEvent| We are in persistant connection mode

|HTRequest_setFlush|

|HTHost_recoverPipe|

Host recover 0x81171530 recovered 1 times. Moving 1 Net objects from
pipe line to pending queue

Event....... Couldn't find socket 22. Can't unregister type HTEvent_READ

Event....... Couldn't find socket 22. Can't unregister type
HTEvent_WRITE

Host recover Resetting net object 0x81173a60

HTTP Clean.. Called with status -904, net 0x81173a60

HTTPGen..... ABORTING...

HTTPRequest. ABORTING...

Buffer...... ABORTING...

FileWriter.. ABORTING...

Channel..... Semaphore set to 0 for channel 0x8117e0f0

Event....... Couldn't find socket 22. Can't unregister type HTEvent_READ

Event....... Couldn't find socket 22. Can't unregister type
HTEvent_WRITE

Channel..... Delete 0x8117e0f0 with semaphore 0, status -902

Channel..... Delete input stream 0x8114cfb0 from channel 0x8117e0f0

Channel..... status==HT_INTERRUPTED || status==HT_TIMEOUT

Channel..... After HTChannel_deleteInput

Channel..... Delete input (output) stream 0x8114cfb0 from channel
0x8117e0f0

Channel..... status==HT_INTERRUPTED || status==HT_TIMEOUT

Buffer...... ABORTING...

Socket read. FREEING....

Socket write FREEING....

Net Manager. Decreasing active sockets to 1, 2 persistent sockets

Channel..... Deleted 0x8117e0f0, socket 22

Net Manager. 1 active sockets, decreasing persistent sockets to 1

Host info... removed host 0x81171530 as persistent

Host has 1 object(s) pending - attempting launch

Host info... Popping 0x81173a60 from pending net queue on host
0x81171530

HTHost...... No ActivateRequest callback handler registered

Launch pending net object 0x81173a60 with 0 reqs in pipe (0 reqs made)

Net Object.. 0x81173a60 calling 0x818167b0 with event type 65544 and
context 0x811716d0

Host info... Added Net 0x81173a60 (request 0x81163380) to pipe on Host
0x81171530, 1 requests made, 1 requests

 in pipe, 0 pending

HTHost...... No ActivateRequest callback handler registered

HTHost 0x81171530 going to state TCP_CHANNEL.

HTHost 0x81171530 going to state TCP_DNS.

ParseInet... as port 8080 on 135.8.63.60 with 1 homes

HTHost 0x81171530 going to state TCP_NEED_SOCKET.

Socket...... Created 22

Net Manager. Increasing active sockets to 2, 1 persistent sockets

Socket...... Blocking socket

Channel..... Hash value is 22

Channel..... Added 0x81189d90 to list 0x81187950

Reader...... Created reader stream 0x8114cfb0

Alert Call.. No entry found for opcode 2

HTHost 0x81171530 going to state TCP_NEED_CONNECT.

HTDoConnect. WOULD BLOCK `135.8.63.60'

Event....... Register socket 22, request 0x81163380 handler 0x817e180c
type HTEvent_CONNECT at priority 20

Event....... Registering socket for HTEvent_CONNECT

Event....... New value for MaxSock is 22

Timer....... Created repetitive timer 0x81163250 with callback
0x81804dbc, context 0x81163280, and relative ti

meout 30000

HTTPEvent... HTTP_RECOVER_PIPE: persistant+close

Event Loop.. returned from rcvEvntCtrl

EventOrder.. no event found for socket 22, type HTEvent_READ.

|HTEventList_loop| Going to STOP LOOP

 

 

 

 

 

 

Raj Sinha |

  _____  

From: www-lib-request@w3.org [mailto:www-lib-request@w3.org] On Behalf
Of Sinha, Raj (Raj)
Sent: Thursday, March 10, 2005 5:36 PM
To: www-lib-request@w3.org
Cc: www-lib@w3.org
Subject: Persistent connections and TCP RST issue

 

Hi All

 

Wondering if you have come across any issues with persistent
connections. Simulating a test for persistent connections and the web
server was shut down in that time. Sends a TCP reset.

 

At that point Libwww exits 

HTEvtlst.c 

                if ((status = EventOrder_add(s, HTEvent_READ, now)) !=
HT_OK){

                    printf("|HTEventList_loop| Going to STOP LOOP
returns ERROR\n");

                    goto stop_loop;/*continue;*/

                }

 

 

Any insight into this is welcome. I will debug more to be clearer

 

raj

 

Raj Sinha |

Received on Friday, 11 March 2005 16:36:24 UTC