Evaluating Data Sandboxing With MongoDBAtlas Cluster

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!

Hi @LokeshPalacharla
For Enterprise Edition, please use email support AT metabase.com - and always include “Diagnostic Info” from Admin > Troubleshooting.

hey @flamber thanks for your support but, I’m trying out the trail version of metabase and I’m afraid the email support doesn’t come with free trial!

@LokeshPalacharla Where have you seen that the trial does not come with support? We want you to succeed in your trial, so you continue to become a customer :slight_smile:

@flamber This made me think so, but filled out a ‘get-in’ touch form with the request. Let’s see! my fortune cookie says something wonderful gonna come up, hopefully that works :smile:

Update from support: Metabase don’t support non-SQL databases for data sandboxing, so the native MongoDB connection won’t work.

1 Like