-
Notifications
You must be signed in to change notification settings - Fork 671
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
Migration from 2.8.1 to 2.9.0 fails silently #9019
Comments
I assume you also got to see the setup wizard and you where asked to setup your account again. |
I did not see any setup wizard. I only noticed the issue because of unusual high network activity, which made me open the client window. |
Well then I'm a bit lost on what might have happened :( |
Can you link to the code which is responsible for either migrating the database to the new location or selecting the old database name? Maybe I can spot something. |
The migration does not do anything to your database it only migrates the location of the config file containing the name of your db. |
Ok. That approach probably failed here because the configuration here does not include
I guess the previous version(s) never wrote that into the file? |
The settings folder should contain backups of your config |
It looks like this:
None of them contain |
I guess I set this up sometime 2015 and haven't changed any folder settings since then. |
Awesome the old migration code sets a journalPath but never saves it 😢 https://github.com/owncloud/client/blob/master/src/gui/folderman.cpp#L293 |
@gabi18 Please consider the following testing scenarios:
What happens when I emulate the old behaviour and remove the journalPath from the config. |
I built the 2.9 branch locally and gave it a try. 2.4 -> 2.8 -> 2.9.1That did unfortunately not work. Before 2.9.1, only 2.4 -> 2.9.0 -> 2.9.1That worked, it continued to use the |
That is expected deleting stuff is always dangerous and will still require manual intervention. |
Sorry, that was supposed to be Using GDB, I see the difference in the key used to generate the hash:
So the config migration added a trailing |
Regarding 2.4 -> 2.8 -> 2.9.1 Yes thats broken since 5211d9a So we probably need a 2.4 -> 2.5 -> 2.6 ....... I need another round to fix the migration from ._sync to .sync..... |
I have 6 owncloud accounts, and 2 of them got the error message «Multiple accounts are sharing the folder /home/silvain/ownCloud/...». Why did this happen?I suspect this happened only on two of my accounts... because these are the older ones I have, and the previous upgrad(s) kept these old versions of the db files, which did not have any effect until this recent upgrade. |
I think this got closed by accident, it's not fixed yet |
Yes thx for mentioning, I merged a commit with a |
@gabi18 we are ready for another round of tests:
The idea is to keep the old database but if a previous migration already created a duplicated db we only take the newest. |
With #9046 the issue with the hash generation remains. Instead of using the existing sync journal, it creates a new empty one again. This time it's properly called |
#9019 (comment) I didn't get that the hash changed... |
I tried 2.9 with #9054 merged and it appears to be working, thanks! While testing 2.8.1 -> 2.9 again I only had to reenter the password, which is apparently not migrated from the old entry format to the new one. |
Thank you very much ❤️ Many thanks for your reporting and the ongoing testing. |
I actually started from a clean keychain (kwallet) to avoid that. Where can I find the migration code? |
Here we read the old credentials https://github.com/owncloud/client/blob/master/src/libsync/creds/httpcredentials_p.h#L81 they are then saved in https://github.com/owncloud/client/blob/master/src/libsync/creds/httpcredentials.cpp#L354 . |
I had a quick look: 2.8.1 creates a password entry in the format of The 2.9 branch reads this, and then tries to delete a nonexistant On top of that QtKeychain bug there is another weirdness which I can't explain so far: The account is "offline" immediately after migration, and I need to restart the client to trigger a connection. Could be some missing signal emission or something like that. |
Lets continue in #9064 |
Testing on Windows 10 VFS OFF:
Result: for all versions the name of the db remains unchanged, journalPath is written to owncloud.cfg. owncloud.cfg is migrated correctly from 2.4.3 location in \Users\user\AppData\Local\owncloud to %APPDATA%\owncloud: |
Testing on Windows 10 VFS OFF/ON
2.4.3 -> 2.8.2 and also 2.4.3 -> 2.7.6 \Users\gabi\AppData\Roaming\owncloud\owncloud.cfg
\Users\gabi\AppData\Roaming\owncloud\owncloud.cfg.backup_20210928_083432
Recreating the account (VFS OFF and ON) and reusing previous syn folder results in having 2 database files: 2.8.2 -> 2.9.1daily20210927.5255 |
Test on Windows 10 VFS OFF
Result: works correctly old database remains (no new db file) 2.9.0 -> 2.9.1daily20210927.5255 Test on Windows 10 VFS ON
Result: works correctly, database file: .sync_journal.db |
#9019 (comment) is unrelated and covered by https://github.com/owncloud/enterprise/issues/4597 closed in 2.9.0 |
Retesting with owncloud-client 2.9.1rc2
Cfg-files
Cfg-files |
Test scenario: Update testpilotcloud 2.8.2 to 2.9.1rc2 VFS ON -> okay Result: account is configured, database file, folder and (dehydrated) files there But the update is NOT suggested when switching the Update channel to 'Beta, there is an info that update status was not checked
|
After upgrading from 2.8.1 to 2.9.0, it shows a message that "multiple accounts are sharing the same folder" and started to sync paths which were explicitly excluded before. The sync folder contains both
.sync_journal.db
and.sync_286ccd77d0ee.db
.Neither issue happens if I rename
.sync_286ccd77d0ee.db
to the new.sync_journal.db
name before starting 2.9.0.Server configuration
Not relevant (I think)
Client configuration
Client version: From 2.8.1 to 2.9.0
Operating system: openSUSE Tumbleweed
OS language: German
Qt version used by client package (Linux only, see also Settings dialog): 5.15.2 (before and after update)
Client package (From ownCloud or distro) (Linux only): Using the package from the distro (2.8.1-2.1 to 2.9.0-1.1), which has no patches.
Logs
Nothing really relevant unfortunately. The log shows that it fills a new database:
I should mention that for reproducing this to get logs, I just "undid" the migration by doing
mv .sync_journal.db .sync_286ccd77d0ee.db
.The text was updated successfully, but these errors were encountered: