Steps to reproduce:
- PHP 8.2.10; Phorge at 91faf16cace9308440087d64f17c068e04313c50
- Create 900 tasks with a View Policy set to User1
- Log into Phorge as User2
- As User2, go to see all transaction logs in the Feed at http://phorge.localhost/feed/transactions/query/all/
Actual outcome:
[2023-09-21 11:08:47] EXCEPTION: (Exception) Query (of class "ManiphestTransactionQuery") overheated: examined more than 1,010 raw rows without finding 101 visible objects. at [<phorge>/src/infrastructure/query/policy/PhabricatorPolicyAwareQuery.php:342] arcanist(head=customOAuthUrlencodeNull, ref.master=df6c315ace5f, ref.customOAuthUrlencodeNull=c69b9749027f), phorge(head=master, ref.master=91faf16cace9) #0 <#2> PhabricatorPolicyAwareQuery::execute() called at [<phorge>/src/applications/feed/query/PhabricatorFeedTransactionQuery.php:107] #1 <#2> PhabricatorFeedTransactionQuery::loadPage() called at [<phorge>/src/infrastructure/query/policy/PhabricatorPolicyAwareQuery.php:251] #2 <#2> PhabricatorPolicyAwareQuery::execute() called at [<phorge>/src/infrastructure/query/policy/PhabricatorCursorPagedPolicyAwareQuery.php:400] #3 <#2> PhabricatorCursorPagedPolicyAwareQuery::executeWithCursorPager(AphrontCursorPagerView) called at [<phorge>/src/applications/search/engine/PhabricatorApplicationSearchEngine.php:1038] #4 <#2> PhabricatorApplicationSearchEngine::executeQuery(PhabricatorFeedTransactionQuery, AphrontCursorPagerView) called at [<phorge>/src/applications/search/controller/PhabricatorApplicationSearchController.php:256] #5 <#2> PhabricatorApplicationSearchController::processSearchRequest() called at [<phorge>/src/applications/search/controller/PhabricatorApplicationSearchController.php:91] #6 <#2> PhabricatorApplicationSearchController::processRequest() called at [<phorge>/src/aphront/AphrontController.php:29] #7 <#2> AphrontController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/AphrontController.php:71] #8 <#2> AphrontController::delegateToController(PhabricatorApplicationSearchController) called at [<phorge>/src/applications/search/engine/PhabricatorApplicationSearchEngine.php:50] #9 <#2> PhabricatorApplicationSearchEngine::buildResponse() called at [<phorge>/src/applications/feed/controller/PhabricatorFeedTransactionListController.php:13] #10 <#2> PhabricatorFeedTransactionListController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284] #11 phlog(Exception) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41] #12 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, Exception) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751] #13 AphrontApplicationConfiguration::handleThrowable(Exception) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296] #14 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203] #15 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]
See also:
- There's a great explanation in https://secure.phabricator.com/T13133 that the general underlying issue is likely not fixable.
- https://secure.phabricator.com/T13349#248047 with its https://secure.phabricator.com/D20704
- https://secure.phabricator.com/T13416 with its https://secure.phabricator.com/D20856
- maybe https://secure.phabricator.com/T11773
Upstreamed from https://phabricator.wikimedia.org/T344232