mirror of
https://github.com/zadam/trilium.git
synced 2025-03-01 14:22:32 +01:00
removed foreign key from notes_tree parent_note_id because of sync issues
This commit is contained in:
parent
00e316fe29
commit
9ca7223aea
29
migrations/0058__remove_foreign_key_from_notes_tree.sql
Normal file
29
migrations/0058__remove_foreign_key_from_notes_tree.sql
Normal file
@ -0,0 +1,29 @@
|
||||
CREATE TABLE IF NOT EXISTS "notes_tree_mig" (
|
||||
`note_tree_id` TEXT NOT NULL,
|
||||
`note_id` TEXT NOT NULL,
|
||||
`parent_note_id` TEXT NOT NULL,
|
||||
`note_position` INTEGER NOT NULL,
|
||||
`prefix` TEXT,
|
||||
`is_expanded` BOOLEAN,
|
||||
`is_deleted` INTEGER NOT NULL DEFAULT 0,
|
||||
`date_modified` TEXT NOT NULL,
|
||||
FOREIGN KEY(note_id) REFERENCES notes(note_id),
|
||||
PRIMARY KEY(`note_tree_id`)
|
||||
);
|
||||
|
||||
INSERT INTO notes_tree_mig (note_tree_id, note_id, parent_note_id, note_position, prefix, is_expanded, is_deleted, date_modified)
|
||||
SELECT note_tree_id, note_id, parent_note_id, note_position, prefix, is_expanded, is_deleted, date_modified FROM notes_tree;
|
||||
|
||||
DROP TABLE notes_tree;
|
||||
ALTER TABLE notes_tree_mig RENAME TO notes_tree;
|
||||
|
||||
CREATE INDEX `IDX_notes_tree_note_tree_id` ON `notes_tree` (
|
||||
`note_tree_id`
|
||||
);
|
||||
CREATE INDEX `IDX_notes_tree_note_id_parent_note_id` ON `notes_tree` (
|
||||
`note_id`,
|
||||
`parent_note_id`
|
||||
);
|
||||
CREATE INDEX `IDX_notes_tree_note_id` ON `notes_tree` (
|
||||
`note_id`
|
||||
);
|
@ -3,7 +3,7 @@
|
||||
const build = require('./build');
|
||||
const packageJson = require('../package');
|
||||
|
||||
const APP_DB_VERSION = 57;
|
||||
const APP_DB_VERSION = 58;
|
||||
|
||||
module.exports = {
|
||||
app_version: packageJson.version,
|
||||
|
@ -1 +1 @@
|
||||
module.exports = { build_date:"2017-12-18T23:45:10-05:00", build_revision: "b0e2d99a7b1073e9ee593b386afa19a62a2651eb" };
|
||||
module.exports = { build_date:"2017-12-20T19:52:26-05:00", build_revision: "00e316fe290a491ac00f15bc5de495e66e64bf2d" };
|
||||
|
@ -49,6 +49,9 @@ async function migrate() {
|
||||
try {
|
||||
log.info("Attempting migration to version " + mig.dbVersion);
|
||||
|
||||
// needs to happen outside of the transaction (otherwise it's a NO-OP)
|
||||
await sql.execute("PRAGMA foreign_keys = OFF");
|
||||
|
||||
await sql.doInTransaction(async () => {
|
||||
if (mig.type === 'sql') {
|
||||
const migrationSql = fs.readFileSync(MIGRATIONS_DIR + "/" + mig.file).toString('utf8');
|
||||
@ -68,6 +71,7 @@ async function migrate() {
|
||||
}
|
||||
|
||||
await options.setOption("db_version", mig.dbVersion);
|
||||
|
||||
});
|
||||
|
||||
log.info("Migration to version " + mig.dbVersion + " has been successful.");
|
||||
@ -82,6 +86,10 @@ async function migrate() {
|
||||
|
||||
break;
|
||||
}
|
||||
finally {
|
||||
// make sure foreign keys are enabled even if migration script disables them
|
||||
await sql.execute("PRAGMA foreign_keys = ON");
|
||||
}
|
||||
}
|
||||
|
||||
if (sql.isDbUpToDate()) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user