Closed Bug 621048 Opened 14 years ago Closed 13 years ago

Res_get tracking bug

Categories

(Firefox :: Sync, defect)

defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: rnewman, Unassigned)

References

Details

We're seeing a lot of problems being caught in Res_get. This bug will keep an eye on them.
Possibly related: Bug 619162.
Investigating these four commits:

[rnewman@metroplex:netwerk/protocol]$ hg log -r 'date(">Dec 14 2010")' .                                                                (12-22 15:01)
changeset:   59400:e465d98c56c2
user:        Patrick McManus <mcmanus@ducksong.com>
date:        Thu Dec 16 08:50:36 2010 -0500
summary:     Bug 613977 - Intermittent invalid certificate error prompt (partial) r=honzab a=blocking-beta9

changeset:   59401:3857de12f888
user:        Mark Banner <bugzilla@standard8.plus.com>
date:        Thu Dec 16 14:35:12 2010 +0000
summary:     Non-IPC Bustage fix from bug 613977/bug 614677/bug 614950 - add nsAutoPtr.h header to fix compilation bustage. a=Bustage fix

changeset:   59609:f397877da0dd
user:        Honza Bambas <honzab.moz@firemni.cz>
date:        Wed Dec 22 16:44:27 2010 +0100
summary:     Bug 613977 - Intermittent invalid certificate error prompt in security tests causing timeouts, r=mcmannus, a=blocking:beta9+

changeset:   59611:42baa6019c31
parent:      59609:f397877da0dd
user:        Honza Bambas <honzab.moz@firemni.cz>
date:        Wed Dec 22 18:25:15 2010 +0100
summary:     Backout changeset f397877da0dd, a=backout



Some users are reporting no problems with b8 and 3.6+1.6, which implies breakage in the Minefield tree since b8 was tagged. That's my only lead so far...
As explained in bug 621594, I'm convinced Res_get() is a red herring. It appears on top of the stack because that's what on top from the caller's point of view. The actual error occurs in the respective engine, though, in the resource's _onProgress handler (the resource being the collection in this case, and the _onProgress handler being engines.js's recordHandler)
It's not always a red herring, as far as I can see. We are seeing very real exceptions being thrown inside the onComplete handler itself, not the callback that it calls — no headers being present when they should. That's Matt's problem.

We are also seeing problems caused by non-existent bodies, which results in messages like "info.obj is undefined". That has two roots: successes with empty bodies (which I doubt we see often), and the above problem but slipping through a success check (happens for meta/global).

It's certainly confusing, though, that pretty much any problem inside a response handler will have Res_get at the top of the stack…
(In reply to comment #4)
> It's not always a red herring, as far as I can see. We are seeing very real
> exceptions being thrown inside the onComplete handler itself, not the callback
> that it calls — no headers being present when they should. That's Matt's
> problem.

Where's Matt's bug?

> We are also seeing problems caused by non-existent bodies, which results in
> messages like "info.obj is undefined". That has two roots: successes with empty
> bodies (which I doubt we see often), and the above problem but slipping through
> a success check (happens for meta/global).

Right. The meta/global thing seems to be bug 619162, that I understand. But all of the bugs that *this* bug refers to smell like engine related problems to me.

> It's certainly confusing, though, that pretty much any problem inside a
> response handler will have Res_get at the top of the stack…

Well, it's happening within the _onProgress handler which is not a direct callback of anything. Necko calls it as it receives data. We hook into it so we can process records as we get incoming data.
Assignee: rnewman → nobody
Status: ASSIGNED → NEW
At this point I think it's pretty clear the Res_get() stuff was a red herring. Errors thrown during the onProgress handler were not logged correctly. Bug 622760 fixed this. All the other Res_get bugs should've been fixed or will be fixed by our various bookmarks, history and password sync improvements.

Closing this.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → INVALID
Component: Firefox Sync: Backend → Sync
Product: Cloud Services → Firefox
You need to log in before you can comment on or make changes to this bug.