Closed Bug 1425602 Opened 7 years ago Closed 5 years ago

[meta] fix all the blocklist things

Categories

(Toolkit :: Blocklist Implementation, enhancement, P2)

enhancement

Tracking

()

RESOLVED FIXED
Tracking Status
firefox59 --- affected

People

(Reporter: Gijs, Unassigned)

References

Details

(Keywords: meta, Whiteboard: [fxperf:meta])

User Story

The blocklist

- includes legacy stuff (add-ons, npapi plugin things) that we can remove for 57+ (because no more npapi plugins, signed and webextension-only add-ons now), which would massively reduce its size.
--> see deps of bug 1391792. Certs were removed already.
- includes entries that we can consolidate (version blocks for the same plugin, e.g. I see more than a dozen entries for Java alone)
--> should be fixed after/by bug 1391792 and deps.
- uses main-thread sync io on startup
--> fixed in deps of bug 1447680.
- the currently-in-tree json kinto-based replacement uses 3 files instead of 1, which worsens the sync main-thread io
--> this is storing into indexeddb once it's been set up the first time. The JSON read should also be OMT already.
- is currently fetched as one big thing instead of getting/doing diffs
- uses a verbose xml format that we'd like to replace
- is loaded via an inefficient xml parser setup
--> these 3 items are being addressed in bug 1257565.
- all these files include data for other OSes than the user is running, so mac/linux users get dll blocks and windows users get all the linux flash blocks etc.
- once loaded into memory, the blocklist has no reasonable keyed access to it and so comparing against it is clownshoes
-- so clownshoes that it tripped over my xpconnect instrumenting in bug 1425466 for where we go from js to cpp the most often for a single interface
--> slightly better after bug 1425600, still has room for improvement.
From what I understand, the blocklist has a number of issues that I've detailed in the user story (so Florian and/or Mike can correct me where I've misunderstood or missed stuff). Given its serious impact on startup, we should prioritize fixing its many failures to reduce the impact it has on startup.
Depends on: 1433627
Whiteboard: [fxperf]
See Also: → 1399864
Depends on: 1434302
Depends on: 1371888
Assignee: nobody → gijskruitbosch+bugs
Priority: -- → P2
Depends on: 1435609
User Story: (updated)
Depends on: 1439405
Depends on: 1439519
Depends on: 1443870
Depends on: 1454378
User Story: (updated)
Depends on: 1257565
Component: Blocklist Policy Requests → Blocklist Implementation
Assignee: gijskruitbosch+bugs → nobody
Whiteboard: [fxperf] → [fxperf:meta]
Depends on: 1579983

I think at this point we can call this fixed. Nothing is ever perfect, but this is a lot better than it was.

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.