xbrowsersync / app

xBrowserSync browser extensions / mobile app
GNU General Public License v3.0
1.53k stars 101 forks source link

Can't import bookmarks through bookmark manager #408

Open erahhal opened 2 years ago

erahhal commented 2 years ago

Describe the issue you are experiencing Importing a bookmarks file into chromium gets overwritten by xbrowsersync.

How can the issue be reproduced? Steps to reproduce the behavior:

  1. Export bookmarks from chromium using bookmark manager
  2. Install xbrowsersync extension, allowing it to overwrite existing bookmarks
  3. Load bookmark manager, and re-import old bookmarks using export file created in step 1
  4. Note that there is now an "Imported" folder in bookmark bar
  5. The extension hangs for a while, then shows an "up" arrow indicating that it is syncing
  6. After done syncing, the "Imported" folder is gone

Desktop browser Please complete the following information for all affected desktop browsers:

Application log Please include the logs from the affected clients:

Log entries ``` log too large. see attached file below for full log. abbreviated summary: 2022-05-31 20:53:41.256 [trace] onCreated event detected 2022-05-31 20:53:41.366 [trace] onCreated event detected 2022-05-31 20:53:41.369 [trace] onCreated event detected ... [similar logs removed] 2022-05-31 20:55:59.026 [trace] onCreated event detected 2022-05-31 20:55:59.035 [trace] onCreated event detected 2022-05-31 20:55:59.042 [trace] onCreated event detected 2022-05-31 20:55:59.050 [trace] Sync 9uor21 (push) queued 2022-05-31 20:55:59.100 [trace] Sync 41o6yp (push) queued 2022-05-31 20:55:59.107 [trace] Sync 1r0sw6h (push) queued ... [similar logs removed] 2022-05-31 20:56:24.262 [trace] Sync jum6lt (push) queued 2022-05-31 20:56:24.275 [trace] Sync 19ncjlf (push) queued 2022-05-31 20:56:24.353 [trace] Sync pnd3gb (push) queued 2022-05-31 20:56:24.366 [trace] Processing sync 9uor21 (966 in queue) 2022-05-31 20:56:24.378 [trace] Processing sync 41o6yp (965 in queue) 2022-05-31 20:56:24.440 [trace] Processing sync 1r0sw6h (964 in queue) ... [similar logs removed] 2022-05-31 20:57:14.979 [trace] Processing sync 8w65vq (4 in queue) 2022-05-31 20:57:15.062 [trace] Processing sync 11ihe11 (3 in queue) 2022-05-31 20:57:15.143 [trace] Processing sync jum6lt (2 in queue) 2022-05-31 20:57:15.250 [trace] Sync 19ncjlf failed 2022-05-31 20:57:15.265 [error] bookmarks.sync: [10112] ContainerChanged 2022-05-31 20:57:15.279 [trace] Sync 1ou50ep (pull) queued 2022-05-31 20:57:15.294 [trace] Processing sync 1ou50ep (0 in queue) 2022-05-31 20:57:15.646 [trace] Local population completed in 0.206s 2022-05-31 20:57:15.669 [trace] Local sync data refreshed ```

xbs_log_20220531140117.txt

erahhal commented 2 years ago

What is the proper way to bulk add bookmarks while using the extension? Certainly I'm not the first to have run into this issue. Seems to be cross-browser. I can reproduce the issue on Firefox.

ivy-reps commented 2 years ago

@erahhal , the same thing! I was forced to disable extension, for now. Because after, it will destroy some of bookmarks (((.

I'm just starting to figureout with NodeJS and NPX. May be I will find time to figureout what is going on.

redstreet commented 2 years ago

@erahhal ditto. I tried to bulk add using chromium involving just a single step: "import bookmarks" in bookmark manager of a total of ~600 bookmarks.

Result:

  1. The extension hangs for several minutes with high CPU usage
  2. Twice, chrome froze up completely and I had to kill it
  3. Once, after showing syncing for a long time, the extension showed an "error syncing", and I had to restore from a backup because it wasn't clear if my bookmark set after that was correct or somehow corrupted
  4. Fourth time, after 9 minutes of high CPU, it succeeded correctly. Verified by diff'ing backups via xbs pre and post import

I'd imagine a bulk import of 600 bookmarks (in two folders total) should take on the order of a few seconds at most, probably less. My concern is not the performance, but that something is not okay in the code. So I thought this was worth writing about here.