diff --git a/core/lib/Drupal/Core/Entity/EntityStorageBase.php b/core/lib/Drupal/Core/Entity/EntityStorageBase.php
index f583121..6f26e49 100644
--- a/core/lib/Drupal/Core/Entity/EntityStorageBase.php
+++ b/core/lib/Drupal/Core/Entity/EntityStorageBase.php
@@ -209,7 +209,7 @@ protected function doCreate(array $values) {
    * {@inheritdoc}
    */
   public function load($id) {
-    $entities = $this->loadMultiple(array($id));
+    $entities = $id ? $this->loadMultiple(array($id)) : [];
     return isset($entities[$id]) ? $entities[$id] : NULL;
   }
 
diff --git a/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php b/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php
index 391e3444..3054706 100644
--- a/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php
+++ b/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorage.php
@@ -569,9 +569,11 @@ protected function loadFromSharedTables(array &$values, array &$translations) {
   protected function doLoadRevisionFieldItems($revision_id) {
     $revision = NULL;
 
-    // Build and execute the query.
-    $query_result = $this->buildQuery(array(), $revision_id)->execute();
-    $records = $query_result->fetchAllAssoc($this->idKey);
+    if ($revision_id) {
+      // Build and execute the query.
+      $query_result = $this->buildQuery(array(), $revision_id)->execute();
+      $records = $query_result->fetchAllAssoc($this->idKey);
+    }
 
     if (!empty($records)) {
       // Convert the raw records to entity objects.
diff --git a/core/modules/system/src/Tests/Entity/EntityRevisionsTest.php b/core/modules/system/src/Tests/Entity/EntityRevisionsTest.php
index bee4ec2..622e902 100644
--- a/core/modules/system/src/Tests/Entity/EntityRevisionsTest.php
+++ b/core/modules/system/src/Tests/Entity/EntityRevisionsTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\system\Tests\Entity;
 
+use Drupal\Core\Entity\ContentEntityInterface;
 use Drupal\simpletest\WebTestBase;
 
 /**
@@ -49,6 +50,21 @@ public function testRevisions() {
   }
 
   /**
+   * Check loading the revision.
+   */
+  public function testLoadRevisions() {
+    $entity_test_storage = $this->container->get('entity_type.manager')->getStorage('entity_test_rev');
+
+    $result = $entity_test_storage->loadRevision(null);
+    $this->assertFalse($result instanceof ContentEntityInterface, 'No entity was returned');
+
+    $entity_test_storage->create()->save();
+
+    $result = $entity_test_storage->loadRevision(null);
+    $this->assertFalse($result instanceof ContentEntityInterface, 'No entity was returned');
+  }
+
+  /**
    * Executes the revision tests for the given entity type.
    *
    * @param string $entity_type
