[arch-commits] Commit in subversion/trunk (3 files)

Felix Yan fyan at archlinux.org
Wed Jun 3 08:02:48 UTC 2015


    Date: Wednesday, June 3, 2015 @ 10:02:48
  Author: fyan
Revision: 240281

upgpkg: subversion 1.8.13-2

perl 5.22 rebuild

Added:
  subversion/trunk/wc-queries-test1-r1672295.patch
  subversion/trunk/wc-queries-test2-r1673691.patch
Modified:
  subversion/trunk/PKGBUILD

---------------------------------+
 PKGBUILD                        |   12 ++++++--
 wc-queries-test1-r1672295.patch |   51 ++++++++++++++++++++++++++++++++++
 wc-queries-test2-r1673691.patch |   56 ++++++++++++++++++++++++++++++++++++++
 3 files changed, 116 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2015-06-03 06:24:03 UTC (rev 240280)
+++ PKGBUILD	2015-06-03 08:02:48 UTC (rev 240281)
@@ -7,7 +7,7 @@
 
 pkgname=subversion
 pkgver=1.8.13
-pkgrel=1
+pkgrel=2
 pkgdesc="A Modern Concurrent Version Control System"
 arch=('i686' 'x86_64')
 url="http://subversion.apache.org/"
@@ -31,7 +31,9 @@
         svnserve.tmpfiles
         svnserve.service
         subversion.rpath.fix.patch
-        fix_ruby22_tests.patch)
+        fix_ruby22_tests.patch
+        wc-queries-test1-r1672295.patch
+        wc-queries-test2-r1673691.patch)
 md5sums=('4413417b529d7bdf82f74e50df02e88b'
          'SKIP'
          'a0db6dd43af33952739b6ec089852630'
@@ -39,7 +41,9 @@
          'bb2857eceafcfac35dde39dcffad2314'
          '733011145b8a8e74baf4c9fc9197b3e8'
          '6b4340ba9d8845cd8497e013ae01be3f'
-         'e5a59f43af24c103477e09bc1120831d')
+         'e5a59f43af24c103477e09bc1120831d'
+         'b665db41811ba6fe30542c8cacfddb47'
+         '39d1956fb53289c60edef88453204e7c')
 validpgpkeys=('19BBCAEF7B19B280A0E2175E62D48FAD16A0DE01'
               '8BC4DAE0C5A4D65F404401074F7DBAA99A59B973')  # Ben Reser / Stefan Sperling
 
@@ -47,6 +51,8 @@
    cd ${pkgname}-${pkgver}
    patch -Np0 -i ../subversion.rpath.fix.patch
    patch -p1 -i ../fix_ruby22_tests.patch
+   patch -p1 -i ../wc-queries-test1-r1672295.patch
+   patch -p1 -i ../wc-queries-test2-r1673691.patch
    sed -i 's|/usr/bin/env python|/usr/bin/env python2|' tools/hook-scripts/{,mailer/{,tests/}}*.py
 }
 

Added: wc-queries-test1-r1672295.patch
===================================================================
--- wc-queries-test1-r1672295.patch	                        (rev 0)
+++ wc-queries-test1-r1672295.patch	2015-06-03 08:02:48 UTC (rev 240281)
@@ -0,0 +1,51 @@
+------------------------------------------------------------------------
+r1672295 | rhuijben | 2015-04-09 07:31:12 -0400 (Thu, 09 Apr 2015) | 15 lines
+
+Optimize STMT_SELECT_EXTERNALS_DEFINED when using Sqlite 3.8.9, by
+adding two more rows to the sqlite_stat1 table.
+
+This fixes a test failure in wc-queries-test.c, but actual users most
+likely don't notice a difference as a tablescan on an EXTERNALS tables
+index is not that expensive, given that most working copies don't have
+many externals.
+
+* subversion/libsvn_wc/wc-metadata.sql
+  (STMT_INSTALL_SCHEMA_STATISTICS): Add two rows.
+
+* subversion/tests/libsvn_wc/wc-queries-test.c
+  (test_schema_statistics): Add a dummy externals row to allow
+    verifying schema.
+
+
+--- a/subversion/tests/libsvn_wc/wc-queries-test.c
++++ b/subversion/tests/libsvn_wc/wc-queries-test.c
+@@ -824,6 +824,15 @@
+                    "VALUES (1, '', '')",
+                    NULL, NULL, NULL));
+ 
++  SQLITE_ERR(
++      sqlite3_exec(sdb,
++                   "INSERT INTO EXTERNALS (wc_id, local_relpath,"
++                   "                       parent_relpath, repos_id,"
++                   "                       presence, kind, def_local_relpath,"
++                   "                       def_repos_relpath) "
++                   "VALUES (1, 'subdir', '', 1, 'normal', 'dir', '', '')",
++                   NULL, NULL, NULL));
++
+   /* These are currently not necessary for query optimization, but it's better
+      to tell Sqlite how we intend to use this table anyway */
+   SQLITE_ERR(
+--- a/subversion/libsvn_wc/wc-metadata.sql
++++ b/subversion/libsvn_wc/wc-metadata.sql
+@@ -619,6 +619,11 @@
+ INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
+     ('WC_LOCK', 'sqlite_autoindex_WC_LOCK_1',           '100 100 1');
+ 
++INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++    ('EXTERNALS','sqlite_autoindex_EXTERNALS_1',        '100 100 1');
++INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++    ('EXTERNALS','I_EXTERNALS_DEFINED',                 '100 100 3 1');
++
+ /* sqlite_autoindex_WORK_QUEUE_1 doesn't exist because WORK_QUEUE is
+    a INTEGER PRIMARY KEY AUTOINCREMENT table */
+ 

Added: wc-queries-test2-r1673691.patch
===================================================================
--- wc-queries-test2-r1673691.patch	                        (rev 0)
+++ wc-queries-test2-r1673691.patch	2015-06-03 08:02:48 UTC (rev 240281)
@@ -0,0 +1,56 @@
+------------------------------------------------------------------------
+r1673691 | rhuijben | 2015-04-15 05:30:04 -0400 (Wed, 15 Apr 2015) | 5 lines
+
+* subversion/libsvn_wc/wc-metadata.sql
+  (STMT_INSTALL_SCHEMA_STATISTICS): Delete existing sqlite_stat1 rows for
+    the externals table before installing new rows to avoid duplicate entries.
+    Remove unneeded 'OR REPLACE' from all inserts.
+
+
+Index: trunk/subversion/libsvn_wc/wc-metadata.sql
+===================================================================
+--- trunk/subversion/libsvn_wc/wc-metadata.sql	(revision 1673690)
++++ trunk/subversion/libsvn_wc/wc-metadata.sql	(revision 1673691)
+@@ -598,30 +598,30 @@
+ ANALYZE sqlite_master; /* Creates empty sqlite_stat1 if necessary */
+ 
+ DELETE FROM sqlite_stat1
+-WHERE tbl in ('NODES', 'ACTUAL_NODE', 'LOCK', 'WC_LOCK');
++WHERE tbl in ('NODES', 'ACTUAL_NODE', 'LOCK', 'WC_LOCK', 'EXTERNALS');
+ 
+-INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES
+     ('NODES', 'sqlite_autoindex_NODES_1',               '8000 8000 2 1');
+-INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES
+     ('NODES', 'I_NODES_PARENT',                         '8000 8000 10 2 1');
+ /* Tell a lie: We ignore that 99.9% of all moved_to values are NULL */
+-INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES
+     ('NODES', 'I_NODES_MOVED',                          '8000 8000 1 1');
+ 
+-INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES
+     ('ACTUAL_NODE', 'sqlite_autoindex_ACTUAL_NODE_1',   '8000 8000 1');
+-INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES
+     ('ACTUAL_NODE', 'I_ACTUAL_PARENT',                  '8000 8000 10 1');
+ 
+-INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES
+     ('LOCK', 'sqlite_autoindex_LOCK_1',                 '100 100 1');
+ 
+-INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES
+     ('WC_LOCK', 'sqlite_autoindex_WC_LOCK_1',           '100 100 1');
+ 
+-INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES
+     ('EXTERNALS','sqlite_autoindex_EXTERNALS_1',        '100 100 1');
+-INSERT OR REPLACE INTO sqlite_stat1(tbl, idx, stat) VALUES
++INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES
+     ('EXTERNALS','I_EXTERNALS_DEFINED',                 '100 100 3 1');
+ 
+ /* sqlite_autoindex_WORK_QUEUE_1 doesn't exist because WORK_QUEUE is
+
+------------------------------------------------------------------------



More information about the arch-commits mailing list