From b9dbbfdd5a525f5b4885879f4860cb9d7d094cfd Mon Sep 17 00:00:00 2001 From: Cam Saul <cam@geotip.com> Date: Mon, 6 Jul 2015 15:37:47 -0700 Subject: [PATCH] everything is working nicely :) --- src/metabase/driver/mongo/query_processor.clj | 4 ++-- src/metabase/driver/query_processor.clj | 2 +- .../driver/query_processor/expand.clj | 8 ++++---- test/metabase/driver/query_processor_test.clj | 19 +++++++++---------- test/metabase/test/util/mql.clj | 4 ++-- 5 files changed, 18 insertions(+), 19 deletions(-) diff --git a/src/metabase/driver/mongo/query_processor.clj b/src/metabase/driver/mongo/query_processor.clj index 3e4064e6630..3d14ffb503e 100644 --- a/src/metabase/driver/mongo/query_processor.clj +++ b/src/metabase/driver/mongo/query_processor.clj @@ -41,8 +41,8 @@ (with-mongo-connection [_ database] (case (keyword query-type) :query (let [generated-query (process-structured (:query query))] - (when-not false #_qp/*disable-qp-logging* - (log/info (u/format-color 'green "\nMONGER FORM:\n%s\n" + (when-not qp/*disable-qp-logging* + (log/debug (u/format-color 'green "\nMONGER FORM:\n%s\n" (->> generated-query (walk/postwalk #(if (symbol? %) (symbol (name %)) %)) ; strip namespace qualifiers from Monger form u/pprint-to-str) "\n"))) ; so it's easier to read diff --git a/src/metabase/driver/query_processor.clj b/src/metabase/driver/query_processor.clj index ad9ff9caef1..c5a8a229a7d 100644 --- a/src/metabase/driver/query_processor.clj +++ b/src/metabase/driver/query_processor.clj @@ -460,7 +460,7 @@ "Process a QUERY and return the results." [driver query] (when-not *disable-qp-logging* - (log/info (u/format-color 'blue "\nQUERY:\n%s" (u/pprint-to-str query)))) + (log/debug (u/format-color 'blue "\nQUERY:\n%s" (u/pprint-to-str query)))) ((case (keyword (:type query)) :native process-native :query process-structured) diff --git a/src/metabase/driver/query_processor/expand.clj b/src/metabase/driver/query_processor/expand.clj index 668a94726a4..38990dc3ac2 100644 --- a/src/metabase/driver/query_processor/expand.clj +++ b/src/metabase/driver/query_processor/expand.clj @@ -401,7 +401,7 @@ ;; ### Parsers (defparser parse-filter-subclause - ["INSIDE" (lat-field :guard integer?) (lon-field :guard integer?) (lat-max :guard number?) (lon-min :guard number?) (lat-min :guard number?) (lon-max :guard number?)] + ["INSIDE" (lat-field :guard Field?) (lon-field :guard Field?) (lat-max :guard number?) (lon-min :guard number?) (lat-min :guard number?) (lon-max :guard number?)] (map->Filter:Inside {:filter-type :inside :lat {:field (ph lat-field) :min (ph lat-field lat-min) @@ -410,18 +410,18 @@ :min (ph lon-field lon-min) :max (ph lon-field lon-max)}}) - ["BETWEEN" (field-id :guard integer?) (min :guard number?) (max :guard number?)] + ["BETWEEN" (field-id :guard Field?) min max] (map->Filter:Between {:filter-type :between :field (ph field-id) :min-val (ph field-id min) :max-val (ph field-id max)}) - [(filter-type :guard (partial contains? #{"=" "!=" "<" ">" "<=" ">="})) (field-id :guard integer?) val] + [(filter-type :guard (partial contains? #{"=" "!=" "<" ">" "<=" ">="})) (field-id :guard Field?) val] (map->Filter:Field+Value {:filter-type (keyword filter-type) :field (ph field-id) :value (ph field-id val)}) - [(filter-type :guard string?) (field-id :guard integer?)] + [(filter-type :guard string?) (field-id :guard Field?)] (map->Filter:Field {:filter-type (case filter-type "NOT_NULL" :not-null "IS_NULL" :is-null) diff --git a/test/metabase/driver/query_processor_test.clj b/test/metabase/driver/query_processor_test.clj index 3c17a117771..503d16155f6 100644 --- a/test/metabase/driver/query_processor_test.clj +++ b/test/metabase/driver/query_processor_test.clj @@ -904,11 +904,10 @@ ;; Test that we can filter on an FK field (datasets/expect-with-datasets #{:h2 :postgres} 60 - (-> (query-with-temp-db defs/tupac-sightings - :source_table &sightings:id - :aggregation ["count"] - :filter ["=" ["fk->" &sightings.category_id:id &categories.id:id] 8]) - :data :rows first first)) + (Q run against tupac-sightings + return :data :rows first first + aggregate count of sightings + filter = category_id->categories.id 8)) ;; THE 10 MOST RECENT TUPAC SIGHTINGS (!) @@ -978,17 +977,17 @@ ;;; Nested Field in FILTER ;; Get the first 10 tips where tip.venue.name == "Kyle's Low-Carb Grill" (expect - [[8 "Kyle's Low-Carb Grill"] - [67 "Kyle's Low-Carb Grill"] - [80 "Kyle's Low-Carb Grill"] - [83 "Kyle's Low-Carb Grill"] + [[8 "Kyle's Low-Carb Grill"] + [67 "Kyle's Low-Carb Grill"] + [80 "Kyle's Low-Carb Grill"] + [83 "Kyle's Low-Carb Grill"] [295 "Kyle's Low-Carb Grill"] [342 "Kyle's Low-Carb Grill"] [417 "Kyle's Low-Carb Grill"] [426 "Kyle's Low-Carb Grill"] [470 "Kyle's Low-Carb Grill"]] (Q run against geographical-tips using mongo - return :data :rows (map (fn [[id _ _ {venue-name :name}]] [id venue-name])) + return :data :rows (map (fn [[id _ _ _ {venue-name :name}]] [id venue-name])) aggregate rows of tips filter = venue...name "Kyle's Low-Carb Grill" order _id diff --git a/test/metabase/test/util/mql.clj b/test/metabase/test/util/mql.clj index 82bf46a1bd3..483fd89faf4 100644 --- a/test/metabase/test/util/mql.clj +++ b/test/metabase/test/util/mql.clj @@ -73,8 +73,8 @@ (defmacro Q:expand-inner [& forms] {:database 'db-id - :type :query - :query `(Q:expand-clauses {} ~@forms)}) + :type :query + :query `(Q:expand-clauses {} ~@forms)}) (defmacro Q:wrap-fallback-captures [form] `(symbol-macrolet [~'db-id (data/db-id) -- GitLab