mirror of
https://github.com/Eggbertx/gochan.git
synced 2025-08-02 10:56:25 -07:00
Add #if flag markers in sql macro script
Made some changes
This commit is contained in:
parent
72eb7e5467
commit
3905ec1393
4 changed files with 67 additions and 35 deletions
|
@ -15,14 +15,30 @@ macros = [
|
||||||
macro("drop fk", "DROP CONSTRAINT", "DROP FOREIGN KEY")
|
macro("drop fk", "DROP CONSTRAINT", "DROP FOREIGN KEY")
|
||||||
]
|
]
|
||||||
|
|
||||||
|
def compileOutIfs(text, flag):
|
||||||
|
lines = text.splitlines()
|
||||||
|
newText = ""
|
||||||
|
compile = True
|
||||||
|
for i in lines:
|
||||||
|
if "#IF" in i:
|
||||||
|
if flag in i:
|
||||||
|
compile = True
|
||||||
|
else:
|
||||||
|
compile = False
|
||||||
|
elif "#ENDIF" in i:
|
||||||
|
compile = True
|
||||||
|
elif compile:
|
||||||
|
newText += i + "\n"
|
||||||
|
return newText
|
||||||
|
|
||||||
def dofile(filestart):
|
def dofile(filestart):
|
||||||
print("building " + filestart + " sql file")
|
print("building " + filestart + " sql file")
|
||||||
masterfileIn = open(filestart + "master.sql", 'r')
|
masterfileIn = open(filestart + "master.sql", 'r')
|
||||||
masterfile = masterfileIn.read()
|
masterfile = masterfileIn.read()
|
||||||
masterfileIn.close()
|
masterfileIn.close()
|
||||||
|
|
||||||
postgresProcessed = masterfile
|
postgresProcessed = compileOutIfs(masterfile, "POSTGRES")
|
||||||
mysqlProcessed = masterfile
|
mysqlProcessed = compileOutIfs(masterfile, "MYSQL")
|
||||||
|
|
||||||
for item in macros:
|
for item in macros:
|
||||||
macroCode = "{" + item.macroname + "}"
|
macroCode = "{" + item.macroname + "}"
|
||||||
|
|
|
@ -69,22 +69,43 @@ ALTER TABLE DBPREFIXthreads ADD oldpostid int;
|
||||||
ALTER TABLE DBPREFIXposts ADD oldselfid int;
|
ALTER TABLE DBPREFIXposts ADD oldselfid int;
|
||||||
ALTER TABLE DBPREFIXposts ADD oldparentid int;
|
ALTER TABLE DBPREFIXposts ADD oldparentid int;
|
||||||
ALTER TABLE DBPREFIXposts ADD oldboardid int;
|
ALTER TABLE DBPREFIXposts ADD oldboardid int;
|
||||||
ALTER TABLE DBPREFIXposts {drop fk} thread_id;
|
ALTER TABLE DBPREFIXposts {drop fk} posts_thread_id_fk;
|
||||||
ALTER TABLE DBPREFIXfiles ADD oldpostid int;
|
ALTER TABLE DBPREFIXfiles ADD oldpostid int;
|
||||||
ALTER TABLE DBPREFIXfiles ADD oldboardid int;
|
ALTER TABLE DBPREFIXfiles ADD oldboardid int;
|
||||||
ALTER TABLE DBPREFIXfiles {drop fk} post_id;
|
ALTER TABLE DBPREFIXfiles {drop fk} files_post_id_fk;
|
||||||
|
#IF POSTGRES
|
||||||
|
-- Drops not null constraint
|
||||||
|
ALTER TABLE DBPREFIXposts ALTER COLUMN thread_id DROP NOT NULL;
|
||||||
|
ALTER TABLE DBPREFIXfiles ALTER COLUMN post_id DROP NOT NULL;
|
||||||
|
#ENDIF
|
||||||
|
#IF MYSQL
|
||||||
|
-- Drops not null constraint
|
||||||
|
ALTER TABLE DBPREFIXposts MODIFY thread_id {fk to serial};
|
||||||
|
ALTER TABLE DBPREFIXfiles MODIFY post_id {fk to serial};
|
||||||
|
#ENDIF
|
||||||
|
|
||||||
INSERT INTO DBPREFIXthreads(board_id, locked, stickied, anchored, last_bump, is_deleted, deleted_at, oldpostid)
|
INSERT INTO DBPREFIXthreads(board_id, locked, stickied, anchored, last_bump, is_deleted, deleted_at, oldpostid)
|
||||||
SELECT boardid, locked, stickied, autosage, bumped, deleted_timestamp > '2000-01-01', deleted_timestamp, id FROM DBPREFIXposts_old WHERE parentid = 0;
|
SELECT boardid, locked, stickied, autosage, bumped, deleted_timestamp > '2000-01-01', deleted_timestamp, id FROM DBPREFIXposts_old WHERE parentid = 0;
|
||||||
|
|
||||||
INSERT INTO DBPREFIXposts(is_top_post, ip, created_on, name, tripcode, is_role_signature, email, subject, message, message_raw, password, deleted_at, is_deleted, oldparentid, oldboardid)
|
INSERT INTO DBPREFIXposts(is_top_post, ip, created_on, name, tripcode, is_role_signature, email, subject, message, message_raw, password, deleted_at, is_deleted, oldparentid, oldboardid, oldselfid)
|
||||||
SELECT parentid = 0, ip, timestamp, name, tripcode, false, email, subject,
|
SELECT parentid = 0, ip, timestamp, name, tripcode, false, email, subject,
|
||||||
message, message_raw, password, deleted_timestamp, deleted_timestamp > '2000-01-01', CASE WHEN parentid = 0 THEN id ELSE parentid, boardid from DBPREFIXposts_old;
|
message, message_raw, password, deleted_timestamp, deleted_timestamp > '2000-01-01', id, boardid, id from DBPREFIXposts_old WHERE parentid = 0;
|
||||||
|
|
||||||
|
INSERT INTO DBPREFIXposts(is_top_post, ip, created_on, name, tripcode, is_role_signature, email, subject, message, message_raw, password, deleted_at, is_deleted, oldparentid, oldboardid, oldselfid)
|
||||||
|
SELECT parentid = 0, ip, timestamp, name, tripcode, false, email, subject,
|
||||||
|
message, message_raw, password, deleted_timestamp, deleted_timestamp > '2000-01-01', parentid, boardid, id from DBPREFIXposts_old WHERE parentid <> 0;
|
||||||
|
|
||||||
|
#IF NEVER
|
||||||
|
UPDATE DBPREFIXposts as posts
|
||||||
|
SET thread_id = thread.id
|
||||||
|
FROM DBPREFIXthreads as threads
|
||||||
|
WHERE threads.oldpostid = posts.oldparentid AND thread.board_id = posts.oldboardid;
|
||||||
|
|
||||||
|
/*
|
||||||
UPDATE DBPREFIXposts as posts, DBPREFIXthreads as threads
|
UPDATE DBPREFIXposts as posts, DBPREFIXthreads as threads
|
||||||
SET posts.thread_id = thread.id
|
SET posts.thread_id = thread.id
|
||||||
WHERE threads.oldpostid = posts.oldparentid AND thread.board_id = posts.oldboardid;
|
WHERE threads.oldpostid = posts.oldparentid AND thread.board_id = posts.oldboardid;
|
||||||
|
*/
|
||||||
INSERT INTO DBPREFIXfiles(file_oder, original_filename, filename, checksum, file_size, is_spoilered, width, height, thumbnail_width, thumbnail_height, oldpostid, oldboardid)
|
INSERT INTO DBPREFIXfiles(file_oder, original_filename, filename, checksum, file_size, is_spoilered, width, height, thumbnail_width, thumbnail_height, oldpostid, oldboardid)
|
||||||
SELECT 1, filename_original, filename, file_checksum, filesize, false, image_w, image_h, thumb_w, thumb_h, id, boardid FROM DBPREFIXposts_old WHERE filename != '';
|
SELECT 1, filename_original, filename, file_checksum, filesize, false, image_w, image_h, thumb_w, thumb_h, id, boardid FROM DBPREFIXposts_old WHERE filename != '';
|
||||||
|
|
||||||
|
@ -92,3 +113,6 @@ UPDATE DBPREFIXfiles as files, DBPREFIXposts as posts
|
||||||
SET files.post_id = posts.id
|
SET files.post_id = posts.id
|
||||||
WHERE files.oldpostid = posts.oldselfid AND files.oldboardid = posts.oldboardid;
|
WHERE files.oldpostid = posts.oldselfid AND files.oldboardid = posts.oldboardid;
|
||||||
|
|
||||||
|
--Redefine foreign keys and not nulls
|
||||||
|
|
||||||
|
#ENDIF NEVER
|
|
@ -69,26 +69,22 @@ ALTER TABLE DBPREFIXthreads ADD oldpostid int;
|
||||||
ALTER TABLE DBPREFIXposts ADD oldselfid int;
|
ALTER TABLE DBPREFIXposts ADD oldselfid int;
|
||||||
ALTER TABLE DBPREFIXposts ADD oldparentid int;
|
ALTER TABLE DBPREFIXposts ADD oldparentid int;
|
||||||
ALTER TABLE DBPREFIXposts ADD oldboardid int;
|
ALTER TABLE DBPREFIXposts ADD oldboardid int;
|
||||||
ALTER TABLE DBPREFIXposts DROP FOREIGN KEY thread_id;
|
ALTER TABLE DBPREFIXposts DROP FOREIGN KEY posts_thread_id_fk;
|
||||||
ALTER TABLE DBPREFIXfiles ADD oldpostid int;
|
ALTER TABLE DBPREFIXfiles ADD oldpostid int;
|
||||||
ALTER TABLE DBPREFIXfiles ADD oldboardid int;
|
ALTER TABLE DBPREFIXfiles ADD oldboardid int;
|
||||||
ALTER TABLE DBPREFIXfiles DROP FOREIGN KEY post_id;
|
ALTER TABLE DBPREFIXfiles DROP FOREIGN KEY files_post_id_fk;
|
||||||
|
-- Drops not null constraint
|
||||||
|
ALTER TABLE DBPREFIXposts MODIFY thread_id BIGINT;
|
||||||
|
ALTER TABLE DBPREFIXfiles MODIFY post_id BIGINT;
|
||||||
|
|
||||||
INSERT INTO DBPREFIXthreads(board_id, locked, stickied, anchored, last_bump, is_deleted, deleted_at, oldpostid)
|
INSERT INTO DBPREFIXthreads(board_id, locked, stickied, anchored, last_bump, is_deleted, deleted_at, oldpostid)
|
||||||
SELECT boardid, locked, stickied, autosage, bumped, deleted_timestamp > '2000-01-01', deleted_timestamp, id FROM DBPREFIXposts_old WHERE parentid = 0;
|
SELECT boardid, locked, stickied, autosage, bumped, deleted_timestamp > '2000-01-01', deleted_timestamp, id FROM DBPREFIXposts_old WHERE parentid = 0;
|
||||||
|
|
||||||
INSERT INTO DBPREFIXposts(is_top_post, ip, created_on, name, tripcode, is_role_signature, email, subject, message, message_raw, password, deleted_at, is_deleted, oldparentid, oldboardid)
|
INSERT INTO DBPREFIXposts(is_top_post, ip, created_on, name, tripcode, is_role_signature, email, subject, message, message_raw, password, deleted_at, is_deleted, oldparentid, oldboardid, oldselfid)
|
||||||
SELECT parentid = 0, ip, timestamp, name, tripcode, false, email, subject,
|
SELECT parentid = 0, ip, timestamp, name, tripcode, false, email, subject,
|
||||||
message, message_raw, password, deleted_timestamp, deleted_timestamp > '2000-01-01', CASE WHEN parentid = 0 THEN id ELSE parentid, boardid from DBPREFIXposts_old;
|
message, message_raw, password, deleted_timestamp, deleted_timestamp > '2000-01-01', id, boardid, id from DBPREFIXposts_old WHERE parentid = 0;
|
||||||
|
|
||||||
UPDATE DBPREFIXposts as posts, DBPREFIXthreads as threads
|
INSERT INTO DBPREFIXposts(is_top_post, ip, created_on, name, tripcode, is_role_signature, email, subject, message, message_raw, password, deleted_at, is_deleted, oldparentid, oldboardid, oldselfid)
|
||||||
SET posts.thread_id = thread.id
|
SELECT parentid = 0, ip, timestamp, name, tripcode, false, email, subject,
|
||||||
WHERE threads.oldpostid = posts.oldparentid AND thread.board_id = posts.oldboardid;
|
message, message_raw, password, deleted_timestamp, deleted_timestamp > '2000-01-01', parentid, boardid, id from DBPREFIXposts_old WHERE parentid <> 0;
|
||||||
|
|
||||||
INSERT INTO DBPREFIXfiles(file_oder, original_filename, filename, checksum, file_size, is_spoilered, width, height, thumbnail_width, thumbnail_height, oldpostid, oldboardid)
|
|
||||||
SELECT 1, filename_original, filename, file_checksum, filesize, false, image_w, image_h, thumb_w, thumb_h, id, boardid FROM DBPREFIXposts_old WHERE filename != '';
|
|
||||||
|
|
||||||
UPDATE DBPREFIXfiles as files, DBPREFIXposts as posts
|
|
||||||
SET files.post_id = posts.id
|
|
||||||
WHERE files.oldpostid = posts.oldselfid AND files.oldboardid = posts.oldboardid;
|
|
||||||
|
|
||||||
|
|
|
@ -69,26 +69,22 @@ ALTER TABLE DBPREFIXthreads ADD oldpostid int;
|
||||||
ALTER TABLE DBPREFIXposts ADD oldselfid int;
|
ALTER TABLE DBPREFIXposts ADD oldselfid int;
|
||||||
ALTER TABLE DBPREFIXposts ADD oldparentid int;
|
ALTER TABLE DBPREFIXposts ADD oldparentid int;
|
||||||
ALTER TABLE DBPREFIXposts ADD oldboardid int;
|
ALTER TABLE DBPREFIXposts ADD oldboardid int;
|
||||||
ALTER TABLE DBPREFIXposts DROP CONSTRAINT thread_id;
|
ALTER TABLE DBPREFIXposts DROP CONSTRAINT posts_thread_id_fk;
|
||||||
ALTER TABLE DBPREFIXfiles ADD oldpostid int;
|
ALTER TABLE DBPREFIXfiles ADD oldpostid int;
|
||||||
ALTER TABLE DBPREFIXfiles ADD oldboardid int;
|
ALTER TABLE DBPREFIXfiles ADD oldboardid int;
|
||||||
ALTER TABLE DBPREFIXfiles DROP CONSTRAINT post_id;
|
ALTER TABLE DBPREFIXfiles DROP CONSTRAINT files_post_id_fk;
|
||||||
|
-- Drops not null constraint
|
||||||
|
ALTER TABLE DBPREFIXposts ALTER COLUMN thread_id DROP NOT NULL;
|
||||||
|
ALTER TABLE DBPREFIXfiles ALTER COLUMN post_id DROP NOT NULL;
|
||||||
|
|
||||||
INSERT INTO DBPREFIXthreads(board_id, locked, stickied, anchored, last_bump, is_deleted, deleted_at, oldpostid)
|
INSERT INTO DBPREFIXthreads(board_id, locked, stickied, anchored, last_bump, is_deleted, deleted_at, oldpostid)
|
||||||
SELECT boardid, locked, stickied, autosage, bumped, deleted_timestamp > '2000-01-01', deleted_timestamp, id FROM DBPREFIXposts_old WHERE parentid = 0;
|
SELECT boardid, locked, stickied, autosage, bumped, deleted_timestamp > '2000-01-01', deleted_timestamp, id FROM DBPREFIXposts_old WHERE parentid = 0;
|
||||||
|
|
||||||
INSERT INTO DBPREFIXposts(is_top_post, ip, created_on, name, tripcode, is_role_signature, email, subject, message, message_raw, password, deleted_at, is_deleted, oldparentid, oldboardid)
|
INSERT INTO DBPREFIXposts(is_top_post, ip, created_on, name, tripcode, is_role_signature, email, subject, message, message_raw, password, deleted_at, is_deleted, oldparentid, oldboardid, oldselfid)
|
||||||
SELECT parentid = 0, ip, timestamp, name, tripcode, false, email, subject,
|
SELECT parentid = 0, ip, timestamp, name, tripcode, false, email, subject,
|
||||||
message, message_raw, password, deleted_timestamp, deleted_timestamp > '2000-01-01', CASE WHEN parentid = 0 THEN id ELSE parentid, boardid from DBPREFIXposts_old;
|
message, message_raw, password, deleted_timestamp, deleted_timestamp > '2000-01-01', id, boardid, id from DBPREFIXposts_old WHERE parentid = 0;
|
||||||
|
|
||||||
UPDATE DBPREFIXposts as posts, DBPREFIXthreads as threads
|
INSERT INTO DBPREFIXposts(is_top_post, ip, created_on, name, tripcode, is_role_signature, email, subject, message, message_raw, password, deleted_at, is_deleted, oldparentid, oldboardid, oldselfid)
|
||||||
SET posts.thread_id = thread.id
|
SELECT parentid = 0, ip, timestamp, name, tripcode, false, email, subject,
|
||||||
WHERE threads.oldpostid = posts.oldparentid AND thread.board_id = posts.oldboardid;
|
message, message_raw, password, deleted_timestamp, deleted_timestamp > '2000-01-01', parentid, boardid, id from DBPREFIXposts_old WHERE parentid <> 0;
|
||||||
|
|
||||||
INSERT INTO DBPREFIXfiles(file_oder, original_filename, filename, checksum, file_size, is_spoilered, width, height, thumbnail_width, thumbnail_height, oldpostid, oldboardid)
|
|
||||||
SELECT 1, filename_original, filename, file_checksum, filesize, false, image_w, image_h, thumb_w, thumb_h, id, boardid FROM DBPREFIXposts_old WHERE filename != '';
|
|
||||||
|
|
||||||
UPDATE DBPREFIXfiles as files, DBPREFIXposts as posts
|
|
||||||
SET files.post_id = posts.id
|
|
||||||
WHERE files.oldpostid = posts.oldselfid AND files.oldboardid = posts.oldboardid;
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue