gnu: subversion: Add fix for sqlite-3.8.9.
* gnu/packages/patches/subversion-sqlite-3.8.9-fix.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/version-control.scm (subversion): Add patch.master
parent
85bafc31f6
commit
cbf71ea25e
|
@ -544,6 +544,7 @@ dist_patch_DATA = \
|
||||||
gnu/packages/patches/slim-config.patch \
|
gnu/packages/patches/slim-config.patch \
|
||||||
gnu/packages/patches/slim-sigusr1.patch \
|
gnu/packages/patches/slim-sigusr1.patch \
|
||||||
gnu/packages/patches/soprano-find-clucene.patch \
|
gnu/packages/patches/soprano-find-clucene.patch \
|
||||||
|
gnu/packages/patches/subversion-sqlite-3.8.9-fix.patch \
|
||||||
gnu/packages/patches/superlu-dist-scotchmetis.patch \
|
gnu/packages/patches/superlu-dist-scotchmetis.patch \
|
||||||
gnu/packages/patches/tcsh-fix-autotest.patch \
|
gnu/packages/patches/tcsh-fix-autotest.patch \
|
||||||
gnu/packages/patches/teckit-cstdio.patch \
|
gnu/packages/patches/teckit-cstdio.patch \
|
||||||
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
This upstream patch (r1672295) is needed to fix a test failure when built
|
||||||
|
against sqlite 3.8.9. See:
|
||||||
|
|
||||||
|
https://mail-archives.apache.org/mod_mbox/subversion-dev/201504.mbox/%3C5526D197.6020808@gmx.de%3E
|
||||||
|
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
Index: subversion/tests/libsvn_wc/wc-queries-test.c
|
||||||
|
===================================================================
|
||||||
|
--- subversion/tests/libsvn_wc/wc-queries-test.c (revision 1672294)
|
||||||
|
+++ subversion/tests/libsvn_wc/wc-queries-test.c (revision 1672295)
|
||||||
|
@@ -927,6 +927,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(
|
||||||
|
Index: subversion/libsvn_wc/wc-metadata.sql
|
||||||
|
===================================================================
|
||||||
|
--- subversion/libsvn_wc/wc-metadata.sql (revision 1672294)
|
||||||
|
+++ subversion/libsvn_wc/wc-metadata.sql (revision 1672295)
|
||||||
|
@@ -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 */
|
||||||
|
|
|
@ -547,7 +547,10 @@ property manipulation.")
|
||||||
"subversion-" version ".tar.bz2"))
|
"subversion-" version ".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0ybmc0yq83jhblp42wdqvn2cryra3sypx8mkxn5b8lq7hilcr68h"))))
|
"0ybmc0yq83jhblp42wdqvn2cryra3sypx8mkxn5b8lq7hilcr68h"))
|
||||||
|
(patches
|
||||||
|
(list (search-patch "subversion-sqlite-3.8.9-fix.patch")))
|
||||||
|
(patch-flags '("-p0"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases (alist-cons-after
|
'(#:phases (alist-cons-after
|
||||||
|
|
Reference in New Issue