[Bug]: We had problems syncing your changes #2861

Closed
opened 2026-02-28 20:30:58 -06:00 by GiteaMirror · 6 comments
Owner

Originally created by @duffdiode on GitHub (Jan 26, 2026).

Verified issue does not already exist?

  • I have searched and found no existing issue

What happened?

I have version 26.1.0 on both podman server and app. My partner is running the app on macos Sequoia 15.6, and I am running from a chrome browser on an intel mac running Mojave 10.14.6. We both are working on the budget; my partner works on one account, and I work on another (i..e bank account and credit card). What is happening is that on the app we get the message after I have made a change on the browser for the credit card, say a category, and my partner makes a change on the app for the bank account, again, say a category. It is when this is done, that the sync issue pops up on the app.

How can we reproduce the issue?

How can we reproduce the issue? Follow the description which should show enough of what we did.

Where are you hosting Actual?

Other

What browsers are you seeing the problem on?

Chrome

Operating System

Mac OSX

Originally created by @duffdiode on GitHub (Jan 26, 2026). ### Verified issue does not already exist? - [x] I have searched and found no existing issue ### What happened? I have version 26.1.0 on both podman server and app. My partner is running the app on macos Sequoia 15.6, and I am running from a chrome browser on an intel mac running Mojave 10.14.6. We both are working on the budget; my partner works on one account, and I work on another (i..e bank account and credit card). What is happening is that on the app we get the message after I have made a change on the browser for the credit card, say a category, and my partner makes a change on the app for the bank account, again, say a category. It is when this is done, that the sync issue pops up on the app. ### How can we reproduce the issue? How can we reproduce the issue? Follow the description which should show enough of what we did. ### Where are you hosting Actual? Other ### What browsers are you seeing the problem on? Chrome ### Operating System Mac OSX
GiteaMirror added the needs infobug labels 2026-02-28 20:30:58 -06:00
Author
Owner

@MatissJanis commented on GitHub (Jan 26, 2026):

👋 can you share your browser console logs when this issue happens?

@MatissJanis commented on GitHub (Jan 26, 2026): 👋 can you share your browser console logs when this issue happens?
Author
Owner

@duffdiode commented on GitHub (Jan 26, 2026):

The problem with syncing is with the actual budget app not the browser.

Some further update. If I close the app and reopen the app, the sync issue invariably is still there. If I close the app and bounce the podman server, then open the app, it resyncs. This only appears to happen if changes are made from another device (ie from the browser).

Let me know if there are any debug logs / steps you want me to run and capture and if you still require the chrome console logs.

@duffdiode commented on GitHub (Jan 26, 2026): The problem with syncing is with the actual budget app not the browser. Some further update. If I close the app and reopen the app, the sync issue invariably is still there. If I close the app and bounce the podman server, then open the app, it resyncs. This only appears to happen if changes are made from another device (ie from the browser). Let me know if there are any debug logs / steps you want me to run and capture and if you still require the chrome console logs.
Author
Owner

@MatissJanis commented on GitHub (Jan 26, 2026):

The app is a chrome browser embedding an offline website. So you can still open up the devtools there to view the console logs.

We do need those since there is nothing we can do without getting either a full reproduction or full logs of the error.

@MatissJanis commented on GitHub (Jan 26, 2026): The app is a chrome browser embedding an offline website. So you can still open up the devtools there to view the console logs. We do need those since there is nothing we can do without getting either a full reproduction or full logs of the error.
Author
Owner

@duffdiode commented on GitHub (Jan 26, 2026):

Apologies, I hadn't realised the app structure.
Ok, below is the console output and I also grabbed the date/time of the server and podman container at the same time.

VM90:1 Server Log: Syncing since 2026-01-26T21:56:58.835Z-0001-b743f8d5785f14a6 0 (attempt: 0)VM94:1 Server Log: Got messages from server 1
VM95:1 Server Log: ClockDriftError: maximum clock drift exceeded
    at Timestamp.recv (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:12896:13)
    at /Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59854:15
    at Array.forEach ()
    at receiveMessages (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59853:12)
    at _fullSync (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:60042:30)
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
    at async /Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59954:16
    at async sync (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:125227:10)
VM96:1 Server Log: [Exception] ClockDriftError: maximum clock drift exceeded
    at Timestamp.recv (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:12896:13)
    at /Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59854:15
    at Array.forEach ()
    at receiveMessages (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59853:12)
    at _fullSync (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:60042:30)
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
    at async /Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59954:16
    at async sync (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:125227:10)
(anonymous) @ VM96:1
(anonymous) @ VM4 sandbox_bundle:2
(anonymous) @ VM4 sandbox_bundle:2
emit @ VM4 sandbox_bundle:2
onMessage @ VM4 sandbox_bundle:2
index.DiHvlNg1.js:280 unknown error {type: 'error'}
(anonymous) @ index.DiHvlNg1.js:280
(anonymous) @ index.DiHvlNg1.js:10
(anonymous) @ VM5:13
emit @ VM4 sandbox_bundle:2
onMessage @ VM4 sandbox_bundle:2

date && podman exec -it budget-app date
Mon 26 Jan 21:56:53 GMT 2026
Mon Jan 26 21:56:54 UTC 2026

@duffdiode commented on GitHub (Jan 26, 2026): Apologies, I hadn't realised the app structure. Ok, below is the console output and I also grabbed the date/time of the server and podman container at the same time. VM90:1 Server Log: Syncing since 2026-01-26T21:56:58.835Z-0001-b743f8d5785f14a6 0 (attempt: 0)VM94:1 Server Log: Got messages from server 1 VM95:1 Server Log: ClockDriftError: maximum clock drift exceeded     at Timestamp.recv (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:12896:13)     at /Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59854:15     at Array.forEach (<anonymous>)     at receiveMessages (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59853:12)     at _fullSync (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:60042:30)     at process.processTicksAndRejections (node:internal/process/task_queues:105:5)     at async /Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59954:16     at async sync (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:125227:10) VM96:1 Server Log: [Exception] ClockDriftError: maximum clock drift exceeded     at Timestamp.recv (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:12896:13)     at /Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59854:15     at Array.forEach (<anonymous>)     at receiveMessages (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59853:12)     at _fullSync (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:60042:30)     at process.processTicksAndRejections (node:internal/process/task_queues:105:5)     at async /Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:59954:16     at async sync (/Applications/Actual.app/Contents/Resources/app.asar/build/loot-core/lib-dist/electron/bundle.desktop.js:125227:10) (anonymous) @ VM96:1 (anonymous) @ VM4 sandbox_bundle:2 (anonymous) @ VM4 sandbox_bundle:2 emit @ VM4 sandbox_bundle:2 onMessage @ VM4 sandbox_bundle:2 index.DiHvlNg1.js:280 unknown error {type: 'error'} (anonymous) @ index.DiHvlNg1.js:280 (anonymous) @ index.DiHvlNg1.js:10 (anonymous) @ VM5:13 emit @ VM4 sandbox_bundle:2 onMessage @ VM4 sandbox_bundle:2 date && podman exec -it budget-app date Mon 26 Jan 21:56:53 GMT 2026 Mon Jan 26 21:56:54 UTC 2026
Author
Owner

@duffdiode commented on GitHub (Jan 26, 2026):

The chrome browser laptop clock was running about 6 - 7 minutes faster than the apple silicon laptop running the app. This explains why waiting for a while allows the app to sync. Now reset, syncing appears to have resumed to correct operation.

Root cause looks like client clock differences not code, BUT, it would be useful to catch this and display a suitable error message to the user.

@duffdiode commented on GitHub (Jan 26, 2026): The chrome browser laptop clock was running about 6 - 7 minutes faster than the apple silicon laptop running the app. This explains why waiting for a while allows the app to sync. Now reset, syncing appears to have resumed to correct operation. Root cause looks like client clock differences not code, BUT, it would be useful to catch this and display a suitable error message to the user.
Author
Owner

@MatissJanis commented on GitHub (Jan 26, 2026):

Duplicate of https://github.com/actualbudget/actual/issues/3786

@MatissJanis commented on GitHub (Jan 26, 2026): Duplicate of https://github.com/actualbudget/actual/issues/3786
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#2861