From 1dc30fa6d9bad7a4d787b40385fb2b107abc90d8 Mon Sep 17 00:00:00 2001 From: Gyeongmin Park <ddogi1513@naver.com> Date: Fri, 6 Sep 2024 19:09:33 +0900 Subject: [PATCH 1/4] test --- src/com/walmartlabs/lacinia.clj | 6 ++++-- src/com/walmartlabs/lacinia/executor.clj | 4 +--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/com/walmartlabs/lacinia.clj b/src/com/walmartlabs/lacinia.clj index f3841642..fc261961 100644 --- a/src/com/walmartlabs/lacinia.clj +++ b/src/com/walmartlabs/lacinia.clj @@ -77,7 +77,7 @@ :or {timeout-ms 0 timeout-error {:message "Query execution timed out."}}} options context' (cond-> context - (:analyze-query options) query-analyzer/enable-query-analyzer) + (:analyze-query options) query-analyzer/enable-query-analyzer) execution-result (execute-parsed-query-async parsed-query variables context') result (do (resolve/on-deliver! execution-result *result) @@ -90,7 +90,9 @@ (when (instance? Throwable result) (throw result)) - result))) + (if (:analyze-query options) + (assoc-in result [:extensions :analysis] (query-analyzer/complexity-analysis parsed-query)) + result)))) (defn execute "Given a compiled schema and a query string, attempts to execute it. diff --git a/src/com/walmartlabs/lacinia/executor.clj b/src/com/walmartlabs/lacinia/executor.clj index 931cf2a3..4b8c6259 100644 --- a/src/com/walmartlabs/lacinia/executor.clj +++ b/src/com/walmartlabs/lacinia/executor.clj @@ -385,9 +385,7 @@ (let [enabled-selections (remove :disabled? selections) *errors (atom []) *warnings (atom []) - *extensions (if (::query-analyzer/enable? context) - (atom {:analysis (query-analyzer/complexity-analysis parsed-query)}) - (atom {})) + *extensions (atom {}) *resolver-tracing (when (::tracing/enabled? context) (atom [])) context' (assoc context constants/schema-key schema) From afc195382a1f527a0ad51ef6a72d92d699aae6f0 Mon Sep 17 00:00:00 2001 From: Gyeongmin Park <ddogi1513@naver.com> Date: Fri, 6 Sep 2024 19:19:47 +0900 Subject: [PATCH 2/4] test --- src/com/walmartlabs/lacinia.clj | 4 +--- src/com/walmartlabs/lacinia/executor.clj | 1 + 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/com/walmartlabs/lacinia.clj b/src/com/walmartlabs/lacinia.clj index fc261961..d436692b 100644 --- a/src/com/walmartlabs/lacinia.clj +++ b/src/com/walmartlabs/lacinia.clj @@ -90,9 +90,7 @@ (when (instance? Throwable result) (throw result)) - (if (:analyze-query options) - (assoc-in result [:extensions :analysis] (query-analyzer/complexity-analysis parsed-query)) - result)))) + result))) (defn execute "Given a compiled schema and a query string, attempts to execute it. diff --git a/src/com/walmartlabs/lacinia/executor.clj b/src/com/walmartlabs/lacinia/executor.clj index 4b8c6259..f8b3394d 100644 --- a/src/com/walmartlabs/lacinia/executor.clj +++ b/src/com/walmartlabs/lacinia/executor.clj @@ -421,6 +421,7 @@ (::tracing/validation context) @*resolver-tracing) errors (assoc :errors (distinct errors)) + (and (nil? errors) (::query-analyzer/enable? context)) (assoc-in [:extension :analysis] (query-analyzer/complexity-analysis parsed-query)) warnings (assoc-in [:extensions :warnings] (distinct warnings)))))))) (catch Throwable t (resolve/deliver! result-promise t))))] From 10e2d91153bf32aeef3b7af87d19e839054455bd Mon Sep 17 00:00:00 2001 From: Gyeongmin Park <ddogi1513@naver.com> Date: Fri, 6 Sep 2024 19:22:01 +0900 Subject: [PATCH 3/4] nit --- src/com/walmartlabs/lacinia/executor.clj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/walmartlabs/lacinia/executor.clj b/src/com/walmartlabs/lacinia/executor.clj index f8b3394d..b3c47c36 100644 --- a/src/com/walmartlabs/lacinia/executor.clj +++ b/src/com/walmartlabs/lacinia/executor.clj @@ -421,7 +421,7 @@ (::tracing/validation context) @*resolver-tracing) errors (assoc :errors (distinct errors)) - (and (nil? errors) (::query-analyzer/enable? context)) (assoc-in [:extension :analysis] (query-analyzer/complexity-analysis parsed-query)) + (and (nil? errors) (::query-analyzer/enable? context)) (assoc-in [:extensions :analysis] (query-analyzer/complexity-analysis parsed-query)) warnings (assoc-in [:extensions :warnings] (distinct warnings)))))))) (catch Throwable t (resolve/deliver! result-promise t))))] From c77769adf116793475f7b80564cc3c99c5a0059a Mon Sep 17 00:00:00 2001 From: Gyeongmin Park <ddogi1513@naver.com> Date: Fri, 6 Sep 2024 19:23:09 +0900 Subject: [PATCH 4/4] test --- src/com/walmartlabs/lacinia/executor.clj | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/com/walmartlabs/lacinia/executor.clj b/src/com/walmartlabs/lacinia/executor.clj index b3c47c36..a83c2a91 100644 --- a/src/com/walmartlabs/lacinia/executor.clj +++ b/src/com/walmartlabs/lacinia/executor.clj @@ -412,6 +412,7 @@ (let [errors (seq @*errors) warnings (seq @*warnings) extensions @*extensions] + (prn errors) (resolve/deliver! result-promise (cond-> {:data (schema/collapse-nulls-in-map selected-data)} (seq extensions) (assoc :extensions extensions) @@ -420,7 +421,7 @@ (::tracing/parsing parsed-query) (::tracing/validation context) @*resolver-tracing) - errors (assoc :errors (distinct errors)) + errors (assoc :errors (distinct errors)) (and (nil? errors) (::query-analyzer/enable? context)) (assoc-in [:extensions :analysis] (query-analyzer/complexity-analysis parsed-query)) warnings (assoc-in [:extensions :warnings] (distinct warnings)))))))) (catch Throwable t