diff --git a/src/main/java/com/googlesource/gerrit/plugins/forcedraft/ForceDraft.java b/src/main/java/com/googlesource/gerrit/plugins/forcedraft/ForceDraft.java
index fe8991c..1554c58 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/forcedraft/ForceDraft.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/forcedraft/ForceDraft.java
@@ -22,6 +22,7 @@
 import com.google.gerrit.reviewdb.client.PatchSet;
 import com.google.gerrit.reviewdb.server.ReviewDb;
 import com.google.gerrit.server.config.GerritServerConfig;
+import com.google.gerrit.server.index.change.ChangeIndexer;
 import com.google.gerrit.sshd.CommandMetaData;
 import com.google.gerrit.sshd.SshCommand;
 import com.google.gerrit.common.data.GlobalCapability;
@@ -30,6 +31,8 @@
 import com.google.inject.Inject;
 import com.google.inject.Provider;
 
+import java.io.IOException;
+
 @RequiresCapability(value = GlobalCapability.ADMINISTRATE_SERVER, scope = CapabilityScope.CORE)
 @CommandMetaData(name = "force-draft", description = "changes patch set to draft")
 public class ForceDraft extends SshCommand {
@@ -54,6 +57,9 @@
   @Inject
   private @GerritServerConfig Config config;
 
+  @Inject
+  private ChangeIndexer changeIndexer;
+
   @Argument(index = 0, required = true, metaVar = "{CHANGE,PATCHSET}",
       usage = "<change, patch set> to be changed to draft")
   private void addPatchSetId(final String token) {
@@ -213,13 +219,14 @@
   /**
    * Updates PatchSet and, if applicable, parent Change.
    *
-   * @throws OrmException
+   * @throws OrmException if an error occur while updating the change in the DB.
+   * @throws IOException if an error occur while indexing the change.
    */
-  private void updatePatchSet() throws OrmException {
+  private void updatePatchSet() throws OrmException, IOException {
     Change.Status changeStatus = parentChange.getStatus();
     if (changeStatus == Change.Status.NEW) {
       setPatchSetAsDraft();
-      updateChange();
+      changeIndexer.index(dbProvider.get(), updateChange());
     } else {
       sendUserInfo("Unable to set patch set as draft, change is "
           + getStatusName(changeStatus));
