Oct 29, 2021 07:56 AM
Hi all!
So, here’s the use case that spurred some thinking… I have a HUGE, monster of a base that is a bit out of control. It contains many intricate rollups that drive some housekeeping/reporting processes. Now that Airtable Sync is available, I’m working on moving those high-overhead processes out to their own bases in the hopes of speeding up the “master” base.
One of those processes is a nightly report. The report is driven off of a view in the master base. I synced this view over to a new base, and set up a duplicate of the report. To test it, I’ve been letting it run the past few nights to compare the new version to the current version… and surprise surprise, they are not the same.
Current Report: Runs from source/master base, triggered by a zap that runs on a schedule - every night at 8PM a record is added to a table called [Automation Launcher]. This record triggers a script that aggregates the report data, spits out the HTML which is then picked up and emailed by Zapier.
New Report: Runs out of the synced base, triggered by an Airtable automation every night at 8PM - runs a script and spits out the report HTML onto a separate table - which is then picked up and emailed by Zapier.
Here’s where things get weird. Each night there are a couple more records on the Current Report than on the New Report. While investigating why this is, I realized that the records missing from the New Report are not appearing in the synced base until EXACTLY 8PM, every night - which happens to be the exact time that Zapier hits the source base as well as the exact time my new report automation runs.
Takeaways… My synced base is not actually syncing every 5 minutes (which I suppose isn’t totally unexpected, why update all night if no one is looking at it?). BUT something is forcing the base to sync at exactly 8PM. I’m going to change the time my new report runs to be different than the time Zapier hits the source base - I’m interested to see which one is triggering the sync.
Any insight would be greatly appreciated as well.
Solved! Go to Solution.
Jan 24, 2023 12:59 AM
Hi! Thank you very much for your precious intervention. I have a further question, thee is a precise synchronization time following the "Source Base" update?
My process is this:
- When the event occurs I send a webhook via Make
- The webhook triggers an automation inside the Source Base on Airtable (this automation looks up the last created record and updates a field by setting a checked field)
The problem is the time between this update on the "Source Base" and the synchronization on the "Sync Base"
I realized that up to 9 minutes pass and for this I had to insert 2 "Sleep" modules set to 300 seconds (screenshot attached) each on Make before looking for the new (synchronized) record on the "Sync Base".
Can you confirm that the process described is correct? I had read that the ""Sync Base" synchronization takes place within 5 minutes following the "Source Base" update.
Apr 13, 2023 11:52 AM
Ah.
But (as I've commented elsewhere), this doesn't seem to answer the question: Can I script the syncing action?
A basic situation: I want to add a contact to my Contacts base, which syncs with a Donations base that's kept separate so not everyone can see it, and then add the donation in Donations.
But when I go to Donations, I have to manually sync or wait 5 minutes. I can do this myself, but my end user is not Airtable-fluent, so I wish the new contact would show up in the synced base right away.
Apr 16, 2023 03:45 AM
I've follow this,
@ScottWorld wrote:I just heard back from Airtable Support on this situation, and here is what they said:
When the base is inactive the base will not sync. The base will sync as soon as a user access the base. One workaround to keep the base active without a user active in the base is to create an automation set to trigger at a scheduled time (when users are not active on the base). The automation can perform a simple action like checking or unchecking a checkbox field on a record. Doing this should keep the base active, and thus syncing, without an active user. I’ve passed along the feedback to the team to have this information reflected on our support articles on Sync.
but unfortunately, this does not work for me
My process is this:
- I've an automation on Make that every day at 9:50AM send a webhook to the synced Base to active the Base
this webhook will trigger an automation on the synced Base that update a checkbox of a record
- Then at 10AM, after 10 minutes my scenario, every day, runs and so the Synced Base should be synced, but it doesn't...
Can you confirm that the process described is correct?
Thanks!
Sep 22, 2023 08:43 AM - edited Sep 22, 2023 08:44 AM
Hey Everyone!
So I know this is an old thread, but I thought I would revive it and ask if anyone had luck with these solutions?
Our team has run into this same issue, and we have implemented the recommended fix above:
When the base is inactive the base will not sync. The base will sync as soon as a user access the base. One workaround to keep the base active without a user active in the base is to create an automation set to trigger at a scheduled time (when users are not active on the base). The automation can perform a simple action like checking or unchecking a checkbox field on a record. Doing this should keep the base active, and thus syncing, without an active user. I’ve passed along the feedback to the team to have this information reflected on our support articles on Sync.
This inactive delayed syncing is causing a lot of issues as we are routing client emails through the sync'd base and I would be really happy to hear anything anyone has learned! This is the only information I can dig up on this!
Thank You!
Sep 10, 2024 06:35 AM - edited Sep 10, 2024 06:43 AM
Hey dusting off this post from a few years ago. Recently ran into a similiar situation where needed to force Airtable to sync more frequently between bases (ideally every 10-15 min rather than every 5-8 hrs when off-peak usage).
At first created an automation in Airtable that checked a box every 15 minutes. I found this worked IF I actively had AT open in my browser. But as soon as I shut my browser or computer, system defaulted back to syncs every few hours.
SOLUTION: I changed the automation to CREATE a new record in the source sync table every 15 min (AT is limited to automation run every 15 min at the fastest, if you need more frequent, would prob need a tool like Make), and in creating a new record this seems to force AT to sync.
Ran it last night while no one was in the system and the logs of last modified time confirmed this morning that it had been syncing every 15 min consistently all night. Will continue to observe, but so far seems to be working.
PS: I'll create a secondary automation that cleans up and deletes all those dummy created records once a day so things don't get unruly.
Dec 03, 2024 06:59 AM - edited Dec 03, 2024 06:59 AM
Chiming in with data from 1,000 tests that I ran over 72 hours with and got a median 3 minute 20 second delay (average 3 min 44 seconds, with a range between 6 seconds at minimum and 8 min 35 sec at maximum).
However I was testing the "when record enters view" trigger but I would imagine similar would apply to sync mechanisms and its worth testing. My goal, however, was to build a simple message queuing system where users can create records to schedule something happening via automation at a certain time.
Here's what I did for reference: https://community.airtable.com/t5/show-tell/airtable-only-message-queue-to-dynamically-schedule-auto...
Dec 05, 2024 05:56 AM
Hello Arthur,
I just faced the same issue and I am trying to replicate the same solution.
The issue I have is that the table I want to sync automatically through the automation is synced externally to our Salesforce, meaning I cannot create a new record.
I am trying to see if by updating a record your solution is working, I will update here once I have a bit more info from my test.
Thanks for the solution.