Closed Bug 38853 Opened 24 years ago Closed 24 years ago

onEndLoad function of XMLSinkObserver is called lately

Categories

(Core :: Networking, defect, P3)

x86
Linux
defect

Tracking

()

VERIFIED FIXED

People

(Reporter: janv, Assigned: ruslan)

Details

Attachments

(1 file)

after load of XML/RDF datasource, template is builded correctly
but observer is called after about 15 seconds
I find out this is specific only for dynamically generated datasources
e.g. with PHP

with static datasource observer is called immediatly


in my little debugging I also find out that method "OnStopRequest" isn't called
immediatly. Maybe specific to netwerk module...

can you please provide a test case? what is PHP?
Attached file testcase
PHP is language for creating dynamic pages (e.g. querying database)


testcase buttons:

"Search"  - URI is based on entered data (enter "1" as id for example)
          - dynamic datasource (requests.php)

"Search2" - static datasource (requests.rdf)

when you hit "Search2" button, cursor changes its state to "wait"
after datasource is loaded, observer is called and that observer change cursor
state back to "auto"
this is how it would work and it is working correctly.

when you hit "search" button it should working as "search2"
but in this case observer is called after several seconds (15 seconds for me)
also working about 2 weeks ago


Datasource requests are logged in web server logs.
"Search" request is logged as successfull request (code 200)
"Search2" request is logged as ... (code 304)


in the debug build it is same as in non-debug, optimized build

works in M15
ruslan: this sounds like it might have something to do with HTTP? Does it sound 
familiar?
Status: UNCONFIRMED → NEW
Ever confirmed: true
I also see this when just running TestProtocols (necko test program) against a
static local webpage. The OnStopRequest event needs 15 seconds to come through.
-> networking for now, based on andreas' comments.
Assignee: waterson → gagan
Component: RDF → Networking
Might be incorrect http 1.1 response (whithout or with incorrect content-length 
or busted chunk-encoding) coming out of server which causes the client to wait 
until the connection gets closed. Is there a url where I can consistently see 
it?
DS URLs:

http://fri.utcru.sk/lis/datasources/results/requests.rdf
or
http://fri.utcru.sk/lis/datasources/results/requests.php?patiend_id=1

strange...
- when first one is loaded, observer is called imediately but web server log
  this request with error code 304
- when second one is loaded, observer is called after about 15 seconds, but
  this request is loged as correct (code 200)

also you can find DS URLs in testcase
Let me look into it first
Assignee: gagan → ruslan
I added a feature to chunk converter about a week ago to support trailer headers 
which seemed to have  unmasked a very tedious bug in the converter which as 
result would not tell back the http handler about the end  of request condition 
under certain circumstances. I've a fix, I'll test it a bit more and will check 
it in today
Status: NEW → ASSIGNED
Keywords: nsbeta2
Target Milestone: --- → M16
Fixed
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
verified
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: