Closed Bug 1350466 Opened 3 years ago Closed 3 years ago

Uplift bug 1342832 to bmo for performance and other reasons


( :: General, enhancement)

Not set





(Reporter: dylan, Assigned: dylan)



(1 file, 1 obsolete file)

prior to loading the cpan meta configuration file ("MYMETA.json") setting the env PERL_JSON_BACKEND to JSON::XS will result in a significant performance boost
Summary: Force CPAN::Meta to use use JSON::XS to parse MYMETA.json → Uplift bug 1342832 to bmo for performance and other reasons
Attached patch 1350466_2.patch (obsolete) — Splinter Review
Issues this fixes:

1) Parsing MYMETA.json every request with pure-perl JSON takes a long time.
    Much better to JSON::XS.
2) Fixes bug where in one code path the CPAN::Meta object is stored in the request cache, and another the process cache. Now it's just a proper file scoped lexical. 

The other changes are for concerns of upstream -- I don't want this logic to diverge too far.

The main negative is that fails if the local/ directory isn't populated. This is because we run on 5.10 (upstream requires 5.14 and this doesn't happen then). This is actually a *feature* because it lets us know very early that a system is broken. (We had local/ disappear on a server recently and it was not immediately obvious).

As I don't expect you to run this, I am functional-testing it on bugzilla-dev.
Attachment #8851304 - Flags: review?(glob)
Attached patch 1350466_3.patchSplinter Review
Failed pod checker. fixed.
Attachment #8851304 - Attachment is obsolete: true
Attachment #8851304 - Flags: review?(glob)
Attachment #8851305 - Flags: review?(glob)
Comment on attachment 8851305 [details] [diff] [review]

Review of attachment 8851305 [details] [diff] [review]:

r=glob lgtm
Attachment #8851305 - Flags: review?(glob) → review+
   08c0187..15daaf1  master -> master
Closed: 3 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.