Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Data sync supports the multi-kernel online perception #8518

Closed
88250 opened this issue Jun 11, 2023 · 35 comments
Closed

Data sync supports the multi-kernel online perception #8518

88250 opened this issue Jun 11, 2023 · 35 comments
Assignees
Milestone

Comments

@88250
Copy link
Member

88250 commented Jun 11, 2023

  • List online kernel instances
  • After the sync is completed, notify other kernels to sync to support quasi-real-time sync

Only works on:

  1. Desktop and mobile
  2. Sync mode Auto
  3. SiYuan Sync
@88250 88250 added this to the backlog milestone Jun 11, 2023
@88250 88250 self-assigned this Jun 11, 2023
@88250 88250 changed the title Data synchronization supports the multi-kernel online perception Data sync supports the multi-kernel online perception Jun 12, 2023
Vanessa219 added a commit that referenced this issue Jun 12, 2023
@88250 88250 modified the milestones: backlog, 2.9.2 Jun 13, 2023
@zxhd863943427
Copy link
Contributor

移动端编辑后,等待片刻,可见数据快照已同步,但是pc端未开始同步。

@88250
Copy link
Member Author

88250 commented Jun 13, 2023

@zxhd863943427 发下日志。

@zxhd863943427
Copy link
Contributor

pc端的:

      ___                                   ___           ___           ___
     /  /\        ___           ___        /__/\         /  /\         /__/\
    /  /:/_      /  /\         /__/|       \  \:\       /  /::\        \  \:\
   /  /:/ /\    /  /:/        |  |:|        \  \:\     /  /:/\:\        \  \:\
  /  /:/ /::\  /__/::\        |  |:|    ___  \  \:\   /  /:/~/::\   _____\__\:\
 /__/:/ /:/\:\ \__\/\:\__   __|__|:|   /__/\  \__\:\ /__/:/ /:/\:\ /__/::::::::\
 \  \:\/:/~/:/    \  \:\/\ /__/::::\   \  \:\ /  /:/ \  \:\/:/__\/ \  \:\~~\~~\/
  \  \::/ /:/      \__\::/    ~\~~\:\   \  \:\  /:/   \  \::/       \  \:\  ~~~
   \__\/ /:/       /__/:/       \  \:\   \  \:\/:/     \  \:\        \  \:\
     /__/:/        \__\/         \__\/    \  \::/       \  \:\        \  \:\
     \__\/                                 \__\/         \__\/         \__\/
I 2023/06/13 12:34:54 runtime.go:71: kernel is booting:
    * ver [2.9.1]
    * arch [amd64]
    * os [Microsoft Windows 10 Pro]
    * pid [21208]
    * runtime mode [prod]
    * working directory [C:\Users\admin\AppData\Local\Programs\SiYuan\resources]
    * read only [false]
    * container [std]
    * database [ver=20220501]
    * workspace directory [C:\Users\admin\Documents\SiYuan]
I 2023/06/13 12:34:54 conf.go:227: upgraded from version [2.9.0] to [2.9.1]
I 2023/06/13 12:34:54 conf.go:357: OpenAI API enabled
    baseURL=https://openai.api2d.net/v1
    timeout=300s
    proxy=
    model=gpt-3.5-turbo
    maxTokens=1000
I 2023/06/13 12:34:55 conf.go:378: user has enabled [Automatically upload error messages and diagnostic data]
I 2023/06/13 12:34:55 runtime.go:125: use network proxy [system]
I 2023/06/13 12:34:55 serve.go:113: kernel [pid=21208] http server [127.0.0.1:5380] is booting
I 2023/06/13 12:34:55 pandoc.go:115: built-in pandoc [ver=3.1.1, bin=C:\Users\admin\Documents\SiYuan\temp\pandoc\bin\pandoc.exe]
I 2023/06/13 12:34:55 sync.go:140: sync before boot
I 2023/06/13 12:34:57 serve.go:126: reverse proxy server [127.0.0.1:6806] is booting
W 2023/06/13 12:35:22 repository.go:1417: index data repo before cloud sync elapsed [26695ms]
I 2023/06/13 12:35:22 repository.go:1072: boot get sync cloud files elapsed [26.92s]
I 2023/06/13 12:35:22 blocktree.go:448: read block tree [25 MB] to [C:\Users\admin\Documents\SiYuan\temp\blocktree], elapsed [0.52s]
I 2023/06/13 12:35:23 conf.go:695: database size [342 MB], tree/block count [1184/84064]
I 2023/06/13 12:35:23 working.go:155: kernel booted
I 2023/06/13 12:35:24 box.go:79: auto stat [trees=1124, blocks=81651, dataSize=347 MB, assetsSize=163 MB]
I 2023/06/13 12:35:24 disk.go:33: disk usage [total=511 GB, used=357 GB, free=155 GB]
I 2023/06/13 12:35:24 index.go:133: rebuilt database for notebook [20210808180117-czj9bvb] in [0.04s], tree [count=60, size=1.2 MB]
W 2023/06/13 12:35:26 blocktree.go:498: save block tree [size=25 MB] to [C:\Users\admin\Documents\SiYuan\temp\blocktree], elapsed [3.12s]
I 2023/06/13 14:35:24 box.go:79: auto stat [trees=1184, blocks=84076, dataSize=350 MB, assetsSize=165 MB]
I 2023/06/13 14:35:24 disk.go:33: disk usage [total=511 GB, used=357 GB, free=154 GB]
I 2023/06/13 14:51:00 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=10, dfc=1, ucc=3, dcc=0, ub=107 kB, db=179 kB] in [3.74s]
I 2023/06/13 14:51:01 sync.go:677: sync websocket connected
I 2023/06/13 14:51:01 sync.go:718: sync websocket message: &{0  map[cmd:kernels kernels:[map[hostname:zxhd-computer id:nb7gvmg os:windows repo:main ver:2.9.1]]]}
I 2023/06/13 14:52:21 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.82s]
I 2023/06/13 14:54:05 sync.go:718: sync websocket message: &{0  map[cmd:kernels kernels:[map[hostname:localhost id:6tgx7tr os:android repo:main ver:2.9.1] map[hostname:zxhd-computer id:nb7gvmg os:windows repo:main ver:2.9.1]]]}
I 2023/06/13 14:55:36 sync.go:718: sync websocket message: &{0  map[cmd:synced kernel:6tgx7tr synced:1.686639339417e+12]}
I 2023/06/13 14:55:42 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=32, dfc=31, ucc=1, dcc=1, ub=109 kB, db=198 kB] in [5.04s]
I 2023/06/13 14:56:39 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=3, dfc=1, ucc=1, dcc=0, ub=101 kB, db=179 kB] in [2.37s]
I 2023/06/13 14:58:47 sync.go:718: sync websocket message: &{0  map[cmd:synced kernel:6tgx7tr synced:1.686639530553e+12]}
I 2023/06/13 14:58:51 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=4, dfc=3, ucc=2, dcc=2, ub=104 kB, db=192 kB] in [3.88s]
I 2023/06/13 14:59:09 sync.go:718: sync websocket message: &{0  map[cmd:kernels kernels:[map[hostname:zxhd-computer id:nb7gvmg os:windows repo:main ver:2.9.1]]]}
I 2023/06/13 14:59:13 sync.go:718: sync websocket message: &{0  map[cmd:kernels kernels:[map[hostname:zxhd-computer id:nb7gvmg os:windows repo:main ver:2.9.1] map[hostname:localhost id:r1gjqwk os:android repo:main ver:2.9.1]]]}
I 2023/06/13 14:59:45 sync.go:718: sync websocket message: &{0  map[cmd:synced kernel:r1gjqwk synced:1.68663958864e+12]}
I 2023/06/13 14:59:49 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=3, dfc=2, ucc=0, dcc=0, ub=99 kB, db=180 kB] in [3.23s]
I 2023/06/13 15:02:20 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=2, dfc=1, ucc=0, dcc=0, ub=87 kB, db=179 kB] in [2.65s]
I 2023/06/13 15:04:19 sync.go:718: sync websocket message: &{0  map[cmd:synced kernel:r1gjqwk synced:1.686639861809e+12]}
I 2023/06/13 15:04:22 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=5, dfc=2, ucc=2, dcc=0, ub=101 kB, db=180 kB] in [2.89s]
I 2023/06/13 15:04:41 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [1.18s]
I 2023/06/13 15:05:48 sync.go:705: sync websocket reconnected
I 2023/06/13 15:05:48 sync.go:718: sync websocket message: &{0  map[cmd:kernels kernels:[map[hostname:localhost id:r1gjqwk os:android repo:main ver:2.9.1] map[hostname:zxhd-computer id:nb7gvmg os:windows repo:main ver:2.9.1]]]}
I 2023/06/13 15:12:43 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.75s]
I 2023/06/13 15:20:04 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=7, dfc=5, ucc=1, dcc=1, ub=103 kB, db=193 kB] in [3.89s]
I 2023/06/13 15:20:47 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=5, dfc=2, ucc=2, dcc=0, ub=105 kB, db=180 kB] in [3.04s]
I 2023/06/13 15:20:55 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=3, dfc=2, ucc=0, dcc=0, ub=99 kB, db=180 kB] in [2.92s]
I 2023/06/13 15:21:02 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=2, dfc=1, ucc=0, dcc=0, ub=87 kB, db=180 kB] in [1.72s]
I 2023/06/13 15:25:36 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=3, dfc=2, ucc=1, dcc=1, ub=102 kB, db=192 kB] in [3.16s]
I 2023/06/13 15:25:44 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=3, dfc=2, ucc=0, dcc=0, ub=99 kB, db=180 kB] in [2.66s]
I 2023/06/13 15:25:50 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=2, dfc=1, ucc=0, dcc=0, ub=87 kB, db=180 kB] in [1.67s]
I 2023/06/13 15:27:47 queue_history.go:106: database history op tx [24236ms]
I 2023/06/13 15:29:14 repository.go:1180: synced data repo [kernel=nb7gvmg, provider=0, ufc=3, dfc=1, ucc=1, dcc=0, ub=105 kB, db=180 kB] in [2.93s]

移动端的:

  ____    _  __   __
 / ___|  (_) \ \ / /  _   _    __ _   _ __
 \___ \  | |  \ V /  | | | |  / _` | | '_ \
  ___) | | |   | |   | |_| | | (_| | | | | |
 |____/  |_|   |_|    \__,_|  \__,_| |_| |_|
I 2023/06/13 14:59:16 runtime.go:71: kernel is booting:
    * ver [2.9.1]
    * arch [arm64]
    * os [Android 10/SDK 29/WebView 88/Manufacturer HUAWEI/Brand HUAWEI]
    * pid [4072]
    * runtime mode [prod]
    * working directory [/data/user/0/org.b3log.siyuan/files/app/app]
    * read only [false]
    * container [android]
    * database [ver=20220501]
    * workspace directory [/storage/emulated/0/Android/data/org.b3log.siyuan/files/siyuan]
I 2023/06/13 14:59:16 conf.go:108: initialized the specified language [zh_CN]
I 2023/06/13 14:59:16 runtime.go:125: use network proxy [system]
I 2023/06/13 14:59:16 serve.go:113: kernel [pid=4072] http server [0.0.0.0:6806] is booting
I 2023/06/13 14:59:16 sync.go:677: sync websocket connected
I 2023/06/13 14:59:16 sync.go:718: sync websocket message: &{0  map[cmd:kernels kernels:[map[hostname:zxhd-computer id:nb7gvmg os:windows repo:main ver:2.9.1] map[hostname:localhost id:r1gjqwk os:android repo:main ver:2.9.1]]]}
I 2023/06/13 14:59:16 sync.go:140: sync before boot
I 2023/06/13 14:59:17 repository.go:1072: boot get sync cloud files elapsed [1.16s]
I 2023/06/13 14:59:17 blocktree.go:448: read block tree [25 MB] to [/storage/emulated/0/Android/data/org.b3log.siyuan/files/siyuan/temp/blocktree], elapsed [0.15s]
I 2023/06/13 14:59:17 conf.go:695: database size [224 MB], tree/block count [1184/84152]
I 2023/06/13 14:59:18 working.go:155: kernel booted
I 2023/06/13 14:59:18 box.go:79: auto stat [trees=1184, blocks=84152, dataSize=350 MB, assetsSize=165 MB]
I 2023/06/13 14:59:18 index.go:133: rebuilt database for notebook [20210808180117-czj9bvb] in [0.03s], tree [count=60, size=1.2 MB]
I 2023/06/13 14:59:48 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=3, dfc=1, ucc=0, dcc=0, ub=99 kB, db=179 kB] in [2.65s]
I 2023/06/13 15:01:33 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=2, dfc=1, ucc=0, dcc=0, ub=86 kB, db=179 kB] in [1.60s]
I 2023/06/13 15:01:55 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.61s]
I 2023/06/13 15:02:10 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.28s]
I 2023/06/13 15:02:14 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.24s]
I 2023/06/13 15:02:42 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=2, dfc=1, ucc=0, dcc=0, ub=86 kB, db=179 kB] in [2.00s]
I 2023/06/13 15:03:53 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.48s]
I 2023/06/13 15:04:01 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.59s]
I 2023/06/13 15:04:02 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.27s]
I 2023/06/13 15:04:04 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.22s]
I 2023/06/13 15:04:09 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.64s]
I 2023/06/13 15:04:21 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=3, dfc=1, ucc=0, dcc=0, ub=99 kB, db=179 kB] in [3.23s]
I 2023/06/13 15:05:51 sync.go:718: sync websocket message: &{0  map[cmd:kernels kernels:[map[hostname:localhost id:r1gjqwk os:android repo:main ver:2.9.1] map[hostname:zxhd-computer id:nb7gvmg os:windows repo:main ver:2.9.1]]]}
I 2023/06/13 15:06:28 sync.go:718: sync websocket message: &{0  map[cmd:kernels kernels:[map[hostname:localhost id:r1gjqwk os:android repo:main ver:2.9.1]]]}
I 2023/06/13 15:15:50 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=8, dfc=4, ucc=2, dcc=1, ub=100 kB, db=180 kB] in [4.32s]
I 2023/06/13 15:17:01 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=3, dfc=1, ucc=1, dcc=0, ub=101 kB, db=180 kB] in [1.65s]
I 2023/06/13 15:18:26 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=3, dfc=1, ucc=1, dcc=0, ub=101 kB, db=180 kB] in [1.59s]
I 2023/06/13 15:19:17 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=3, dfc=1, ucc=1, dcc=0, ub=101 kB, db=180 kB] in [1.56s]
I 2023/06/13 15:20:07 sync.go:718: sync websocket message: &{0  map[cmd:synced kernel:nb7gvmg synced:1.686640804421e+12]}
I 2023/06/13 15:20:09 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=4, dfc=2, ucc=0, dcc=0, ub=99 kB, db=180 kB] in [1.99s]
I 2023/06/13 15:20:50 sync.go:718: sync websocket message: &{0  map[cmd:synced kernel:nb7gvmg synced:1.686640847393e+12]}
I 2023/06/13 15:20:52 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=4, dfc=2, ucc=1, dcc=1, ub=102 kB, db=192 kB] in [1.95s]
I 2023/06/13 15:20:58 sync.go:718: sync websocket message: &{0  map[cmd:synced kernel:nb7gvmg synced:1.686640855493e+12]}
I 2023/06/13 15:20:59 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=2, dfc=1, ucc=0, dcc=0, ub=87 kB, db=180 kB] in [1.14s]
I 2023/06/13 15:21:34 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=3, dfc=1, ucc=1, dcc=0, ub=102 kB, db=180 kB] in [1.43s]
E 2023/06/13 15:23:17 queue_history.go:85: queue operation failed: table histories_fts_case_insensitive has no column named id
I 2023/06/13 15:25:39 sync.go:718: sync websocket message: &{0  map[cmd:synced kernel:nb7gvmg synced:1.686641136183e+12]}
I 2023/06/13 15:25:41 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=4, dfc=2, ucc=1, dcc=1, ub=102 kB, db=192 kB] in [2.31s]
I 2023/06/13 15:25:47 sync.go:718: sync websocket message: &{0  map[cmd:synced kernel:nb7gvmg synced:1.686641144064e+12]}
I 2023/06/13 15:25:48 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=2, dfc=1, ucc=0, dcc=0, ub=87 kB, db=180 kB] in [1.06s]
I 2023/06/13 15:28:54 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=2, dfc=1, ucc=0, dcc=0, ub=87 kB, db=180 kB] in [2.10s]
I 2023/06/13 15:29:15 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.35s]
I 2023/06/13 15:29:17 sync.go:718: sync websocket message: &{0  map[cmd:synced kernel:nb7gvmg synced:1.68664135435e+12]}
I 2023/06/13 15:29:19 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=4, dfc=2, ucc=1, dcc=1, ub=105 kB, db=199 kB] in [1.97s]
I 2023/06/13 15:30:11 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=3, dfc=1, ucc=1, dcc=0, ub=102 kB, db=180 kB] in [1.46s]
I 2023/06/13 15:31:46 repository.go:1180: synced data repo [kernel=r1gjqwk, provider=0, ufc=0, dfc=1, ucc=0, dcc=0, ub=0 B, db=168 kB] in [0.80s]

皆为最新的

@zxhd863943427
Copy link
Contributor

另外,启用数据感知后,频繁出现数据冲突,冲突场景如下:

在移动端编辑了文档a,pc端编辑了文档b,文档b编辑后,移动端顺利同步,文档a编辑后,不能自动感知同步,继续编辑文档b,触发感知同步,但出现数据冲突,冲突对象为文档b。

@88250
Copy link
Member Author

88250 commented Jun 13, 2023

看下这里 https://ld246.com/article/1686639858529

@88250
Copy link
Member Author

88250 commented Jun 13, 2023

上面的日志移动端 15:04:21 同步后但是 PC 端 15:05:48 有个重连,前面掉线的时间收不到同步广播。

@zxhd863943427
Copy link
Contributor

观察最新的,我是先复制移动端,再复制pc端的。

@zxhd863943427
Copy link
Contributor

移动端同步了三次,但pc端一直没有同步。

@88250
Copy link
Member Author

88250 commented Jun 13, 2023

如果两个设备时间同步的话,日志时间是准确的,桌面端重连 15:04:19 之前最后一次收到同步事件是 14:59:45,这段时间看移动的日志,已经进行过多次同步,这些同步都没有被断线的桌面端收到。

@zxhd863943427
Copy link
Contributor

在使用自动感知的情况下,数据冲突问题变的特别严重。
图片

我仅仅在pc端编辑图片中的文件,但是生成了大量的冲突文件

@88250
Copy link
Member Author

88250 commented Jun 13, 2023

我这里重现不了,移动端是不是有什么修改变更?

@88250
Copy link
Member Author

88250 commented Jun 14, 2023

开发基本结束,我先关闭 issue 了。

麻烦各位继续反馈测试问题,谢谢。

@88250 88250 closed this as completed Jun 14, 2023
@zxhd863943427
Copy link
Contributor

我这里重现不了,移动端是不是有什么修改变更?

没有,移动端一直保持只读。

直至3小时后关闭同步感知,一直保持移动端只读,但是对pc端编辑的同一个文件一共产生了9个冲突文件。

同步感知的稳定性仍不能让人满意。

@zxhd863943427
Copy link
Contributor

一个较为简单的复现方法可能是在pc端和移动端打开相同的文档,并且在pc端编辑。

@88250
Copy link
Member Author

88250 commented Jun 14, 2023

@zxhd863943427 我这里反复测试也没有重现冲突文件,你那里能帮忙看下具体冲突文件的 diff 吗?

@zxhd863943427
Copy link
Contributor

图片

这是新建的一个测试文档,测试内容如下:

图片

仅在pc端编辑,移动端打开相同的文件。

@zxhd863943427
Copy link
Contributor

另外在另一个文档的测试中,还会出现pc端编辑的文件被移动端反向覆盖的情况。

@88250
Copy link
Member Author

88250 commented Jun 14, 2023

是不是有其他插件类扩展会修改文件?

@zxhd863943427
Copy link
Contributor

我并没有使用这种插件,不过我可以关闭全部插件试试。

@zxhd863943427
Copy link
Contributor

在新的笔记本中使用了新的测试文档,问题依旧:
图片

这是测试的文档:
图片

@88250
Copy link
Member Author

88250 commented Jun 14, 2023

你用的是 diff json 的工具吗?用行 diff 的看看。

@zxhd863943427
Copy link
Contributor

不是,我使用的是vscode自带的diff。

@88250
Copy link
Member Author

88250 commented Jun 14, 2023

对了,你测试的时候是不是滚动过移动端界面?

@zxhd863943427
Copy link
Contributor

并没有,移动端全程无操作。

@zxhd863943427
Copy link
Contributor

我录制了一个视频,复现步骤见下:

default.mp4

@88250
Copy link
Member Author

88250 commented Jun 14, 2023

如果是手动在 桌面端 点击同步能够重现冲突吗?

@zxhd863943427
Copy link
Contributor

似乎完全手动也会导致冲突

手动同步冲突

@88250
Copy link
Member Author

88250 commented Jun 14, 2023

那看来是同步本身的问题,这个有点奇怪哦,我这里交替触发同步是不会出现冲突的,你手机是什么系统?

@zxhd863943427
Copy link
Contributor

华为的emui

@88250
Copy link
Member Author

88250 commented Jun 14, 2023

能不能花时间新建一个工作空间和云端目录测试看看,这个工作空间只建立一个笔记本,然后只建立一个文档,把数据集做到最小,如果还能重现问题,估计得改改程序把日志打全了才能定位。

@zxhd863943427
Copy link
Contributor

还能重现问题。
手动同步冲突

@88250
Copy link
Member Author

88250 commented Jun 14, 2023

@zxhd863943427 在桌面端新建一个工作空间,连接刚刚这个测试用的云端目录,然后仅在桌面端用这两个工作空间测试看看,不要开移动端。

@zxhd863943427
Copy link
Contributor

使用pc端的两个工作空间无法复现。

@88250
Copy link
Member Author

88250 commented Jun 14, 2023

那可能是华为设备上在打快照的时候有些不一样,稍晚点我们加些调试日志打个包看看。你在开发者群里的吧?我后面群里联系你吧。

@zxhd863943427
Copy link
Contributor

可以

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants