Fix: slow startup from silly migrations
This commit is contained in:
@@ -1,26 +1,4 @@
|
||||
-- Populate FTS table with existing embeddings
|
||||
DELETE FROM fts_embeddings;
|
||||
|
||||
INSERT INTO fts_embeddings (slug, raw_text, filename, embedding_size)
|
||||
SELECT slug, raw_text, filename, 384 FROM embeddings_384;
|
||||
|
||||
INSERT INTO fts_embeddings (slug, raw_text, filename, embedding_size)
|
||||
SELECT slug, raw_text, filename, 768 FROM embeddings_768;
|
||||
|
||||
INSERT INTO fts_embeddings (slug, raw_text, filename, embedding_size)
|
||||
SELECT slug, raw_text, filename, 1024 FROM embeddings_1024;
|
||||
|
||||
INSERT INTO fts_embeddings (slug, raw_text, filename, embedding_size)
|
||||
SELECT slug, raw_text, filename, 1536 FROM embeddings_1536;
|
||||
|
||||
INSERT INTO fts_embeddings (slug, raw_text, filename, embedding_size)
|
||||
SELECT slug, raw_text, filename, 2048 FROM embeddings_2048;
|
||||
|
||||
INSERT INTO fts_embeddings (slug, raw_text, filename, embedding_size)
|
||||
SELECT slug, raw_text, filename, 3072 FROM embeddings_3072;
|
||||
|
||||
INSERT INTO fts_embeddings (slug, raw_text, filename, embedding_size)
|
||||
SELECT slug, raw_text, filename, 4096 FROM embeddings_4096;
|
||||
|
||||
INSERT INTO fts_embeddings (slug, raw_text, filename, embedding_size)
|
||||
SELECT slug, raw_text, filename, 5120 FROM embeddings_5120;
|
||||
-- Populate FTS table with existing embeddings (incremental - only inserts missing rows)
|
||||
-- Only use 768 embeddings as that's what we use
|
||||
INSERT OR IGNORE INTO fts_embeddings (slug, raw_text, filename, embedding_size)
|
||||
SELECT slug, raw_text, filename, 768 FROM embeddings_768;
|
||||
87
storage/migrations/005_drop_unused_embeddings.down.sql
Normal file
87
storage/migrations/005_drop_unused_embeddings.down.sql
Normal file
@@ -0,0 +1,87 @@
|
||||
-- Recreate unused embedding tables (for rollback)
|
||||
CREATE TABLE IF NOT EXISTS embeddings_384 (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
embeddings BLOB NOT NULL,
|
||||
slug TEXT NOT NULL,
|
||||
raw_text TEXT NOT NULL,
|
||||
filename TEXT NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS embeddings_1024 (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
embeddings BLOB NOT NULL,
|
||||
slug TEXT NOT NULL,
|
||||
raw_text TEXT NOT NULL,
|
||||
filename TEXT NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS embeddings_1536 (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
embeddings BLOB NOT NULL,
|
||||
slug TEXT NOT NULL,
|
||||
raw_text TEXT NOT NULL,
|
||||
filename TEXT NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS embeddings_2048 (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
embeddings BLOB NOT NULL,
|
||||
slug TEXT NOT NULL,
|
||||
raw_text TEXT NOT NULL,
|
||||
filename TEXT NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS embeddings_3072 (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
embeddings BLOB NOT NULL,
|
||||
slug TEXT NOT NULL,
|
||||
raw_text TEXT NOT NULL,
|
||||
filename TEXT NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS embeddings_4096 (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
embeddings BLOB NOT NULL,
|
||||
slug TEXT NOT NULL,
|
||||
raw_text TEXT NOT NULL,
|
||||
filename TEXT NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS embeddings_5120 (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
embeddings BLOB NOT NULL,
|
||||
slug TEXT NOT NULL,
|
||||
raw_text TEXT NOT NULL,
|
||||
filename TEXT NOT NULL,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_384_filename ON embeddings_384(filename);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_1024_filename ON embeddings_1024(filename);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_1536_filename ON embeddings_1536(filename);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_2048_filename ON embeddings_2048(filename);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_3072_filename ON embeddings_3072(filename);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_4096_filename ON embeddings_4096(filename);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_5120_filename ON embeddings_5120(filename);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_384_slug ON embeddings_384(slug);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_1024_slug ON embeddings_1024(slug);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_1536_slug ON embeddings_1536(slug);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_2048_slug ON embeddings_2048(slug);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_3072_slug ON embeddings_3072(slug);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_4096_slug ON embeddings_4096(slug);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_5120_slug ON embeddings_5120(slug);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_384_created_at ON embeddings_384(created_at);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_1024_created_at ON embeddings_1024(created_at);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_1536_created_at ON embeddings_1536(created_at);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_2048_created_at ON embeddings_2048(created_at);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_3072_created_at ON embeddings_3072(created_at);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_4096_created_at ON embeddings_4096(created_at);
|
||||
CREATE INDEX IF NOT EXISTS idx_embeddings_5120_created_at ON embeddings_5120(created_at);
|
||||
32
storage/migrations/005_drop_unused_embeddings.up.sql
Normal file
32
storage/migrations/005_drop_unused_embeddings.up.sql
Normal file
@@ -0,0 +1,32 @@
|
||||
-- Drop unused embedding tables (we only use 768)
|
||||
DROP INDEX IF EXISTS idx_embeddings_384_filename;
|
||||
DROP INDEX IF EXISTS idx_embeddings_1024_filename;
|
||||
DROP INDEX IF EXISTS idx_embeddings_1536_filename;
|
||||
DROP INDEX IF EXISTS idx_embeddings_2048_filename;
|
||||
DROP INDEX IF EXISTS idx_embeddings_3072_filename;
|
||||
DROP INDEX IF EXISTS idx_embeddings_4096_filename;
|
||||
DROP INDEX IF EXISTS idx_embeddings_5120_filename;
|
||||
|
||||
DROP INDEX IF EXISTS idx_embeddings_384_slug;
|
||||
DROP INDEX IF EXISTS idx_embeddings_1024_slug;
|
||||
DROP INDEX IF EXISTS idx_embeddings_1536_slug;
|
||||
DROP INDEX IF EXISTS idx_embeddings_2048_slug;
|
||||
DROP INDEX IF EXISTS idx_embeddings_3072_slug;
|
||||
DROP INDEX IF EXISTS idx_embeddings_4096_slug;
|
||||
DROP INDEX IF EXISTS idx_embeddings_5120_slug;
|
||||
|
||||
DROP INDEX IF EXISTS idx_embeddings_384_created_at;
|
||||
DROP INDEX IF EXISTS idx_embeddings_1024_created_at;
|
||||
DROP INDEX IF EXISTS idx_embeddings_1536_created_at;
|
||||
DROP INDEX IF EXISTS idx_embeddings_2048_created_at;
|
||||
DROP INDEX IF EXISTS idx_embeddings_3072_created_at;
|
||||
DROP INDEX IF EXISTS idx_embeddings_4096_created_at;
|
||||
DROP INDEX IF EXISTS idx_embeddings_5120_created_at;
|
||||
|
||||
DROP TABLE IF EXISTS embeddings_384;
|
||||
DROP TABLE IF EXISTS embeddings_1024;
|
||||
DROP TABLE IF EXISTS embeddings_1536;
|
||||
DROP TABLE IF EXISTS embeddings_2048;
|
||||
DROP TABLE IF EXISTS embeddings_3072;
|
||||
DROP TABLE IF EXISTS embeddings_4096;
|
||||
DROP TABLE IF EXISTS embeddings_5120;
|
||||
Reference in New Issue
Block a user