I am facing some issue where data on my pages (especially repeating groups) are not getting updated in time. Sometimes they don’t get updated at all and I need to refresh the page totally to see the data updated.
I saw a few threads where people faced this problem and those were apparently resolved in past. Here are a few threads I saw:
I am deliberately not reporting a bug for this with @support, as bug form asks for steps to reproduce etc, and in my case it happens often but not all the time. And in absence of being able to show a “definitively reproducible bug”, the team refuses to accept it as a bug itself.
This is becoming a serious concern for us. We have a group of customer support executives who have a screen to work on for latest tasks. These tasks are shown in a table (Repeating Group). The tasks keep getting added/modified on a regular frequency by multiple people (Other executives, and the taskers performing tasks)
Their job depends heavily on the table in the screen showing correct values. The data are not getting updated, rows are having some columns right, some columns wrong, custom states are not getting set correctly
How do we get Bubble team, community etc get more attention to this issue?
Is it possible that there is something wrong with our setup? In what ways? I have checked in multiple ways.
Could it be because I migrated my page to new responsive engine? Are RGs in new responsive engine slow to update?
Hi, all the cases I posted above were not in the new responsive engine so I believe it doesn’t make a difference. You might want to try to open a bug as, over here, nobody is caring.
Good luck and keep me posted please.
I found one thread where another suggestion was given. I am trying that suggestion now. Will check it today how it goes. You can try in your application too to see if it works in your case. Here’s the solution:
Hi, thanks for sharing but for me it doesn’t work. I tried adding a “go to page” every 5 sec and also when the app is back from idle. RGs do not refresh in 50% of the cases. (they don’t refresh at all even after a few minutes). I must revert to the ugly refresh page.
It is really puzzling me that we are the only ones with this problem. Either the entire Bubble community don’t care about a huge problem or our apps have some specific problem. Mine is wrapped with BDK but I was told that a wrapping cannot interfere with the bubble page pinging the server. Is your app wrapped?
Has anyone seen that migrating to the new responsive engine definitely solves this problem? Our app is really complex single page, and the migration would be huge effort…but if it definitely fixes this massive issue for us, we would do it.
Also, has anyone figured out steps to replicate this 100% of the time? Many of our users complain about it, but I cannot for the life of me replicate it in the Dev version.
This issue keeps troubling us. However, one of the members @aj11 had a suggestion which could possibly work. It works for him at least.
I haven’t been able to try it yet though. I am producing it here for others’ help if they want to try it and see if it works.
Download a plug-in for creating a random string on command.
Create a state on your page for “cache buster”.
Add a search criteria to the search for the RG you want to keep updated for:
unique id <> cache buster
Then create a conditional that runs every time the group or page you are worried about is visible. This event should trigger creating a random string (mine is six digits and a mix of numbers and letters) and save it as the state created above (cache buster).
Every time the state is updated, is should force bubble to update the call to the database and get the most recent results, even if the regular mechanism for keeping RGs updated is broken.
When the conditional event updates the state it will change the search criteria of the search on the RG and force it to refresh itself even if the web socket is broken.
@aj11 I have put it here without asking you. Hope it is okay. Please let me know if it is not.
Hi guys, best way to load content these days is with backend workflows. Let the server handle all the processing power. Essentially, when you use “Do a search for” on front-end, it does the work in client browser, and hogs resources other users could be using.
Also, never have a “do every 5 seconds” event if you want to scale. Those actions are not viable, unless there is a feature to turn them on/off at desired times. I use this event for a resend timer, and that’s about it. Use event triggers.
It seems opposite of what I have read so far. Can you please point to some resource which talks about what you say?
Can you elaborate more on how to go about it? I have a repeating group in which I want to show the data. You are suggesting not to do a ‘search for’ but use a backend workflow. How to use backend workflow? How will repeating group get filled up?
If you “Do a search for” in a front-end workflow, you can SEE ALL THE DATA in that table (which you’re allowed to see per privacy rules), unless you setup constraints. Even if you setup constraints, you are still doing that search for all things ON THE BROWSER. Which would be defined as “front-end”. A backend workflow in my example would be you sending an event to a backend workflow (api, change of thing, etc), and return ONLY what is needed back. They cannot view anything except the returned values you give them from the backend API. You can constraint in the backend, and the user cannot view other things.
My menu, as an example. The items and links can be public, doesn’t matter cause if they go to a link that they shouldn’t go to, the page itself will block them. Either way, we still don’t want to show those links right?
Instead of using privacy rules, you can just make all links 100% private to regular users, but the API can and will still return whatever links I want to show them. If I did a “Do a search for Links”, nothing would show up.
Hope that makes sense! haha, in a little hurry atm, so if I need to further explain, let me know.
Can you please point to a documentation or thread that confirms this? From what I have read so far, this is not true.
Also, to read things via API is much more cumbersome, and we lose all the features of auto-update of data on the page as we are reading the data from API manually, instead of letting Bubble figure out the job of keeping connection alive.
@mghatiya and @gianluca1 - Gianluca1 mentioned that BDK is not the issue here. I’m a huge BDK fan, but how sure are we that the issue doesn’t like with BDK? It doesn’t seem like this is an issue on mobile web at the moment, right? Has anyone messaged with Gaurav about this?
Hi, I spoke with Gaurav and he assured it is not possible that the problem is caused by the BDK wrapping as it is web-view like a normal browser. I paste here below his comments on this topic.
Let me explain a bit about the architecture… The native app wraps the bubble app means there is a browser inside the native app
The content in the browser e.g. how the page displays, how the page refreshes is not and rather cannot be controlled by the wrapper. The browser (known as webview) is provided by the iOS / Android
By the way sometimes the data update in bubble doesnt happen on browsers too in my experience. There have certainly been times when I’ve experienced this on my desktop. Most of times it is after several minutes of inactivity. Maybe bubble stops refreshing / the bubble’s realtime-database data update connection is disconnected by server after few minutes of inactivity