SimpleMachines/SMF2.1 — pull request #390 by gnif (2013-06-04 03:46:29+00:00)
Title: Added MySQLi database abstraction layer

This commit adds a MySQLi abstraction layer wihout duplication all the code in DbExtra-mysql.php etc. This should be used as the default as the mysql_* API is being deprecated as well as has problems with persistant connections on versions of PHP later then 4.0.

See: http://php.net/manual/en/mysqli.persistconns.php

> The problem with persistent connections is that they can be left in unpredictable states by clients. For example, a table lock might be activated before a client terminates unexpectedly. A new client process reusing this persistent connection will get the connection "as is". Any cleanup would need to be done by the new client process before it could make good use of the persistent connection, increasing the burden on the programmer.