Hi All,
I'm trying to evalaute MB sandboxing feature using user attribute feature of MB, I have created test user group with sandboxed access on the table and collection as shown in the below snapshot.
After logging in as the test user and trying to view the collection assigned to him, I'm facing as query failure error as below:
2-12 16:36:35 e[1mWARN middleware.process-userland-querye[0m :: Query failure {:status :failed,
:class clojure.lang.ExceptionInfo,
:error "Input to table does not match schema: \n\n\t e[0;33m [(named (not (integer? nil)) table-id)] e[0m \n\n",
:stacktrace
Below is the query which is failing
:query
{:source-query
{:source-table 9,
:filter [:= [:field-id 74] [:value 1 {:base_type :type/Integer, :special_type :type/Number, :database_type "java.lang.Integer"}]],
:fields [[:field-id 72] [:field-id 76] [:field-id 73] [:field-id 74] [:datetime-field [:field-id 75] :default] [:field-id 77]],
:gtap? true},
:fields [[:field-id 81] [:field-id 86] [:field-id 79] [:field-id 83] [:field-id 82] [:field-id 80] [:field-id 72] [:field-id 76] [:field-id 74] [:field-id 75]],
:source-metadata
[{:name "_id", :id 72, :table_id 9, :display_name "ID", :base_type :type/MongoBSONID, :special_type :type/PK, :fingerprint nil, :settings nil}
{:name "nsid", :id 76, :table_id 9, :display_name "Ns ID", :base_type :type/Text, :special_type nil, :fingerprint nil, :settings nil}
{:name "payload", :id 73, :table_id 9, :display_name "Payload", :base_type :type/Dictionary, :special_type nil, :fingerprint nil, :settings nil}
{:name "storage_id", :id 74, :table_id 9, :display_name "Storage ID", :base_type :type/Integer, :special_type :type/Number, :fingerprint nil, :settings nil}
{:table_id 9, :special_type :type/UNIXTimestampMilliseconds, :unit :default, :name "timestamp", :settings nil, :id 75, :display_name "Timestamp", :fingerprint nil, :base_type :type/Float}
{:name "type", :id 77, :table_id 9, :display_name "Type", :base_type :type/Text, :special_type nil, :fingerprint nil, :settings nil}],
:limit 2000}},
:native nil,
:ex-data {:type :schema.core/error, :value [nil], :error [(named (not (integer? nil)) table-id)]}}
I guess this a type conversion error? the user attribute which I'm using here is 'storage_id' which is of 'integer' type in mongodb atlas cluster and 'number' type in metabase.
i've tried with all the possible data types in metabase and resulted the same output. Anyone who've encountered this issue please point me to any lead that can help to fix this.
Thanks in advance!