From aa51a7e3e3530748e8693a742aa54eb8ad26b990 Mon Sep 17 00:00:00 2001
From: Shylock Hg <33566796+Shylock-Hg@users.noreply.github.com>
Date: Mon, 28 Dec 2020 14:28:44 +0800
Subject: [PATCH] The compaction and flush job need space too. (#529)

---
 src/validator/AdminJobValidator.h           |  2 +-
 tests/tck/features/job/SpaceRequire.feature | 29 +++++++++++++++++++++
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 tests/tck/features/job/SpaceRequire.feature

diff --git a/src/validator/AdminJobValidator.h b/src/validator/AdminJobValidator.h
index 73b129a2..b2eac0b0 100644
--- a/src/validator/AdminJobValidator.h
+++ b/src/validator/AdminJobValidator.h
@@ -36,9 +36,9 @@ private:
                     case meta::cpp2::AdminCmd::REBUILD_TAG_INDEX:
                     case meta::cpp2::AdminCmd::REBUILD_EDGE_INDEX:
                     case meta::cpp2::AdminCmd::STATS:
-                        return true;
                     case meta::cpp2::AdminCmd::COMPACT:
                     case meta::cpp2::AdminCmd::FLUSH:
+                        return true;
                     case meta::cpp2::AdminCmd::DATA_BALANCE:
                     case meta::cpp2::AdminCmd::UNKNOWN:
                         return false;
diff --git a/tests/tck/features/job/SpaceRequire.feature b/tests/tck/features/job/SpaceRequire.feature
new file mode 100644
index 00000000..dbe07b65
--- /dev/null
+++ b/tests/tck/features/job/SpaceRequire.feature
@@ -0,0 +1,29 @@
+Feature: Submit job space requirements
+
+  Scenario: submit job require space
+    Given an empty graph
+    When executing query:
+      """
+      SUBMIT JOB COMPACT;
+      """
+    Then a SemanticError should be raised at runtime:
+    When executing query:
+      """
+      SUBMIT JOB FLUSH;
+      """
+    Then a SemanticError should be raised at runtime:
+    When executing query:
+      """
+      SUBMIT JOB STATS;
+      """
+    Then a SemanticError should be raised at runtime:
+    When executing query:
+      """
+      REBUILD TAG INDEX not_exists_index;
+      """
+    Then a SemanticError should be raised at runtime:
+    When executing query:
+      """
+      REBUILD EDGE INDEX not_exists_index;
+      """
+    Then a SemanticError should be raised at runtime:
-- 
GitLab