--- /dev/null
+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;
+
active_counts(&conn);
update_banned_when_expired(&conn);
reindex_aggregates_tables(&conn, true);
+ drop_ccnew_indexes(&conn);
});
let conn = pool.get()?;
.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");
+}