diff --git a/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php b/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php index 08d9688..3349275 100644 --- a/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php +++ b/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php @@ -705,7 +705,7 @@ protected function buildQuery($ids, $revision_ids = FALSE) { $query->addTag($this->entityTypeId . '_load_multiple'); if ($revision_ids) { - $query->join($this->revisionTable, 'revision', "revision.{$this->idKey} = base.{$this->idKey}"); + $query->join($this->revisionTable, 'revision', "revision.{$this->idKey} = base.{$this->idKey} AND revision.{$this->revisionKey} IN (:revisionIds[])", [':revisionIds[]' => $revision_ids]); } elseif ($this->revisionTable) { $query->join($this->revisionTable, 'revision', "revision.{$this->revisionKey} = base.{$this->revisionKey}"); @@ -742,9 +742,6 @@ protected function buildQuery($ids, $revision_ids = FALSE) { if ($ids) { $query->condition("base.{$this->idKey}", $ids, 'IN'); } - if ($revision_ids) { - $query->condition("revision.{$this->revisionKey}", $revision_ids, 'IN'); - } return $query; }