From a60bd5060a67ece7ca5192566d0b95c4f0257813 Mon Sep 17 00:00:00 2001 From: Leons Petrazickis Date: Sat, 15 Aug 2009 21:29:58 +0000 Subject: [PATCH] config/index.php: * Made installation on IBM DB2 more robust * Replaced E_ALL with E_ALL | E_STRICT includes/db/DatabaseIbm_db2.php * Enabled DB2_CASE_LOWER option for all connections and statements * Enabled DB2_DEFERRED_PREPARE_ON for all statements -- delays statement preparation until execution to reduce database load * Enabled DB2_ROWCOUNT_PREFETCH_ON for all statements -- makes db2_num_rows() work correctly * Cleaned up error handling * Cleaned up method signatures * Rewrote insertion to use prepared statements -- required for inserting more than 32k of text * Insertion will never try to insert a NULL value into a primary key * Now relying on implicit casting in DB2 9.7 -- no longer sniffing to see if column is integer or string before adding quotes * Implemented actual prepared statement handling -- required for correct INSERT, UPDATE behaviour * In install mode, the class will print additional messages to the install bullet scroll * Added bitwise operations (BITNOT, BITAND, BITOR) includes/specials/SpecialAncientpages.php * Added skeleton DB2 syntax to the database-specific switch statement maintenance/convertLinks.inc * Made limit clause database-agnostic maintenance/ibm_db2/README * Contents replaced with link to http://www.mediawiki.org/wiki/Manual:IBM_DB2 maintenance/ibm_db2/tables.sql * Revised types to better match the MySQL schema * All tables names now the same as MySQL -- was using Postgres names before * Added some additional indices * Added the change_tag, tag_summary, valid_tag, user_properties, log_search, and l10n_cache tables * Added several new columns maintenance/storage/compressOld.inc * Made limit clause database-agnostic --- config/index.php | 31 +- includes/db/DatabaseIbm_db2.php | 512 +++++++++++++--------- includes/specials/SpecialAncientpages.php | 4 + maintenance/convertLinks.inc | 6 +- maintenance/ibm_db2/README | 40 +- maintenance/ibm_db2/tables.sql | 419 +++++++++++------- maintenance/storage/compressOld.inc | 3 +- 7 files changed, 616 insertions(+), 399 deletions(-) diff --git a/config/index.php b/config/index.php index 0722588dd1..55011e107c 100644 --- a/config/index.php +++ b/config/index.php @@ -19,7 +19,7 @@ # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # http://www.gnu.org/copyleft/gpl.html -error_reporting( E_ALL ); +error_reporting( E_ALL | E_STRICT ); header( "Content-type: text/html; charset=utf-8" ); @ini_set( "display_errors", true ); @@ -328,7 +328,7 @@ foreach (array_keys($ourdb) as $db) { $ourdb[$db]['havedriver'] = 1; } } -error_reporting( E_ALL ); +error_reporting( E_ALL | E_STRICT ); if (!$phpdatabases) { print "Could not find a suitable database driver!