From fa286d4eb5412d1d0642cc94fe1ccc5888721f51 Mon Sep 17 00:00:00 2001 From: Erik Bernhardson Date: Fri, 7 Nov 2014 16:43:57 -0800 Subject: [PATCH] Doc: Document problem sorting inserted data Adds documentation referencing the root cause of the linked intermittent failures caused by some versions of sqlite mis-handling this data. Logs an error indicating that this is a known buggy workaroung along with the solution. Bug: 72367 Change-Id: If26346e4d71560d6a8a3f79a52e52ee6e90e0304 --- includes/db/DatabaseSqlite.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/includes/db/DatabaseSqlite.php b/includes/db/DatabaseSqlite.php index dd2e813e55..9257ffe508 100644 --- a/includes/db/DatabaseSqlite.php +++ b/includes/db/DatabaseSqlite.php @@ -787,6 +787,10 @@ class DatabaseSqlite extends DatabaseBase { // https://bugs.php.net/bug.php?id=63419 // There was already a similar report for SQLite3::escapeString, bug #62361: // https://bugs.php.net/bug.php?id=62361 + // There is an additional bug regarding sorting this data after insert + // on older versions of sqlite shipped with ubuntu 12.04 + // https://bugzilla.wikimedia.org/show_bug.cgi?id=72367 + wfDebugLog( __CLASS__, __FUNCTION__ . ': Quoting value containing null byte. For consistency all binary data should have been first processed with self::encodeBlob()' ); return "x'" . bin2hex( $s ) . "'"; } else { return $this->mConn->quote( $s ); -- 2.20.1