Assertion failure/cache problem - very fast animation

VERIFIED FIXED

Status

()

P1
normal
VERIFIED FIXED
19 years ago
18 years ago

People

(Reporter: jesup, Assigned: neeti)

Tracking

Trunk
x86
All
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [nsbeta3+][pdtp4], URL)

Attachments

(3 attachments)

(Reporter)

Description

19 years ago
I was sitting looking at this page (fully loaded), and noticed that the anim was
running fast and flickering.  After sitting there a while, suddenly I got the
following assertion failures and warnings.  Build is from a fresh checkout/build
as of yesterday (7/19/2000)


Enabling Quirk StyleSheet
Document: Done (8.75 secs)
*** check number of frames in content area 
Error getting url widget service: TypeError: Components.classes[progid] has no
properties
Document http://www.hometheaterforum.com/uub/Forum22/HTML/000749.html loaded
successfully
###!!! ASSERTION: QueryInterface needed: 'query_result.get() == mRawPtr', file
nsCOMPtr.h, line 500
###!!! Break: at file nsCOMPtr.h, line 500
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
###!!! ASSERTION: QueryInterface needed: 'query_result.get() == mRawPtr', file
nsCOMPtr.h, line 500
###!!! Break: at file nsCOMPtr.h, line 500
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
###!!! ASSERTION: QueryInterface needed: 'query_result.get() == mRawPtr', file
nsCOMPtr.h, line 500
###!!! Break: at file nsCOMPtr.h, line 500
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
###!!! ASSERTION: QueryInterface needed: 'query_result.get() == mRawPtr', file
nsCOMPtr.h, line 500
###!!! Break: at file nsCOMPtr.h, line 500
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
###!!! ASSERTION: QueryInterface needed: 'query_result.get() == mRawPtr', file
nsCOMPtr.h, line 500
###!!! Break: at file nsCOMPtr.h, line 500
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
(Reporter)

Comment 1

19 years ago
Note: after a few dozen of these, the anim disappeared and was replaced with a
simple link ("htf2"), and the warnings stopped.

It is repeatable, at least within the same run.  Quitting and restarting caused
the assertion and warnings to go away, but the image still appears and then
disappears and is replaced with "htf2".  I assume it's an issue with the cache.

Also note that I think the image is NOT an anim.  It's just an image, and was
flashing in time with the warnings.

Comment 2

19 years ago
I don't see anything strange here on mac.  on win32 the progress bar flashes
between 98% and 100% very quickly but doesn't seem to create any problems for
teh content.  Over to Networking Cache.  the asserts are in code that scc wrote.
Assignee: asa → neeti
Component: Browser-General → Networking: Cache
QA Contact: doronr → tever

Comment 3

19 years ago
works for me FreeBSD -current
BuildID: 2000072406 - CVS pull PDT

I see no flashing/animated images and get no assertions even on reloads
(Reporter)

Comment 4

19 years ago
"Page Info" in mozilla seems not to work, so it's hard to see what mozilla
thinks about this image.  Selecting "Save Image As..." before the image loads
allowed me to save it, but it appears to save from the net, not from the cache. 
When I display the saved image, it's fine.

Note: on all subsequent runs, I see no assertions.  The image loads and appears,
then immediately disappears and is replaced by the text "htf2".  I assume the
problem is that somehow (when the assertions occurred) the cache got some bad
data in it for the image (though it does decode and display before
disappearing), or some bad meta-data for the cached image.  I've been avoiding
clearing the cache; if someone can tell me how to extract any information about
the cached image's meta-data (or the cached image itself), I'll do so.  "Page
Info" not working makes this tough.

Here's what Netscape 4.7 says about htf2 (note: it doesn't have this problem):
Location:
           http://www.hometheaterforum.com/uub/htf2.gif
 File MIME Type:
           image/gif
     Source:
           Currently in disk cache
 Local cache file:
           17/cache397DA49704242AD.gif
  Last Modified:
           Sunday, 16-Jan-00 13:51:43 Local time
  Last Modified:
           Sunday, 16-Jan-00 18:51:43 GMT
 Content Length:
           6108
     Expires:
           No date given
     Charset:
           Unknown
     Security:
           This is an insecure document that is not encrypted and offers no
security protection.
(Reporter)

Comment 5

18 years ago
Created attachment 12618 [details]
Minimal testcase (may depend on my cache!)
(Reporter)

Comment 6

18 years ago
Created attachment 12619 [details]
Cache DB entry for htf2.gif (binary)
(Reporter)

Comment 7

18 years ago
Created attachment 12620 [details]
cache file for htf2.gif - appears correct when loaded directly from cache
(Reporter)

Comment 8

18 years ago
I suspect the problem is with the cache database - a snippet of which I've
uploaded.  Loading the GIF stored in my cache gives no problems.  Referencing it
via it's original location on www.hometheaterforum.com causes a series of:
WARNING: Error: RecordID not in DB
, file nsNetDiskCache.cpp, line 430
with the image flashing each time, then the image disappears and is replaced by
"htf2" and the warnings stop.

Comment 9

18 years ago
setting bug status to New
Status: UNCONFIRMED → NEW
Ever confirmed: true
(Assignee)

Updated

18 years ago
Status: NEW → ASSIGNED
Keywords: nsbeta3

Comment 10

18 years ago
Good test case for cache corruption. Thanks.
Priority: P3 → P1
Whiteboard: [nsbeta3+]

Comment 11

18 years ago
Changing to priority of P4 given that this appears from the comments in the bug
to only happen in FreeBSD.
Priority: P1 → P4
Whiteboard: [nsbeta3+] → [nsbeta3+][pdtp4]

Comment 12

18 years ago
Hey, this is P1. The cache DB get corrupted on all platforms. This can be caused
by any error page not just fast animations. And the corruptions causes us to
delete entire cache once it has filled up. And the corrupted entry always stays
in memory. We dont delete it at all. That is the analysis after we looked at the
bug.

BTW, please talk to us before changing priority, esp downgrading P1s. Thanks.

Changing it back to P1. Platform to ALL.
OS: FreeBSD → All
Priority: P4 → P1
(Assignee)

Comment 13

18 years ago
dp checked in the fix
Status: ASSIGNED → RESOLVED
Last Resolved: 18 years ago
Resolution: --- → FIXED

Comment 14

18 years ago
verified
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.