You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by br...@apache.org on 2014/02/12 20:30:23 UTC

svn commit: r1567732 - in /subversion/branches/1.8.x: ./ STATUS subversion/libsvn_subr/sqlite.c

Author: breser
Date: Wed Feb 12 19:30:23 2014
New Revision: 1567732

URL: http://svn.apache.org/r1567732
Log:
Merge the 1.8.x-r1567286 branch:

 * r1567286, r1567392
   Disable SQLITE_ENABLE_STAT3/4 with versions of SQLite that are buggy.
   Justification:
     SQLite returns incorrect results for queries.  Try to help our users
     and packagers from using buggy setups.
   Branch:
     ^/subversion/branches/1.8.x-r1567286
   Url:
     http://www.sqlite.org/src/info/4c86b126f2
   Votes:
     +1: breser, rhuijben, philip
     +1: (different patch) brane

Modified:
    subversion/branches/1.8.x/   (props changed)
    subversion/branches/1.8.x/STATUS
    subversion/branches/1.8.x/subversion/libsvn_subr/sqlite.c

Propchange: subversion/branches/1.8.x/
------------------------------------------------------------------------------
  Merged /subversion/trunk:r1567286,1567392
  Merged /subversion/branches/1.8.x-r1567286:r1567364-1567731

Modified: subversion/branches/1.8.x/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x/STATUS?rev=1567732&r1=1567731&r2=1567732&view=diff
==============================================================================
--- subversion/branches/1.8.x/STATUS (original)
+++ subversion/branches/1.8.x/STATUS Wed Feb 12 19:30:23 2014
@@ -190,19 +190,6 @@ Veto-blocked changes:
 Approved changes:
 =================
 
- * r1567286, r1567392
-   Disable SQLITE_ENABLE_STAT3/4 with versions of SQLite that are buggy.
-   Justification:
-     SQLite returns incorrect results for queries.  Try to help our users
-     and packagers from using buggy setups.
-   Branch:
-     ^/subversion/branches/1.8.x-r1567286
-   Url:
-     http://www.sqlite.org/src/info/4c86b126f2
-   Votes:
-     +1: breser, rhuijben, philip
-     +1: (different patch) brane
-
  * r1567109, r1567134
    Fix an sqlite query definition to always return its rows in the order the
    C code expects them to be. This resolves some potential problems in the

Modified: subversion/branches/1.8.x/subversion/libsvn_subr/sqlite.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/libsvn_subr/sqlite.c?rev=1567732&r1=1567731&r2=1567732&view=diff
==============================================================================
--- subversion/branches/1.8.x/subversion/libsvn_subr/sqlite.c (original)
+++ subversion/branches/1.8.x/subversion/libsvn_subr/sqlite.c Wed Feb 12 19:30:23 2014
@@ -902,6 +902,18 @@ svn_sqlite__open(svn_sqlite__db_t **db, 
 
   SVN_ERR(internal_open(&(*db)->db3, path, mode, scratch_pool));
 
+#if SQLITE_VERSION_NUMBER >= 3008000 && SQLITE_VERSION_NUMBER < 3009000
+  /* disable SQLITE_ENABLE_STAT3/4 from 3.8.1 - 3.8.3 (but not 3.8.3.1+)
+   * to prevent using it when it's buggy.
+   * See: https://www.sqlite.org/src/info/4c86b126f2 */
+  if (sqlite3_libversion_number() > 3008000 &&
+      sqlite3_libversion_number() < 3008004 &&
+      strcmp(sqlite3_sourceid(),"2014-02-11")<0)
+    {
+      sqlite3_test_control(SQLITE_TESTCTRL_OPTIMIZATIONS, (*db)->db3, 0x800);
+    }
+#endif
+
 #ifdef SQLITE3_DEBUG
   sqlite3_trace((*db)->db3, sqlite_tracer, (*db)->db3);
 #endif