platform icon indicating copy to clipboard operation
platform copied to clipboard

Data Loss Due to Browser Cache Conflict in Multi-Browser Scenario

Open copy1dollar opened this issue 8 months ago • 4 comments

Issue: Data Loss Due to Browser Cache Conflict in Multi-Browser Scenario

Description

When working with issues across multiple browsers, I encountered a data loss problem. After making updates in one browser and then returning to another browser where the issue was previously loaded, the system overwrote the newer changes with cached data from the first browser.

Steps to Reproduce

  1. Open an issue in Browser A
  2. Switch to Browser B and open the same issue
  3. Make substantial updates to the issue in Browser B
  4. After some time, return to Browser A and load the same issue
  5. The system automatically saves the cached (outdated) version from Browser A, overwriting the updates made in Browser B

Observed Behavior

When returning to Browser A, the system performs an "auto save" of the cached content, overwriting the newer updates made in Browser B. This can be verified in the Activity log, which shows that the older cached content was saved over the newer content.

Expected Behavior

The system should detect that there are newer changes to the issue and either:

  1. Load the most recent version of the issue data
  2. Warn the user about the conflict and provide options to resolve it
  3. Prevent auto-saving of outdated cached content

Impact

This bug causes significant data loss. While it's possible to restore the content through the Activity log, it requires substantial effort to recover the lost updates.

Environment

  • Self-hosted Huly Platform
  • Multiple browsers (Safari iPad, Chrome MacOS)

Additional Information

The Activity log confirms this is happening - it shows that cached content from Browser A was auto-saved after updates were made in Browser B.

copy1dollar avatar Apr 04 '25 00:04 copy1dollar

@copy1dollar I've just tested this scenario with two different browsers (Chrome and Safari) and for me it works fine on the latest self-hosted version. Is it something that is reproducible for you all the time?

We use yjs CRDT implementation, and y-indexeddb provider for local "cache", so

  1. there should not be conflicts, or yjs should handle them by itself
  2. yjs should be able to sync A and B changes properly

This may happen, though, if the issue state was not saved properly, due to storage configuration, for example. Can you check if there are any errors in the collaborator service logs? It would help if you provided any additional information that could allow us to further investigate the issue.

aonnikov avatar Apr 06 '25 16:04 aonnikov

@aonnikov We are operating a self-hosted version on Kubernetes. It may be helpful, but I'm attaching the logs from the transactor service at the time when this issue occurred. Please let me know if there's any other information that might be helpful.

This issue occurred when I was reading an issue on Safari browser on my iPad, then the iPad went into sleep mode. After modifying the issue from another PC and some time had passed, when I reopened the Safari browser on my iPad, the previously read issue was still open, which is when this occurred. There might have been a delay in internet connection after waking up from sleep mode.

This message has been regenerated using AI. I apologize for my limited English skills.

{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:14:32.359Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee35585bb5038e41475157","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:14:32.360Z"}
{"connectionId":"67ee35585bb5038e41475157","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document","timestamp":"2025-04-03T07:14:32.370Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document content","timestamp":"2025-04-03T07:14:32.370Z"}
{"connectionId":"67ee35585bb5038e41475157","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"store document","timestamp":"2025-04-03T07:14:42.515Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"save document ydoc content","timestamp":"2025-04-03T07:14:42.515Z"}
Connected to server: 0.6.482
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"save document content to platform","timestamp":"2025-04-03T07:14:42.732Z"}
{"connectionId":"67ee35585bb5038e41475157","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:14:44.587Z"}
{"connectionId":"67ee35585bb5038e41475157","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:14:44.588Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"unload document","timestamp":"2025-04-03T07:14:44.588Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:14:45.028Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee35655bb5038e4147515d","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:14:45.029Z"}
{"connectionId":"67ee35655bb5038e4147515d","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document","timestamp":"2025-04-03T07:14:45.036Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document content","timestamp":"2025-04-03T07:14:45.037Z"}
{"connectionId":"67ee35655bb5038e4147515d","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:14:49.191Z"}
{"connectionId":"67ee35655bb5038e4147515d","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:14:49.191Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"unload document","timestamp":"2025-04-03T07:14:49.192Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:14:50.929Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee356a5bb5038e4147515f","connections":1,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x1511x51xxxxxx3259xx037|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:14:50.930Z"}
{"connectionId":"67ee356a5bb5038e4147515f","connections":1,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x1511x51xxxxxx3259xx037|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:15:10.478Z"}
{"connectionId":"67ee356a5bb5038e4147515f","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x1511x51xxxxxx3259xx037|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:15:10.479Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:15:13.338Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee35815bb5038e41475160","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:15:13.338Z"}
{"connectionId":"67ee35815bb5038e41475160","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document","timestamp":"2025-04-03T07:15:13.348Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document content","timestamp":"2025-04-03T07:15:13.348Z"}
{"connectionId":"67ee35815bb5038e41475160","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:15:27.412Z"}
{"connectionId":"67ee35815bb5038e41475160","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:15:27.412Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"unload document","timestamp":"2025-04-03T07:15:27.412Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:15:27.723Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee358f5bb5038e41475162","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:15:27.724Z"}
{"connectionId":"67ee358f5bb5038e41475162","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document","timestamp":"2025-04-03T07:15:27.733Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document content","timestamp":"2025-04-03T07:15:27.733Z"}
{"connectionId":"67ee358f5bb5038e41475162","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:15:33.268Z"}
{"connectionId":"67ee358f5bb5038e41475162","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:15:33.268Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"unload document","timestamp":"2025-04-03T07:15:33.268Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:15:38.726Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee359a5bb5038e41475164","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:15:38.727Z"}
{"connectionId":"67ee359a5bb5038e41475164","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document","timestamp":"2025-04-03T07:15:38.737Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document content","timestamp":"2025-04-03T07:15:38.737Z"}
{"connectionId":"67ee359a5bb5038e41475164","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:15:53.109Z"}
{"connectionId":"67ee359a5bb5038e41475164","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:15:53.109Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"unload document","timestamp":"2025-04-03T07:15:53.110Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:15:54.697Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee35aa5bb5038e41475166","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67ede94df9d9a12ecbc52f37|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:15:54.698Z"}
{"connectionId":"67ee35aa5bb5038e41475166","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67ede94df9d9a12ecbc52f37|description","level":"info","message":"load document","timestamp":"2025-04-03T07:15:54.707Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67ede94df9d9a12ecbc52f37|description","level":"info","message":"load document content","timestamp":"2025-04-03T07:15:54.707Z"}
{"connectionId":"67ee35aa5bb5038e41475166","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67ede94df9d9a12ecbc52f37|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:15:57.969Z"}
{"connectionId":"67ee35aa5bb5038e41475166","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67ede94df9d9a12ecbc52f37|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:15:57.969Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67ede94df9d9a12ecbc52f37|description","level":"info","message":"unload document","timestamp":"2025-04-03T07:15:57.969Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:15:59.948Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee35af5bb5038e41475168","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67xxx8x7x9x9x12xxxx52x6x|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:15:59.949Z"}
{"connectionId":"67ee35af5bb5038e41475168","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67xxx8x7x9x9x12xxxx52x6x|description","level":"info","message":"load document","timestamp":"2025-04-03T07:15:59.959Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67xxx8x7x9x9x12xxxx52x6x|description","level":"info","message":"load document content","timestamp":"2025-04-03T07:15:59.960Z"}
{"connectionId":"67ee35af5bb5038e41475168","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67xxx8x7x9x9x12xxxx52x6x|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:16:02.239Z"}
{"connectionId":"67ee35af5bb5038e41475168","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67xxx8x7x9x9x12xxxx52x6x|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:16:02.239Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67xxx8x7x9x9x12xxxx52x6x|description","level":"info","message":"unload document","timestamp":"2025-04-03T07:16:02.240Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:16:04.283Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee35b45bb5038e4147516a","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:16:04.284Z"}
{"connectionId":"67ee35b45bb5038e4147516a","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document","timestamp":"2025-04-03T07:16:04.293Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"load document content","timestamp":"2025-04-03T07:16:04.293Z"}
{"connectionId":"67ede9db5bb5038e41474f11","connections":1,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67ede578f9d9a12ecbc524ab|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:16:10.136Z"}
{"connectionId":"67ede9db5bb5038e41474f11","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67ede578f9d9a12ecbc524ab|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:16:10.136Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:16:11.486Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee35bb5bb5038e4147516c","connections":1,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:16:11.487Z"}
{"connectionId":"67ee35bb5bb5038e4147516c","connections":1,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:16:16.804Z"}
{"connectionId":"67ee35bb5bb5038e4147516c","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|xxdxe096x9x4558xx4xxxxx3|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:16:16.804Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:16:18.043Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}
{"connectionId":"67ee35c25bb5038e4147516d","connections":1,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x1511x51xxxxxx3259xx037|description","level":"info","message":"connect to document","timestamp":"2025-04-03T07:16:18.043Z"}
{"connectionId":"67ee35c25bb5038e4147516d","connections":1,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x1511x51xxxxxx3259xx037|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:16:23.604Z"}
{"connectionId":"67ee35c25bb5038e4147516d","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x1511x51xxxxxx3259xx037|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:16:23.604Z"}
{"connectionId":"67ee2ca25bb5038e41475126","connections":0,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x1511x51xxxxxx3259xx037|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:19:52.920Z"}
{"connectionId":"67ee2ca25bb5038e41475126","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x1511x51xxxxxx3259xx037|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:19:52.920Z"}
{"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x1511x51xxxxxx3259xx037|description","level":"info","message":"unload document","timestamp":"2025-04-03T07:19:52.921Z"}
{"connectionId":"67ee20275bb5038e414750b4","connections":1,"documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x00000324x3x48xx64xx00|description","level":"info","message":"disconnect from document","timestamp":"2025-04-03T07:20:08.048Z"}
{"connectionId":"67ee20275bb5038e414750b4","documentName":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx|tracker:class:Issue|67x00000324x3x48xx64xx00|description","level":"info","message":"no changes for document","timestamp":"2025-04-03T07:20:08.049Z"}
{"level":"info","message":"authenticate","mode":"","readonly":false,"timestamp":"2025-04-03T07:20:15.761Z","workspaceId":"w-xxxxx-xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxx-xxxxxx"}

copy1dollar avatar Apr 07 '25 05:04 copy1dollar

Thanks for the logs. I will further investigate this, though currently I still cannot reproduce the issue.

aonnikov avatar Apr 09 '25 17:04 aonnikov

This issue has occurred again. One suspected cause is the intermittent internal network disconnections and extremely slow disk performance on the hosting server.

Currently, we are operating Huly on a self-hosted Kubernetes cluster. The disks of the Kubernetes nodes are connected to a NAS. Huly is running on this Kubernetes cluster along with other services.

Due to internal NAS server issues, other services are also experiencing intermittent performance degradation. In the case of Huly service, beyond just being slow, when multiple users simultaneously modify the same issue in Tracker, the content gets overwritten with previous versions, resulting in the loss of the most recent updates.

After this phenomenon occurred once, we are continuously experiencing issues where new content disappears after updates and reverts to content from a specific previous point in time.

The problem appears to be related to the underlying infrastructure issues rather than just the application itself, as the network instability and slow disk I/O are affecting multiple services across the cluster.

The content written by users should not be deleted when the server's disk or network is unstable. I believe that while the system may be slow, there should be no data loss.

This issue seems different from the original issue. Should I register it as a new issue?

Thank you in advance for your response.

copy1dollar avatar May 07 '25 08:05 copy1dollar

This issue was resolved in #8882

copy1dollar avatar May 23 '25 00:05 copy1dollar

I think this is affecting my team, even after upgrade to latest. We are losing content to automatic rollbacks often without editing.

mgmorcos avatar Jun 06 '25 17:06 mgmorcos

@mgmorcos it would help if you provided more details. Do you have logs from collaborator service?

aonnikov avatar Jun 07 '25 14:06 aonnikov