Close or Kill a node js realm sync process for a synced realm

46 Views Asked by At

Realm process does not exit when I am closing realm only in case of synced realm. My main issue is I am using Synced Realm with Electron and when I close the electron application, it keeps running in background (doesn’t get killed, the synced realm process keeps running)

I tried opening a non synced realm and the process was exiting gracefully.

Is there a way to kill the realm sync process?

Tried with non synced realm and it was working fine. Problem is arising only with synced realm

DB Config -

{
    path: DB_PATH,
    schema: SCHEMAS,
    sync: {
        user,
        flexible: true,
        initialSubscriptions: {
            update: (subs, realm) => {
                //Store subscriptions --------------------------------------------------------
                subs.add(realm.objects(BrandModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(CategoryModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(CustomerModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(DiscountModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(EmployeeModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(ExpenseModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(ProductModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(PermissionRoleModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(PurchaseModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(SaleModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(SupplierModel).filtered("store_id == $0", user.profile.userId));
                subs.add(realm.objects(CashDrawerModel).filtered("store_id == $0", user.profile.userId));

                //Global subscriptions -----------------------------------------------------------
                subs.add(realm.objects(TypeModel));
                subs.add(realm.objects(BrandModel).filtered("store_id == $0", "GLOBAL"));
                subs.add(realm.objects(CategoryModel).filtered("store_id == $0", "GLOBAL"));
            }
        },
        onError: handleSyncError,
        newRealmFileBehavior: openRealmBehaviorConfig,
        existingRealmFileBehavior: openRealmBehaviorConfig,
    },
}
0

There are 0 best solutions below