Handling Oversized RLS STRING Field of Concatenated IDs (>2047 chars)

I’ve run into a problem with an RLS dataset. The field used for validation is of type STRING and contains comma-separated, concatenated IDs that are used to filter data from datasets for the dashboard. However, this field includes too many IDs and its length exceeds 2,047 characters. Is there any workaround to handle this—for example, if I have several hundred concatenated IDs?

Hi @zubr

Welcome to the community!

Quick enforces a field length limit of 2047 Unicode characters for any value in a SPICE dataset, including fields used in permissions (RLS) datasets for row level security. Fields longer than this are truncated during ingestion, so having a single field with several hundred comma separated IDs easily exceeds this maximum, causing issues with filtering and data security.

Instead of storing all IDs in a single comma separated string per user, create multiple rows for each user ID pair. For example, if one user has access to 300 IDs, the permissions dataset should have 300 separate rows, each listing the user and one ID.

Please refer to the following documentation this might be helpful for you.

Hi @zubr,

Following up here as it’s been awhile since we last heard from you; did you have any additional questions regarding your initial post?

If we do not hear back within the next 3 business days, I’ll close out this topic.

Thank you

Hi @zubr,

Since we have not heard back, I’ll go ahead and close out this topic. However, if you have any additional questions, feel free to create a new post in the community.

Thank you

I am writing to confirm that I was able to successfully resolve the issue regarding the oversized Row-Level Security (RLS) string field. Your initial suggestion, Xclipse, to re-structure the permissions dataset by creating multiple rows for each user ID pair, rather than concatenating all IDs into a single string, was indeed the correct path forward.