Closed Bug 276733 Opened 20 years ago Closed 20 years ago

Rewrite global history to eliminate RDF

Categories

(Camino Graveyard :: History, defect)

PowerPC
All
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: sfraser_bugs, Assigned: sfraser_bugs)

References

Details

RDF causes us some serious performance problems in the global history code. For
example, quicksearch in history is not usable because building the entire tree
of history items takes several seconds for my 3000-item history on a dual 1Gig G4.

The reason it's slow is that there are some O(N^2) algorithms between the cocoa
code, RDF, and mork: for each history category, building the list of child nodes
involves making a mork row enumerator that has to enumerate all the rows in the
history database.

Eliminating RDF will also allow us to present the history list in more creative
ways, and implement quicksearch etc.
cc'ing ben, might like to have it for FF
Done. The new impl is similar to the old one (i.e. is mork-based) but no longer uses RDF. I added a 
simple nsIHistoryItems API to get an enumerator for the history entries, and an nsIHistoryItem to get 
the info for each entry. All the tree-building is now done by the UI.
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.