Flexible Sync - Object relationship

Hi, I’m experimenting with flexible-sync technology.
I would like to download on the mobile app only the records that interest a certain customer, to do this I would have to use a relationship between two objects.
Why is this not allowed? On MongoDB the relationships between objects are realized through string fields containing the _id field.
This is a limitation that forces me to redesign the data model.

Thanks
Luigi

1 Like

Can you clarify what exactly is not allowed? Generally, relationships are supported by Flexible Sync.

In Flex Sync Page is written:

" Select up to 10 queryable fields from your Realm JSON Schema to construct queries on. Note that the _id field is always queryable.

Adding/removing fields while Sync is running can have damaging consequences. Learn more about the risks of adding/removing fields while Sync is enabled.

Only top-level, primitive fields containing scalars are provided here."

this is my code (Provinciale is a Realm Object, not a primitive fields)

var associati = Realm.All().Where(a=>a.Provinciale == provinciale);

Realm.Subscriptions.Update(() =>
{
Realm.Subscriptions.Add(associati);
});

await Realm.Subscriptions.WaitForSynchronizationAsync();

this is error received:

Received QUERY_ERROR “Client provided query with bad syntax: unsupported query for table “Associato”: matching two properties to each other is not yet supported in server-side queries” (error_code=300, query_version=2)

Thanks
Luigi

I see - yes, that’s a limitation we currently have, but are looking to lift it.

cc @Ian_Ward for visibility.

Thanks Nikola.

Is this feature expected to be released soon?
The lack of this feature prevents migration from PartitionSynch to FlexSynch

Thanks
Luigi

We don’t have a timeframe as we’re in the early stages of researching it.