Latest revision |
Your text |
Line 400: |
Line 400: |
| == Extra configuration == | | == Extra configuration == |
|
| |
|
| Depending on which distro you use or how many posts you have, some configs might need to be changed. | | Depending on which distro you use, some configs might need to be changed. |
|
| |
|
| === Fixing thumbnail creation === | | === Fixing thumbnail creation === |
Line 409: |
Line 409: |
| </pre> | | </pre> |
| and make sure it is the same value in Admin panel -> general -> Imagemagick Convert | | and make sure it is the same value in Admin panel -> general -> Imagemagick Convert |
|
| |
| === For Huge Boards: Problem with random dropped posts/threads due to stats triggers ===
| |
|
| |
| When Desuarchive was configured with a new server using the 4plebs fork of FoolFuuka and Asagi, it was a mystery why /a/ was behind in archiving. Normal posts were being bled somehow.
| |
|
| |
| But everything was running fine configuration-wise. No asagi errors. Nothing. And all other boards were great.
| |
|
| |
| However, ''just get rid of stats triggers/procedures'' and it should be fine.
| |
|
| |
| Asagi has triggers that update {{ic|_daily}} and {{ic|_users}} tables. FFuuka stats plugin reads those tables and make stats. Probably the {{ic|_users}} table was messed up/too large for /a/, so it slows down inserts because the update runs before it.
| |
|
| |
| 4plebs is working on stats plugins that does it without them, since stats calc on insert isn't a smart idea.
| |
|
| |
| ==== Procedure ====
| |
|
| |
| I just removed the calls to stats procedures. Should work but check it out first. But should leave the procedures there (commented out?) so that you can go back.
| |
|
| |
| # Stop Asagi.
| |
| # Run the code below:
| |
| # Start Asagi.
| |
|
| |
| {{lc|<nowiki>
| |
| DROP TRIGGER IF EXISTS "after_ins_a";
| |
|
| |
| delimiter //
| |
|
| |
| CREATE TRIGGER "after_ins_a" AFTER INSERT ON "a"
| |
| FOR EACH ROW
| |
| BEGIN
| |
| IF NEW.op = 1 THEN
| |
| CALL create_thread_a(NEW.num, NEW.timestamp);
| |
| END IF;
| |
| CALL update_thread_a(NEW.thread_num);
| |
| END//
| |
|
| |
| DROP TRIGGER IF EXISTS "after_del_a"//
| |
|
| |
| CREATE TRIGGER "after_del_a" AFTER DELETE ON "a"
| |
| FOR EACH ROW
| |
| BEGIN
| |
| CALL update_thread_a(OLD.thread_num);
| |
| IF OLD.op = 1 THEN
| |
| CALL delete_thread_a(OLD.num);
| |
| END IF;
| |
| IF OLD.media_hash IS NOT NULL THEN
| |
| CALL delete_image_a(OLD.media_id);
| |
| END IF;
| |
| END//
| |
|
| |
|
| |
| delimiter ;
| |
| </nowiki>|lang=sql}}
| |