For one of our custom wikis we have a Special Page that creates new pages based on form input. This used to work in MW1.23 but in the long overdue update to MW1.31 it stopped working.
The Special Page is supposed to write a record to a shared external database and then use the autoincremented row number to set the name of the page that will be created. I’m using $dbw->insert to do this. In 1.31 the autoincrement index gets bumped but the row doesn’t get written. If I do the same insert from a maintenance script, it works, so I’m assuming it doesn’t have anything to do with general configurations or other extensions (which I’ve inactivated). After it gets a value for the lastInsertID it tries to make a page from a template. That page is never created and I see this in the error logs: PHP Fatal error: Uncaught Wikimedia\\Rdbms\\DBUnexpectedError: Wikimedia\\Rdbms\\Database::close: mass commit/rollback of peer transaction required (DBO_TRX set). in /Library/WebServer/Documents/omp/wiki/includes/libs/rdbms/database/Database.php:916\nStack trace:\n#0 /Library/WebServer/Documents/omp/wiki/includes/libs/rdbms/loadbalancer/LoadBalancer.php(1217): Wikimedia\\Rdbms\\Database->close()\n#1 [internal function]: Wikimedia\\Rdbms\\LoadBalancer->Wikimedia\\Rdbms\\{closure}(Object(Wikimedia\\Rdbms\\DatabaseMysqli))\n#2 /Library/WebServer/Documents/omp/wiki/includes/libs/rdbms/loadbalancer/LoadBalancer.php(1640): call_user_func_array(Object(Closure), Array)\n#3 /Library/WebServer/Documents/omp/wiki/includes/libs/rdbms/loadbalancer/LoadBalancer.php(1218): Wikimedia\\Rdbms\\LoadBalancer->forEachOpenConnection(Object(Closure))\n#4 /Library/WebServer/Documents/omp/wiki/includes/libs/rdbms/loadbalancer/LoadBalancer.php(1208): Wikimedia\\Rdbms\\LoadBalancer->closeAll()\n#5 /Library/WebServer/Documents/omp/wiki/includes/libs/rdbms/loadbalancer/LoadBal in /Library/WebServer/Documents/omp/wiki/includes/libs/rdbms/database/Database.php on line 916, referer: http://localhost/omp/wiki/index.php/Special:StrainNewPage This happens even if comment out the code that accesses the external database completely and hard code the ID. Other Special Page extensions we have that create new pages seem to work on 1.31.1. I’m wondering if this is related to the method that now fails being a callback from HTMLforms for processing form submission. Any insight, help in debugging this would be much appreciated. Apologies if I’m using some terminology incorrectly (I’m a biologist more than a coder). Jim Hu _______________________________________________ Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l