phacility/phabricator · warning · Exception

Query does not match any objects.

Error message

Query does not match any objects.

What it means

Before building the edit UI, the bulk engine verifies the query matched at least one object (objectList). An empty result set aborts the flow since there is nothing to bulk edit.

Source

Thrown at src/applications/transactions/bulk/PhabricatorBulkEngine.php:390

              'table',
              array(
                'sigil' => 'bulk-actions',
                'class' => 'bulk-edit-table',
              ),
              '')))
      ->appendChild(
        id(new AphrontFormSubmitControl())
          ->setValue(pht('Continue'))
          ->addCancelButton($cancel_uri));
  }

  private function buildEditResponse() {
    $viewer = $this->getViewer();
    $controller = $this->getController();
    $request = $controller->getRequest();

    if (!$this->objectList) {
      throw new Exception(pht('Query does not match any objects.'));
    }

    if (!$this->editableList) {
      throw new Exception(
        pht(
          'Query does not match any objects you have permission to edit.'));
    }

    // Restrict the selection set to objects the user can actually edit.
    $objects = array_intersect_key($this->editableList, $this->targetList);

    if (!$objects) {
      throw new Exception(
        pht(
          'You have not selected any objects to edit.'));
    }

    $raw_xactions = $request->getStr('xactions');

View on GitHub (pinned to 5720a38cfe)

Solutions

  1. Loosen or fix the query constraints until it matches objects; test the same query in the normal search UI first
  2. Recreate the saved query if it is stale
  3. Confirm you are querying an object type the search engine actually covers
Defensive patterns

Strategy: validation

Validate before calling

// Run the same saved query first and require a non-empty result set.
$query = $search_engine->buildQueryFromSavedQuery($saved)
  ->setViewer($viewer);
$objects = $query->execute();
if (!$objects) {
  // tell the user the query matches nothing; do not enter the bulk flow
}

Prevention

When it happens

Trigger: Entering bulk edit from a saved query whose constraints match zero objects: overly narrow or contradictory filters, or a stale saved query whose referenced projects/labels no longer exist.

Common situations: Old saved queries predating renames or deletions; filters that combine mutually exclusive constraints.

Related errors


AI-assisted analysis of phacility/phabricator@5720a38cfe (2026-08-21). Data as JSON: /api/errors/b70b00061f91be67. Report an issue: GitHub.