Page MenuHomePhabricator

perftweaks: disable effectflag calculation
ClosedPublic

Authored by quark on Nov 27 2017, 12:29 PM.

Details

Reviewers
durham
Group Reviewers
Restricted Project
Commits
rFBHGXe23b283119a4: perftweaks: disable effectflag calculation
Summary

Calculating the effectflag takes 86ms, which is 56% of an 151ms amend:

151         | amend                           cmdutil.py:3109
 35          \ wrapper                        localrepo.py:141
 35           | commitctx                     shallowrepo.py:160
 34           | wrapper                       localrepo.py:141
 34           | commitctx                     localrepo.py:1970
 30           | registernew                   phases.py:490
 30           | registernew                   phases.py:328
 26           | _retractboundary              phases.py:408
101          \ cleanupnodeswrapper            tweakdefaults.py:808
 87           | cleanupnodes                  hiddenoverride.py:150
 87           | cleanupnodes                  scmutil.py:630
 86           | _createmarkers                tweakdefaults.py:1030
 86           | _createmarkers                inhibit.py:70
 86           | createmarkers                 hiddenoverride.py:137
 86           | createmarkers                 obsolete.py:1045
 85           | geteffectflag                 obsutil.py:391 <<<<<<<<<
 85           | _cmpdiff                      obsutil.py:369
 84           | _getdifflines (4 times)       obsutil.py:360
 84           | diff (4 times)                patch.py:2298
 82           | diffhunks (2 times)           patch.py:2345
 53           | difffn (2 times)              patch.py:2443
 53           | trydiff (2 times)             remotefilelog/__init__.py:498
 53           | getfilectx (4 times)          patch.py:2363
 53           | closure (6 times)             extensions.py:343
 53           | filectx (6 times)             remotefilelog/__init__.py:479

We don't use effectflag. So let's just disable it.

Diff Detail

Repository
rFBHGX Facebook Mercurial Extensions
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

quark created this revision.Nov 27 2017, 12:29 PM
Herald added a reviewer: Restricted Project. · View Herald TranscriptNov 27 2017, 12:29 PM
durham accepted this revision.Nov 27 2017, 10:23 PM
durham added a subscriber: durham.

Ha! It computes the entire diff of the commit to compute the flag. Sigh...

This revision is now accepted and ready to land.Nov 27 2017, 10:23 PM
quark updated this revision to Diff 3992.Nov 29 2017, 8:40 PM
This revision was automatically updated to reflect the committed changes.