Dungeons and Dragons Wiki:Eiji Navbox Tribute

From Dungeons and Dragons Wiki
Jump to: navigation, search

A Memorial for Eiji's NavBox[edit]

It often comes to pass that as extensions and capability get added to software, someone else will build on top of them and make new things. This is exactly what Havvy did with our NavBoxes -- little expandable boxes at the bottom of homebrew articles that contain links to other articles by the same author. It's a great feature to have, but little did we know it would cause a subtle and hilarious bug.

MediaWiki (the software that runs this website) and one of its add-ons, Semantic MediaWiki, are not exactly the most performant web applications ever. Okay, I'll be honest here — their performance is fucking horrible, and it's only gotten worse over the years as new versions have been released. So very suddenly, after an upgrade, I was informed by Eiji that he was unable to edit any of his pages. Eiji is a prodigious user and has written an absolutely insane amount of content on for the wiki — over 2000 articles! Ironically enough he could create new articles, but couldn't edit anything!

Investigation (read: randomly disabling things to see what would happen) revealed that it was his NavBox that was causing the trouble. That software upgrade had resulted in even worse performance from Semantic MediaWiki than usual, and his NavBox was attempting to display links for all 2000+ of his articles! The problem only showed itself when he would edit a page because normally pages are rendered ahead-a-time and cached in the system, so they would not have to be regenerated every time someone visited anything on the wiki. Remember, MediaWiki has horrible performance, so if pages were regenerated this way the website would quickly come crashing to a halt. But editing a page forces it to be regenerated. Forcing the page to be regenerated forced the NavBox to try to pull in all 2000 of Eiji's articles. The system simply collapsed under the strain of that Herculean task. To recover without getting rid of the NavBoxes, I set them to only display up to a sensible 100 articles instead of "everything ever".

So congratulations, Eiji. You wrote so much you broke the wiki.