Bug #608
closedImporting setting from prior to 3.3 fail
0%
Description
Due to the issues mentioned in bug #605, I downgraded to the F-Droid version 3.4.1. Fdroid gave an error so I uninstalled PB. I re-installed PB and imported the Settings.pbc but it throws an error:
"import failed: android.database.sqlite.SQLiteException: duplicate column name: proxy (code 1 SQLITE_ERROR): , while compiling: AL..."
An "adb logcat | grep -i sqlite" shows:
08-27 13:54:03.017 4444 4444 E SQLiteLog: (1) duplicate column name: proxy
When I examine the sqlite file there is no column "proxy", only a "proxy_through_orbot". I tried a Settings.pbs file generated today with the latest Fdroid version, and one from 2019. Both same error.
@Soren Stoutner: I send the Settings.pbs to your mail
Updated by Soren Stoutner over 4 years ago
- Status changed from New to Closed
Privacy Browser settings from newer versions of Privacy Browser cannot be imported into older versions of Privacy Browser if the schema has changed. However, settings from older versions of Privacy Browser can be imported into newer versions of Privacy Browser.
For details, see https://www.stoutner.com/privacy-browser/privacy-browser-settings-format/.
Updated by Richard Lucassen over 4 years ago
Ok, but even an old Settings.pbs from 2019 could not be loaded. And I'm sure that I used that file for a version 3.x. As you can see in the file, the column "proxy" is not there, so the file must be before 3.3. Anyway, I'll create a new one, it is not a huge file.
Thnx!
R.
Updated by Soren Stoutner over 4 years ago
- Status changed from Closed to New
- Assignee set to Soren Stoutner
Let me look closer at the file you sent me and see if there is some schema logic upgrade problem.
Updated by Soren Stoutner over 4 years ago
- Tracker changed from Feature to Bug
- Subject changed from import Settings.pbs fails to Importing setting from prior to 3.3 fail
- Priority changed from 3.x to Next Release
Updated by Soren Stoutner over 4 years ago
The problem is that the custom proxy URL is SQL escaped and then later surrounded in `'`, making the final value ''http://localhost:8118'', where is should be 'http://localhost:8118'. The double `''` cause the issue.
Updated by Soren Stoutner over 4 years ago
- Status changed from New to Closed
Updated by Soren Stoutner over 4 years ago
As a workaround, anyone who is experiencing this issue can temporarily delete the contents of the Custom Proxy URL in the settings before running the import. Then, after the settings are imported, you can add the information back in. The reason why this works is because the current value of Custom Proxy URL is added to the SQLite database during the import process, and it is that portion of the code that is failing.