Drop FOREIGN KEY for eh_favorites

This commit is contained in:
Jobobby04 2023-05-12 23:56:07 -04:00
parent 164db54acd
commit 912d2ecd62
4 changed files with 32 additions and 9 deletions

View File

@ -26,7 +26,7 @@ android {
defaultConfig { defaultConfig {
applicationId = "eu.kanade.tachiyomi.sy" applicationId = "eu.kanade.tachiyomi.sy"
versionCode = 53 versionCode = 54
versionName = "1.9.3" versionName = "1.9.3"
buildConfigField("String", "COMMIT_COUNT", "\"${getCommitCount()}\"") buildConfigField("String", "COMMIT_COUNT", "\"${getCommitCount()}\"")

View File

@ -1,5 +1,7 @@
package tachiyomi.data.manga package tachiyomi.data.manga
import logcat.LogPriority
import tachiyomi.core.util.system.logcat
import tachiyomi.data.DatabaseHandler import tachiyomi.data.DatabaseHandler
import tachiyomi.domain.manga.model.FavoriteEntry import tachiyomi.domain.manga.model.FavoriteEntry
import tachiyomi.domain.manga.model.FavoriteEntryAlternative import tachiyomi.domain.manga.model.FavoriteEntryAlternative
@ -30,6 +32,7 @@ class FavoritesEntryRepositoryImpl(
} }
override suspend fun addAlternative(favoriteEntryAlternative: FavoriteEntryAlternative) { override suspend fun addAlternative(favoriteEntryAlternative: FavoriteEntryAlternative) {
try {
handler.await { handler.await {
eh_favoritesQueries.addAlternative( eh_favoritesQueries.addAlternative(
otherGid = favoriteEntryAlternative.otherGid, otherGid = favoriteEntryAlternative.otherGid,
@ -38,5 +41,9 @@ class FavoritesEntryRepositoryImpl(
token = favoriteEntryAlternative.token, token = favoriteEntryAlternative.token,
) )
} }
} catch (e: Exception) {
logcat(LogPriority.INFO, e)
}
} }
} }

View File

@ -12,7 +12,7 @@ CREATE TABLE eh_favorites_alternatives (
token TEXT NOT NULL, token TEXT NOT NULL,
otherGid TEXT NOT NULL, otherGid TEXT NOT NULL,
otherToken TEXT NOT NULL, otherToken TEXT NOT NULL,
FOREIGN KEY (gid, token) REFERENCES eh_favorites(gid, token) UNIQUE (gid, token, otherGid, otherToken)
); );
CREATE INDEX eh_favorites_alternatives_gid_token_index ON eh_favorites_alternatives(gid, token); CREATE INDEX eh_favorites_alternatives_gid_token_index ON eh_favorites_alternatives(gid, token);

View File

@ -0,0 +1,16 @@
DROP INDEX IF EXISTS eh_favorites_alternatives_gid_token_index;
DROP INDEX IF EXISTS eh_favorites_alternatives_other_gid_token_index;
DROP TABLE IF EXISTS eh_favorites_alternatives;
CREATE TABLE eh_favorites_alternatives (
id INTEGER PRIMARY KEY AUTOINCREMENT,
gid TEXT NOT NULL,
token TEXT NOT NULL,
otherGid TEXT NOT NULL,
otherToken TEXT NOT NULL,
UNIQUE (gid, token, otherGid, otherToken)
);
CREATE INDEX eh_favorites_alternatives_gid_token_index ON eh_favorites_alternatives(gid, token);
CREATE INDEX eh_favorites_alternatives_other_gid_token_index ON eh_favorites_alternatives(otherGid, otherToken);