Page MenuHomePhabricator
Feed Advanced Search

Feb 27 2017

epriestley added a revision to T12319: Investigate an Owners-related performance issue on revision detail pages: D17420: Make `bin/lipsum generate` hanldle generator keys and arguments more clearly.
Feb 27 2017, 12:20 PM · Owners, Differential, Performance
epriestley added a revision to T12319: Investigate an Owners-related performance issue on revision detail pages: D17419: Correct spelling of "phabrictor" in Lipsum and elsewhere.
Feb 27 2017, 12:06 PM · Owners, Differential, Performance

Feb 26 2017

epriestley updated subscribers of T12319: Investigate an Owners-related performance issue on revision detail pages.
Feb 26 2017, 3:29 PM · Owners, Differential, Performance
epriestley created T12319: Investigate an Owners-related performance issue on revision detail pages.
Feb 26 2017, 3:29 PM · Owners, Differential, Performance

Feb 2 2017

epriestley edited projects for T11968: Decide the fate of FutureGraph, added: Diffusion; removed Diffusion (v3).
Feb 2 2017, 3:54 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist

Jan 18 2017

epriestley moved T11968: Decide the fate of FutureGraph from Backlog to v3 on the Diffusion board.
Jan 18 2017, 6:59 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist

Dec 8 2016

epriestley created T11968: Decide the fate of FutureGraph.
Dec 8 2016, 3:09 PM · Diffusion, Performance, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D17009: Use futures to improve clustered repository main page performance.
Dec 8 2016, 2:44 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist

Dec 6 2016

epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D17002: Cache README content for repositories.
Dec 6 2016, 5:37 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D17000: Cache Almanac URIs for repositories.
Dec 6 2016, 2:15 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D16999: Introduce a serializing key-value cache proxy.
Dec 6 2016, 1:12 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D16998: Improve settings caches on fast paths like Conduit.
Dec 6 2016, 1:10 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D16997: Use PhabricatorCachedClassMapQuery when querying object PHID types.
Dec 6 2016, 12:35 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D16996: Slightly modernize ConduitTokenQuery.
Dec 6 2016, 12:19 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D16995: Use PhabricatorCachedClassMapQuery in Conduit method lookups.
Dec 6 2016, 12:15 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D16994: Provide a cached class map query for making key-based class lookups more efficient.
Dec 6 2016, 12:13 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D16993: Provide a pure APC cache for runtime caching.
Dec 6 2016, 12:08 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley added a revision to T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching: D16992: Give PhutilClassMapQuery a public cache key.
Dec 6 2016, 12:03 PM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist
epriestley created T11954: Improve performance of Arcanist/Conduit/Diffusion, primarily through better caching.
Dec 6 2016, 11:25 AM · Performance, Diffusion, Conduit, Infrastructure, Restricted Project, Arcanist

Nov 22 2016

epriestley closed T11672: Evaluate persistent connections from HTTP contexts as Resolved by committing rP8c89fc38fc42: Allow persistent connections to be configured per database host.
Nov 22 2016, 6:57 PM · Restricted Project, Performance, Clusters, Database
epriestley added a revision to T11672: Evaluate persistent connections from HTTP contexts: D16913: Allow persistent connections to be configured per database host.
Nov 22 2016, 2:41 PM · Restricted Project, Performance, Clusters, Database

Nov 21 2016

epriestley added a parent task for T11672: Evaluate persistent connections from HTTP contexts: T11044: Support partitioning application databases across multiple database hosts.
Nov 21 2016, 4:01 PM · Restricted Project, Performance, Clusters, Database

Oct 26 2016

epriestley created T11786: Loop/degenerate behavior in RepositoryGraphCache.
Oct 26 2016, 12:26 AM · Performance, Diffusion

Oct 20 2016

epriestley renamed T11773: Improve behaviors for "overheated" policy queries from Feed does not perform well in the presence of exclusive spaces to Improve behaviors for "overheated" policy queries.
Oct 20 2016, 5:08 PM · Performance
epriestley added a revision to T11773: Improve behaviors for "overheated" policy queries: D16736: Add developer UI for accessing NUX and "Overheated" query states.
Oct 20 2016, 4:11 PM · Performance
epriestley added a comment to T11773: Improve behaviors for "overheated" policy queries.

Pagination isn't quite as simple as I'd remembered. Specifically, we do not expose internal pagination cursors to viewers today because doing so permits an information discovery attack that goes like this:

Oct 20 2016, 3:51 PM · Performance
epriestley added a revision to T11773: Improve behaviors for "overheated" policy queries: D16735: Make query engines "overheat" instead of stalling when filtering too many results.
Oct 20 2016, 3:36 PM · Performance

Oct 19 2016

epriestley added a comment to T11773: Improve behaviors for "overheated" policy queries.

I think this behavior is very good

Oct 19 2016, 10:37 PM · Performance
epriestley added a comment to T11773: Improve behaviors for "overheated" policy queries.

This is also a potential problem in the general case, although the general case of this is very rare.

Oct 19 2016, 10:30 PM · Performance
epriestley renamed T11773: Improve behaviors for "overheated" policy queries from Feed does not perform well in the presence of exclusive spaces? to Feed does not perform well in the presence of exclusive spaces.
Oct 19 2016, 10:11 PM · Performance
epriestley added a comment to T11773: Improve behaviors for "overheated" policy queries.

Broadly, most applications can execute Spaces queries cheaply by querying ... AND spacePHID IN (<list of spaces the viewer can see>) when Spaces are configured, which is efficient until some install decides to create 30,000 Spaces for some reason.

Oct 19 2016, 10:10 PM · Performance
epriestley added projects to T11773: Improve behaviors for "overheated" policy queries: Feed, Performance.
Oct 19 2016, 9:59 PM · Performance

Oct 8 2016

gregprice added a comment to T11744: phutil_utf8v_combined consumes great gobs of memory, changeset parsing fails.

This helped! Thanks for another fast fix.

Oct 8 2016, 1:48 AM · Performance, Bug Report

Oct 7 2016

epriestley added a comment to T11744: phutil_utf8v_combined consumes great gobs of memory, changeset parsing fails.

I believe this should now be fixed in HEAD of master. It should promote to stable within 24 hours.

Oct 7 2016, 2:55 PM · Performance, Bug Report
epriestley closed T11744: phutil_utf8v_combined consumes great gobs of memory, changeset parsing fails as Resolved by committing rARC2ad15c499a00: Don't compute intraline diffs if the input fails a coarse check for being huge.
Oct 7 2016, 2:42 PM · Performance, Bug Report
epriestley claimed T11744: phutil_utf8v_combined consumes great gobs of memory, changeset parsing fails.
Oct 7 2016, 2:35 PM · Performance, Bug Report

Sep 29 2016

eadler added a project to T11672: Evaluate persistent connections from HTTP contexts: Restricted Project.
Sep 29 2016, 6:29 PM · Restricted Project, Performance, Clusters, Database

Sep 23 2016

epriestley added a revision to T11672: Evaluate persistent connections from HTTP contexts: D16591: For now, disable persistent connections and the "max_connections" setup warning.
Sep 23 2016, 7:40 PM · Restricted Project, Performance, Clusters, Database
epriestley reopened T11672: Evaluate persistent connections from HTTP contexts as "Open".
Sep 23 2016, 7:37 PM · Restricted Project, Performance, Clusters, Database

Sep 21 2016

epriestley closed T11672: Evaluate persistent connections from HTTP contexts as Resolved.
Sep 21 2016, 9:47 PM · Restricted Project, Performance, Clusters, Database
epriestley added a comment to T11672: Evaluate persistent connections from HTTP contexts.

I've banged on this a reasonable amount locally without issues and the originating instance reports that this seems to have calmed things down in production with these patches, so it seems like this pretty much just worked.

Sep 21 2016, 9:47 PM · Restricted Project, Performance, Clusters, Database

Sep 20 2016

epriestley added a revision to T11672: Evaluate persistent connections from HTTP contexts: D16578: Use persistent database connections from web contexts.
Sep 20 2016, 2:34 PM · Restricted Project, Performance, Clusters, Database
epriestley added a revision to T11672: Evaluate persistent connections from HTTP contexts: D16577: Support persistent connections in libphutil.
Sep 20 2016, 2:29 PM · Restricted Project, Performance, Clusters, Database
epriestley created T11672: Evaluate persistent connections from HTTP contexts.
Sep 20 2016, 1:54 PM · Restricted Project, Performance, Clusters, Database

Sep 2 2016

avivey added a comment to T10635: Loading differential revision slow when lots of unit test messages exist.

For people who suffer from this: Note that D16483 might have actually made things a little worse, by searching the DB for old messages (Not loading them though); I tested with 1M messages on an SSD drive, and I didn't see any changes, but YMMV.

Sep 2 2016, 5:35 PM · Restricted Project, Haskell.org, Harbormaster, Performance

Aug 29 2016

epriestley added a parent task for T10635: Loading differential revision slow when lots of unit test messages exist: T11402: Garbage collect and/or compress/archive harbormaster build unit messages.
Aug 29 2016, 4:35 PM · Restricted Project, Haskell.org, Harbormaster, Performance

Aug 19 2016

avivey added a revision to T10635: Loading differential revision slow when lots of unit test messages exist: D16417: Aggregate lint, unit information in HarbormasterBuildable.
Aug 19 2016, 7:16 PM · Restricted Project, Haskell.org, Harbormaster, Performance

Aug 5 2016

eadler added a project to T10635: Loading differential revision slow when lots of unit test messages exist: Restricted Project.
Aug 5 2016, 4:45 PM · Restricted Project, Haskell.org, Harbormaster, Performance

Jul 31 2016

epriestley closed T11404: Improve the performance of custom field queries as Resolved.

I deployed this stuff here. I neglected to get a production timing beforehand so I can't really claim it's actually faster, but it seems fast-ish now. Let me know if things look better and/or I ruined everything when you get around to deploying it.

Jul 31 2016, 6:48 PM · Performance, Feature Request
epriestley added a comment to T11404: Improve the performance of custom field queries.

I don't immediately have an attack on the JIRA thing (it should be less expensive in normal cases), and don't want to do the Auth stuff without more planning, and nothing else leaps out at me as having a similar sort of value for the cost.

Jul 31 2016, 5:08 PM · Performance, Feature Request
epriestley added a revision to T11404: Improve the performance of custom field queries: D16355: Improve performance when constructing custom fields for objects.
Jul 31 2016, 4:49 PM · Performance, Feature Request
epriestley added a revision to T11404: Improve the performance of custom field queries: D16354: Remove expensive, pointless typeachecking in custom fields.
Jul 31 2016, 4:33 PM · Performance, Feature Request
epriestley added a comment to T11404: Improve the performance of custom field queries.

There's still quite a bit of room here. Locally, I see a 220ms call for differential.revision.search. Here are savings which look fairly easy to capture:

Jul 31 2016, 4:25 PM · Performance, Feature Request
epriestley added a revision to T11404: Improve the performance of custom field queries: D16352: Improve Conduit performance of special edge-based custom Revision fields.
Jul 31 2016, 4:06 PM · Performance, Feature Request
epriestley added a revision to T11404: Improve the performance of custom field queries: D16351: Improve Conduit performance for custom fields.
Jul 31 2016, 3:46 PM · Performance, Feature Request
epriestley added a revision to T11404: Improve the performance of custom field queries: D16350: Allow `*.search` Conduit API methods to have data bulk-loaded by extensions.
Jul 31 2016, 3:29 PM · Performance, Feature Request
epriestley added a comment to T11404: Improve the performance of custom field queries.

That sort of leaves you in trouble with custom edge-based fields like the one above, but a reasonable short term approach is the one you've already taken:

Jul 31 2016, 3:08 PM · Performance, Feature Request
epriestley added a comment to T11404: Improve the performance of custom field queries.

Ah, there are really a couple of issues here.

Jul 31 2016, 3:02 PM · Performance, Feature Request
epriestley added a comment to T11404: Improve the performance of custom field queries.

That looks broadly correct to me, I just want to try to remove the assumption that the first object's first field's storage is universally the right storage in fixing this upstream. It's always true today and for the foreseeable future, just obviously not a Fundamental Axiom of the System. Let me review D16346 and I'll spend 10 minutes on this, I'm pretty sure it's straightforward, not a weird snowbally mess, and that the upstreamable patch is only cosmetically different from that one.

Jul 31 2016, 1:15 PM · Performance, Feature Request
yelirekim added a comment to T11404: Improve the performance of custom field queries.

This is brittle but it works if your objects all use the native storage.

Jul 31 2016, 1:08 PM · Performance, Feature Request
epriestley added a comment to T11404: Improve the performance of custom field queries.

I think the issue is that there's no callable thing for bulk-loading custom fields right now, which is why SearchEngineExtension doesn't have a hook for it. Other SearchEngine extensions don't need it since none currently load any data.

Jul 31 2016, 12:57 PM · Performance, Feature Request
epriestley added a project to T11404: Improve the performance of custom field queries: Performance.
Jul 31 2016, 12:20 PM · Performance, Feature Request

Jul 10 2016

epriestley closed T11303: Improve performance of instance visibility policy checks for administrative/deployment agents as Resolved by committing Restricted Diffusion Commit.
Jul 10 2016, 3:04 PM · Performance, Phacility
epriestley closed T11304: Conduit "*.search" methods unnecessarily persist search queries as Resolved by committing rPc21be4849f8d: By default, do not save queries when executing Conduit "*.search" calls.
Jul 10 2016, 3:04 PM · Performance, Conduit, Phacility

Jul 9 2016

epriestley added a comment to T11304: Conduit "*.search" methods unnecessarily persist search queries.

(Only unique queries are saved, so this should be a small amount of data in most cases, but the Phacility setup tends to mean we issue a lot of unique queries.)

Jul 9 2016, 1:51 PM · Performance, Conduit, Phacility
epriestley added a revision to T11304: Conduit "*.search" methods unnecessarily persist search queries: D16263: By default, do not save queries when executing Conduit "*.search" calls.
Jul 9 2016, 1:50 PM · Performance, Conduit, Phacility
epriestley created T11304: Conduit "*.search" methods unnecessarily persist search queries.
Jul 9 2016, 1:36 PM · Performance, Conduit, Phacility
epriestley added a revision to T11303: Improve performance of instance visibility policy checks for administrative/deployment agents: Restricted Differential Revision.
Jul 9 2016, 1:28 PM · Performance, Phacility
epriestley added a comment to T11303: Improve performance of instance visibility policy checks for administrative/deployment agents.

Using an extended policy sort of fixes this, except that extended policies currently only strengthen policies, so I also have to weaken the default View policy. This potentially makes the UI misleading, since it suggests that "all users" can view an instance, which isn't true.

Jul 9 2016, 1:14 PM · Performance, Phacility
epriestley added a comment to T11303: Improve performance of instance visibility policy checks for administrative/deployment agents.

One possible approach is to cache policy checks (when we've determined that user X can see object Y, cache that for the remainder of the request), but I don't want to do this idly since it has far-reaching implications, and there are cases where this cache could potentially produce the wrong result (for example, when we predict the effects of making a policy change during an edit, we evaluate objects as though they had a different policy than they really have).

Jul 9 2016, 1:08 PM · Performance, Phacility
epriestley created T11303: Improve performance of instance visibility policy checks for administrative/deployment agents.
Jul 9 2016, 1:03 PM · Performance, Phacility

Jul 4 2016

eadler moved T8612: Improve handling of "large" changesets from Restricted Project Column to Restricted Project Column on the Restricted Project board.
Jul 4 2016, 9:08 PM · Restricted Project, Performance, Differential

Jun 5 2016

epriestley closed T10077: Reduce the cost of building the "Quick Create" menu as Resolved.

D16045 reduced this to one query. We can cache it more aggressively and amortize the cost to 0 queries, but I'll leave that for T11096. This is no longer wildly out of line in terms of cost/value.

Jun 5 2016, 10:20 PM · Infrastructure, Performance
epriestley added a revision to T10077: Reduce the cost of building the "Quick Create" menu: D16045: Fully modularize the "Quick Actions" menu.
Jun 5 2016, 2:34 PM · Infrastructure, Performance
epriestley added a revision to T10078: Implement global readthrough cache pools: D16044: After toggling DarkConsole, force a user settings cache fill.
Jun 5 2016, 1:58 PM · Restricted Project, Infrastructure, Performance
epriestley added a revision to T10078: Implement global readthrough cache pools: D16043: Simplify user cache management of data forms.
Jun 5 2016, 1:53 PM · Restricted Project, Infrastructure, Performance
epriestley added a revision to T10078: Implement global readthrough cache pools: D16042: Make caches misses throw by default intead of inline-generating.
Jun 5 2016, 1:39 PM · Restricted Project, Infrastructure, Performance
epriestley added a revision to T10078: Implement global readthrough cache pools: D16041: Cache user notification and message counts.
Jun 5 2016, 1:54 AM · Restricted Project, Infrastructure, Performance
epriestley added a revision to T10078: Implement global readthrough cache pools: D16040: Convert user profile images into a standard cache.
Jun 5 2016, 1:00 AM · Restricted Project, Infrastructure, Performance

Jun 1 2016

epriestley added a comment to T10078: Implement global readthrough cache pools.

D16001 likely provides an appropriate general-purpose mechanism for the user cache pool.

Jun 1 2016, 8:10 PM · Restricted Project, Infrastructure, Performance

May 23 2016

joshuaspence added a comment to T11011: Can't connect to MySQL server.

The following queries are full table scans:

May 23 2016, 5:31 AM · Performance, Bug Report
joshuaspence created T11011: Can't connect to MySQL server.
May 23 2016, 5:27 AM · Performance, Bug Report

May 13 2016

thoughtpolice moved T10635: Loading differential revision slow when lots of unit test messages exist from Backlog to Details on the Haskell.org board.
May 13 2016, 10:05 PM · Restricted Project, Haskell.org, Harbormaster, Performance
thoughtpolice added projects to T10635: Loading differential revision slow when lots of unit test messages exist: Harbormaster, Haskell.org.
May 13 2016, 10:03 PM · Restricted Project, Haskell.org, Harbormaster, Performance

Apr 6 2016

epriestley created T10738: Comment previews render remarkup blocks four times.
Apr 6 2016, 9:54 PM · Performance

Mar 23 2016

richardvanvelzen added a comment to T10635: Loading differential revision slow when lots of unit test messages exist.

In the extreme case where you have, say, a million tests, I'd expect there is probably little value in reporting each test into Harbormaster as a "pass", and your harness might want to summarize all passes into "999,998 additional tests passed" and submit two failures and one aggregate-pass.

Mar 23 2016, 6:16 PM · Restricted Project, Haskell.org, Harbormaster, Performance
epriestley added a comment to T10635: Loading differential revision slow when lots of unit test messages exist.

T9704 also discusses slowness on inserting the tests. That may be unnecessarily slow right now, but I don't expect clients to submit unlimited numbers of tests in one API call. Instead, submit tests in chunks (say, of 1K tests per page or whatever) by calling harbormaster.sendmessage repeatedly with a work status.

Mar 23 2016, 5:58 PM · Restricted Project, Haskell.org, Harbormaster, Performance
epriestley updated subscribers of T10635: Loading differential revision slow when lots of unit test messages exist.
Mar 23 2016, 5:49 PM · Restricted Project, Haskell.org, Harbormaster, Performance
epriestley added a comment to T10635: Loading differential revision slow when lots of unit test messages exist.

We don't currently have a sortable column on the unit message table, since pass, fail, etc., aren't naturally sortable by any key MySQL can construct.

Mar 23 2016, 5:34 PM · Restricted Project, Haskell.org, Harbormaster, Performance

Mar 21 2016

camilorojas added a comment to T10635: Loading differential revision slow when lots of unit test messages exist.
Mar 21 2016, 9:07 PM · Restricted Project, Haskell.org, Harbormaster, Performance
richardvanvelzen created T10635: Loading differential revision slow when lots of unit test messages exist.
Mar 21 2016, 6:07 PM · Restricted Project, Haskell.org, Harbormaster, Performance

Mar 7 2016

epriestley added a comment to T8612: Improve handling of "large" changesets.

See also T2225 for a concrete issue caused by showing enormous numbers of paths (unbearably slow page loads because of the raw wire filesize).

Mar 7 2016, 5:14 PM · Restricted Project, Performance, Differential

Mar 4 2016

aklapper added a comment to T8612: Improve handling of "large" changesets.

@paladox: Your last question was already answered before in T8612#163215

Mar 4 2016, 9:26 AM · Restricted Project, Performance, Differential

Mar 3 2016

paladox added a comment to T8612: Improve handling of "large" changesets.

Oh ok, is there a way to set it to unlimited so that a user can choose to do it per file but yes it is unlikely a user will review a million changes but it is always good to check.

Mar 3 2016, 8:07 PM · Restricted Project, Performance, Differential
chad added a comment to T8612: Improve handling of "large" changesets.

You can manually adjust the $hard_limit in your local installation here: https://secure.phabricator.com/diffusion/P/browse/master/src/applications/diffusion/controller/DiffusionCommitController.php;ac729278328ed9679229d11ba1eefdad784b59e2$148

Mar 3 2016, 7:51 PM · Restricted Project, Performance, Differential
epriestley added a comment to T8612: Improve handling of "large" changesets.

I don't intend to change that limit. I believe there is very little value in reviewing 1000+ file changes from the web UI, and that the 1K file limit is a reasonable one.

Mar 3 2016, 7:48 PM · Restricted Project, Performance, Differential
paladox added a comment to T8612: Improve handling of "large" changesets.

Yes that's what I would like to see please, please allow it to show that over large commits please.

Mar 3 2016, 7:46 PM · Restricted Project, Performance, Differential
epriestley added a comment to T8612: Improve handling of "large" changesets.

That commit is changing more than 1,000 files.

Mar 3 2016, 7:24 PM · Restricted Project, Performance, Differential
paladox added a comment to T8612: Improve handling of "large" changesets.

@epriestley oh because on https://phabricator.wikimedia.org/rAPAW76c6444cfb64e872b8b15688a8999d96af84a406 it dosent do that yet it is only chaning a 100 files.

Mar 3 2016, 7:01 PM · Restricted Project, Performance, Differential
epriestley added a comment to T8612: Improve handling of "large" changesets.

What about per file diff viewing it would hide them by default but add an option to each file that says show diff.

Mar 3 2016, 6:48 PM · Restricted Project, Performance, Differential