Author: philip
Date: Fri Mar 1 10:02:20 2013
New Revision: 1451549
URL: http://svn.apache.org/r1451549
Log:
Store NULL rather than 0 when not setting NODES.moved_here TRUE.
* subversion/libsvn_wc/wc_db.c
(insert_working_node, db_op_copy_shadowed_layer): Only bind
moved_here if set.
* subversion/libsvn_wc/wc-queries.sql
(STMT_INSERT_WORKING_NODE_COPY_FROM_DEPTH): Reorder parameters to
make moved_here the last.
* subversion/tests/libsvn_wc/db-test.c
(TESTING_DATA): Use NULL rather than 0.
* subversion/tests/libsvn_wc/entries-compat.c
(TESTING_DATA): Use NULL rather than 0.
Modified:
subversion/trunk/subversion/libsvn_wc/wc-queries.sql
subversion/trunk/subversion/libsvn_wc/wc_db.c
subversion/trunk/subversion/tests/libsvn_wc/db-test.c
subversion/trunk/subversion/tests/libsvn_wc/entries-compat.c
Modified: subversion/trunk/subversion/libsvn_wc/wc-queries.sql
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/wc-queries.sql?rev=1451549&r1=1451548&r2=1451549&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/wc-queries.sql (original)
+++ subversion/trunk/subversion/libsvn_wc/wc-queries.sql Fri Mar 1 10:02:20
2013
@@ -1012,7 +1012,7 @@ INSERT OR REPLACE INTO nodes (
last_mod_time, symlink_target, moved_to )
SELECT wc_id, ?3 /*local_relpath*/, ?4 /*op_depth*/, ?5 /*parent_relpath*/,
repos_id, repos_path, revision, ?6 /*presence*/, depth,
- ?7 /*moved_here*/, kind, changed_revision, changed_date,
+ ?8 /*moved_here*/, kind, changed_revision, changed_date,
changed_author, checksum, properties, translated_size,
last_mod_time, symlink_target,
(SELECT dst.moved_to FROM nodes AS dst
@@ -1020,7 +1020,7 @@ SELECT wc_id, ?3 /*local_relpath*/, ?4 /
AND dst.local_relpath = ?3
AND dst.op_depth = ?4)
FROM nodes
-WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?8
+WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?7
-- STMT_UPDATE_BASE_REVISION
UPDATE nodes SET revision = ?3
Modified: subversion/trunk/subversion/libsvn_wc/wc_db.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/wc_db.c?rev=1451549&r1=1451548&r2=1451549&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/wc_db.c (original)
+++ subversion/trunk/subversion/libsvn_wc/wc_db.c Fri Mar 1 10:02:20 2013
@@ -970,7 +970,7 @@ insert_working_node(void *baton,
SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb, STMT_INSERT_NODE));
SVN_ERR(svn_sqlite__bindf(stmt, "isdsnnntstrisn"
"nnnn" /* properties translated_size last_mod_time dav_cache */
- "snsd", /* symlink_target, file_external, moved_to, moved_here
*/
+ "sns", /* symlink_target, file_external, moved_to */
wcroot->wc_id, local_relpath,
piwb->op_depth,
parent_relpath,
@@ -984,8 +984,12 @@ insert_working_node(void *baton,
/* Note: incomplete nodes may have a NULL target. */
(piwb->kind == svn_kind_symlink)
? piwb->target : NULL,
- moved_to_relpath,
- piwb->moved_here));
+ moved_to_relpath));
+
+ if (piwb->moved_here)
+ {
+ SVN_ERR(svn_sqlite__bind_int(stmt, 8, TRUE));
+ }
if (piwb->kind == svn_kind_file)
{
@@ -4980,15 +4984,18 @@ db_op_copy_shadowed_layer(svn_wc__db_wcr
SVN_ERR(svn_sqlite__get_statement(&stmt, src_wcroot->sdb,
STMT_INSERT_WORKING_NODE_COPY_FROM_DEPTH));
- SVN_ERR(svn_sqlite__bindf(stmt, "issdstdd",
+ SVN_ERR(svn_sqlite__bindf(stmt, "issdstd",
src_wcroot->wc_id, src_relpath,
dst_relpath,
dst_op_depth,
svn_relpath_dirname(dst_relpath, iterpool),
presence_map, dst_presence,
- (dst_op_depth == move_op_depth), /* moved_here */
src_op_depth));
+ /* moved_here */
+ if (dst_op_depth == move_op_depth)
+ SVN_ERR(svn_sqlite__bind_int(stmt, 8, TRUE));
+
SVN_ERR(svn_sqlite__step_done(stmt));
{
Modified: subversion/trunk/subversion/tests/libsvn_wc/db-test.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/libsvn_wc/db-test.c?rev=1451549&r1=1451548&r2=1451549&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/libsvn_wc/db-test.c (original)
+++ subversion/trunk/subversion/tests/libsvn_wc/db-test.c Fri Mar 1 10:02:20
2013
@@ -180,7 +180,7 @@ static const char * const TESTING_DATA =
the value 1 is just 'good enough' to make the nodes WORKING nodes. */
"insert into nodes values ("
" 1, 'I', 1, '', 2, 'some/dir', 2, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, 2, " TIME_2s ", '"
AUTHOR_2 "',"
+ " null, null, 'dir', '()', 'immediates', null, null, 2, " TIME_2s ", '"
AUTHOR_2 "',"
" null, null, null, null, null);"
/* I'm not sure what the working J is supposed to represent. It
@@ -189,39 +189,39 @@ static const char * const TESTING_DATA =
implies they are children of a copied J. */
"insert into nodes values ("
" 1, 'J', 1, '', null, null, null, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-a', 1, 'J', null, null, null, 'normal',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-b', 2, 'J', 2, 'some/dir', 2, 'normal',"
- " 0, null, 'dir', '()', 'infinity', null, null, 2, " TIME_2s ", '" AUTHOR_2
"',"
+ " null, null, 'dir', '()', 'infinity', null, null, 2, " TIME_2s ", '"
AUTHOR_2 "',"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-b/J-b-a', 3, 'J/J-b', 2, 'another/dir', 2, 'normal',"
- " 0, null, 'dir', '()', 'infinity', null, null, 2, " TIME_2s ", '" AUTHOR_2
"',"
+ " null, null, 'dir', '()', 'infinity', null, null, 2, " TIME_2s ", '"
AUTHOR_2 "',"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-b/J-b-b', 2, 'J/J-b', null, null, 2, 'normal',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-c', 1, 'J', null, null, null, 'normal',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-c/J-c-a', 1, 'J/J-c', null, null, null, 'normal',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-c', 2, 'J', null, null, null, 'base-deleted',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-c/J-c-a', 2, 'J/J-c', null, null, null, 'base-deleted',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-d', 2, 'J', 2, 'moved/file', 2, 'normal',"
@@ -229,79 +229,79 @@ static const char * const TESTING_DATA =
" 10, null, null, null, null);"
"insert into nodes values ("
" 1, 'moved/file', 0, 'moved', 2, 'moved/file', 2, 'normal',"
- " 0, null, 'file', '()', null, '$sha1$" SHA1_1 "', null, 2, " TIME_2s ", '"
AUTHOR_2 "',"
+ " null, null, 'file', '()', null, '$sha1$" SHA1_1 "', null, 2, " TIME_2s ",
'" AUTHOR_2 "',"
" 10, null, null, null, null);"
"insert into nodes values ("
" 1, 'moved/file', 2, 'moved', 2, 'moved/file', 2, 'base-deleted',"
- " 0, 'J/J-d', 'file', '()', null, null, null, null, null, null,"
+ " null, 'J/J-d', 'file', '()', null, null, null, null, null, null,"
" 10, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e', 1, 'J', null, null, null, 'normal',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e/J-e-a', 1, 'J/J-e', null, null, null, 'normal',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e/J-e-b', 1, 'J/J-e', null, null, null, 'normal',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e', 2, 'J', null, null, null, 'base-deleted',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e/J-e-a', 2, 'J/J-e', null, null, null, 'base-deleted',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e/J-e-b', 2, 'J/J-e', null, null, null, 'base-deleted',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e/J-e-b/Jeba', 1, 'J/J-e/J-e-b', null, null, null,
'base-deleted',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-f', 1, 'J', null, null, null, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-f/J-f-a', 1, 'J/J-f', null, null, null, 'base-deleted',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'K', 1, '', null, null, null, 'base-deleted',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'K/K-a', 1, 'K', null, null, null, 'base-deleted',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'K/K-b', 1, 'K', null, null, null, 'base-deleted',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'L', 1, '', null, null, null, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'L/L-a', 1, 'L', null, null, null, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'L/L-a/L-a-a', 1, 'L/L-a', null, null, null, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'L/L-a', 2, 'L', null, null, null, 'base-deleted',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'L/L-a/L-a-a', 2, 'L/L-a', null, null, null, 'base-deleted',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'other/place', 2, 'other', null, null, null, 'normal',"
@@ -309,7 +309,7 @@ static const char * const TESTING_DATA =
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'other/place/J-e-a', 2, 'other/place', null, null, null, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'other/place/J-e-b', 2, 'other/place', null, null, null, 'normal',"
Modified: subversion/trunk/subversion/tests/libsvn_wc/entries-compat.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/libsvn_wc/entries-compat.c?rev=1451549&r1=1451548&r2=1451549&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/libsvn_wc/entries-compat.c (original)
+++ subversion/trunk/subversion/tests/libsvn_wc/entries-compat.c Fri Mar 1
10:02:20 2013
@@ -179,35 +179,35 @@ static const char * const TESTING_DATA =
the value 1 is just 'good enough' to make the nodes WORKING nodes. */
"insert into nodes values ("
" 1, 'I', 1, '', 2, 'some/dir', 2, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, 2, " TIME_2s ", '"
AUTHOR_2 "',"
+ " null, null, 'dir', '()', 'immediates', null, null, 2, " TIME_2s ", '"
AUTHOR_2 "',"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J', 1, '', null, null, null, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-a', 1, 'J', null, null, null, 'normal',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-b', 1, 'J', 2, 'some/dir', 2, 'normal',"
- " 0, null, 'dir', '()', 'infinity', null, null, 2, " TIME_2s ", '" AUTHOR_2
"',"
+ " null, null, 'dir', '()', 'infinity', null, null, 2, " TIME_2s ", '"
AUTHOR_2 "',"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-b/J-b-a', 1, 'J/J-b', 2, 'another/dir', 2, 'normal',"
- " 0, null, 'dir', '()', 'infinity', null, null, 2, " TIME_2s ", '" AUTHOR_2
"',"
+ " null, null, 'dir', '()', 'infinity', null, null, 2, " TIME_2s ", '"
AUTHOR_2 "',"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-b/J-b-b', 1, 'J/J-b', null, null, null, 'normal',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-c', 1, 'J', null, null, null, 'not-present',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-c/J-c-a', 1, 'J/J-c', null, null, null, 'not-present',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-d', 1, 'J', 2, 'moved/file', 2, 'normal',"
@@ -215,51 +215,51 @@ static const char * const TESTING_DATA =
" 10, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e', 1, 'J', null, null, null, 'not-present',"
- " 0, 'other/place', 'dir', '()', null, null, null, null, null, null,"
+ " null, 'other/place', 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e/J-e-a', 1, 'J/J-e', null, null, null, 'not-present',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e/J-e-b', 1, 'J/J-e', null, null, null, 'not-present',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-e/J-e-b/Jeba', 1, 'J/J-e/J-e-b', null, null, null,
'base-deleted',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-f', 1, 'J', null, null, null, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'J/J-f/J-f-a', 1, 'J/J-f', null, null, null, 'base-deleted',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'K', 1, '', null, null, null, 'base-deleted',"
- " 0, null, 'dir', '()', null, null, null, null, null, null,"
+ " null, null, 'dir', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'K/K-a', 1, 'K', null, null, null, 'base-deleted',"
- " 0, null, 'file', '()', null, null, null, null, null, null,"
+ " null, null, 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'K/K-b', 1, 'K', null, null, null, 'base-deleted',"
- " 0, 'moved/away', 'file', '()', null, null, null, null, null, null,"
+ " null, 'moved/away', 'file', '()', null, null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'L', 1, '', null, null, null, 'normal',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'L/L-a', 1, 'L', null, null, null, 'not-present',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into nodes values ("
" 1, 'L/L-a/L-a-a', 1, 'L/L-a', null, null, null, 'not-present',"
- " 0, null, 'dir', '()', 'immediates', null, null, null, null, null,"
+ " null, null, 'dir', '()', 'immediates', null, null, null, null, null,"
" null, null, null, null, null);"
"insert into actual_node values ("
" 1, 'I', '', null, null, null, null, null, 'changelist', null, "