diff --git a/src/metabase/driver/druid.clj b/src/metabase/driver/druid.clj index 56d14e27f58e68781ef83fb6280e162ed5b3f2df..31a0589f14d2bf0a0701a349a32f91536aeeaa66 100644 --- a/src/metabase/driver/druid.clj +++ b/src/metabase/driver/druid.clj @@ -65,12 +65,12 @@ ;;; ### Sync (defn- describe-table-field [druid-field-type field-name] - (merge {:name field-name} - ;; all dimensions are Strings, and all metrics as JS Numbers, I think (?) - ;; string-encoded booleans + dates are treated as strings (!) - (if (= :metric druid-field-type) - {:field-type :metric, :base-type :FloatField} - {:field-type :dimension, :base-type :TextField}))) + ;; all dimensions are Strings, and all metrics as JS Numbers, I think (?) + ;; string-encoded booleans + dates are treated as strings (!) + {:name field-name + :base-type (if (= :metric druid-field-type) + :FloatField + :TextField)}) (defn- describe-table [database table] (let [details (:details database) @@ -81,7 +81,6 @@ ;; every Druid table is an event stream w/ a timestamp field [{:name "timestamp" :base-type :DateTimeField - :field-type :dimension :pk? true}] (map (partial describe-table-field :dimension) dimensions) (map (partial describe-table-field :metric) metrics)))})) diff --git a/test/metabase/test/data.clj b/test/metabase/test/data.clj index 01367ce1f94d845f7be9741969bb0fa1a93bb192..905218634bf9059f3e77c629389cb11712f29100 100644 --- a/test/metabase/test/data.clj +++ b/test/metabase/test/data.clj @@ -188,7 +188,7 @@ ;; Sync the database (sync-database/sync-database! db) - ;; Add extra metadata like Field field-type, base-type, etc. + ;; Add extra metadata like Field base-type, etc. (doseq [^TableDefinition table-definition (:table-definitions database-definition)] (let [table-name (:table-name table-definition) table (delay (or (i/metabase-instance table-definition db) diff --git a/test/metabase/test/data/interface.clj b/test/metabase/test/data/interface.clj index 70fb810a60307c8ca225ea09245992ac96c3bf3f..07d5660f2f73db46a2cb5f47991708fa54aa9e39 100644 --- a/test/metabase/test/data/interface.clj +++ b/test/metabase/test/data/interface.clj @@ -131,7 +131,7 @@ (defn create-field-definition "Create a new `FieldDefinition`; verify its values." - ^FieldDefinition [{:keys [field-name base-type field-type special-type visibility-type fk], :as field-definition-map}] + ^FieldDefinition [field-definition-map] (s/validate FieldDefinition (map->FieldDefinition field-definition-map))) (defn create-table-definition