Adding job to drop phantom ccnew indexes. Fixes #2431 (#2432)

This commit is contained in:
Dessalines 2022-09-07 08:12:51 -04:00 committed by GitHub
parent 3f2a689edf
commit eacd4e44cd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 0 deletions

View File

@ -0,0 +1 @@
drop function drop_ccnew_indexes;

View File

@ -0,0 +1,13 @@
CREATE OR REPLACE FUNCTION drop_ccnew_indexes() RETURNS INTEGER AS $$
DECLARE
i RECORD;
BEGIN
FOR i IN
(SELECT relname FROM pg_class WHERE relname like '%ccnew%')
LOOP
EXECUTE 'DROP INDEX ' || i.relname;
END LOOP;
RETURN 1;
END;
$$ LANGUAGE plpgsql;

View File

@ -22,6 +22,7 @@ pub fn setup(pool: DbPool) -> Result<(), LemmyError> {
active_counts(&conn);
update_banned_when_expired(&conn);
reindex_aggregates_tables(&conn, true);
drop_ccnew_indexes(&conn);
});
let conn = pool.get()?;
@ -103,3 +104,13 @@ fn update_banned_when_expired(conn: &PgConnection) {
.execute(conn)
.expect("update banned when expires");
}
/// Drops the phantom CCNEW indexes created by postgres
/// https://github.com/LemmyNet/lemmy/issues/2431
fn drop_ccnew_indexes(conn: &PgConnection) {
info!("Dropping phantom ccnew indexes...");
let drop_stmt = "select drop_ccnew_indexes()";
sql_query(drop_stmt)
.execute(conn)
.expect("drop ccnew indexes");
}