[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