pldhash.[ch] (jsdhash.[ch]) spruce-up catchall bug

RESOLVED FIXED in mozilla0.8.1

Status

()

Core
XPCOM
P1
normal
RESOLVED FIXED
18 years ago
17 years ago

People

(Reporter: brendan, Assigned: brendan)

Tracking

({js1.5})

Trunk
mozilla0.8.1
js1.5
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(4 attachments)

(Assignee)

Description

18 years ago
- js_HashString in jsstr.c should not ape java.lang.String's bogo-sampling
"long" strings.
- ditto JS_HashString.
- ditto JS_DHashStringKey
- gordon reminded me of a silly misfeature of js/pldhash.c when growing a table
where half the capacity are entries, a quarter are removed sentinels, the table
can grow and then (if there's another removal) shrink immediately.

Patch coming up.

/be
(Assignee)

Updated

18 years ago
Status: NEW → ASSIGNED
Keywords: js1.5, mozilla0.9
Priority: -- → P2
Target Milestone: --- → mozilla0.9
(Assignee)

Comment 1

18 years ago
Created attachment 25544 [details] [diff] [review]
js/src-relative patches (xpcom/ds/pldhash.[ch] come from sed -f plify_jsdhash.sed)
(Assignee)

Updated

18 years ago
Keywords: patch, review
(Assignee)

Updated

18 years ago
Priority: P2 → P1
(Assignee)

Comment 2

17 years ago
My third 0.8.1 bug to fix.  I'd better get that follow-up patch hacked up.

/be
Target Milestone: mozilla0.9 → mozilla0.8.1

Comment 3

17 years ago
Brendan, we on the new cache team are eager for your changes. :-)

(Assignee)

Comment 4

17 years ago
Created attachment 27490 [details] [diff] [review]
final patch for 0.8.1, I hope -- review me please!
(Assignee)

Comment 5

17 years ago
Created attachment 27491 [details] [diff] [review]
final patch for 0.8.1, I hope -- review me please!
(Assignee)

Comment 6

17 years ago
I can't believe Mozilla took a double-click on the attachments page submit
button to mean attach the same file twice.  Cc'ing pollmann -- eric, what's the
scoop?  Known bug?

/be

Comment 8

17 years ago
Maybe note that you are avoiding a branch with the bitwise-or (so it's not
``fixed'' later). r=waterson
(Assignee)

Comment 9

17 years ago
Created attachment 27613 [details] [diff] [review]
better fix (shrinks after removing during Enumerate), trying for 0.8.1

Comment 10

17 years ago
Why would you call ChangeTableSize() with a zero value for deltaLog2?

Comment 11

17 years ago
Talked with brendan, and he explained why this is necessary (due to collisions,
``removed'' entries still take up space sometimes). r=waterson (or sr=, if you
need it)
(Assignee)

Comment 12

17 years ago
waterson's fine question caused me to rename ChangeTableSize ChangeTable, since
it doesn't necessarily change the table size.  But it must change the table's
entry storage, even if only compressing to eliminated removed tombstone entries.
I also commented on how its loop moves only the live entries from oldEntryStore
to newEntryStore, leaving removed (and skipEntry) behind.

/be

Comment 13

17 years ago
ready to go when leaf-er-oni opens the tree?
Whiteboard: have patch ready for 0.8.1
(Assignee)

Comment 14

17 years ago
Actually, I checked in before the deadline, got in line at the metering light
and everything.

/be
Status: ASSIGNED → RESOLVED
Last Resolved: 17 years ago
Resolution: --- → FIXED
Whiteboard: have patch ready for 0.8.1
You need to log in before you can comment on or make changes to this bug.