diff options
author | Peter Wemm <peter@FreeBSD.org> | 2013-07-28 05:04:41 +0000 |
---|---|---|
committer | Peter Wemm <peter@FreeBSD.org> | 2013-07-28 05:04:41 +0000 |
commit | 97551b2898eb459e9b616947d87d026d27b61518 (patch) | |
tree | a851d66ec0c51a7321b30a677a0e55f1655af4d6 /subversion/libsvn_wc | |
parent | fec88c40a7bace625f49c3234a71560a161ee0ef (diff) |
Import subversion-1.8.1 into vendor staging area.vendor/subversion/subversion-1.8.1
Notes
Notes:
svn path=/vendor/subversion/dist/; revision=253728
svn path=/vendor/subversion/subversion-1.8.1/; revision=253729; tag=vendor/subversion/subversion-1.8.1
Diffstat (limited to 'subversion/libsvn_wc')
-rw-r--r-- | subversion/libsvn_wc/adm_ops.c | 1 | ||||
-rw-r--r-- | subversion/libsvn_wc/crop.c | 1 | ||||
-rw-r--r-- | subversion/libsvn_wc/externals.c | 1 | ||||
-rw-r--r-- | subversion/libsvn_wc/update_editor.c | 44 | ||||
-rw-r--r-- | subversion/libsvn_wc/upgrade.c | 15 | ||||
-rw-r--r-- | subversion/libsvn_wc/wc-checks.h | 2 | ||||
-rw-r--r-- | subversion/libsvn_wc/wc-metadata.h | 2 | ||||
-rw-r--r-- | subversion/libsvn_wc/wc-queries.h | 1053 | ||||
-rw-r--r-- | subversion/libsvn_wc/wc-queries.sql | 4 | ||||
-rw-r--r-- | subversion/libsvn_wc/wc_db.c | 29 | ||||
-rw-r--r-- | subversion/libsvn_wc/wc_db.h | 10 | ||||
-rw-r--r-- | subversion/libsvn_wc/wc_db_update_move.c | 12 | ||||
-rw-r--r-- | subversion/libsvn_wc/wc_db_wcroot.c | 22 | ||||
-rw-r--r-- | subversion/libsvn_wc/workqueue.c | 1 |
14 files changed, 656 insertions, 541 deletions
diff --git a/subversion/libsvn_wc/adm_ops.c b/subversion/libsvn_wc/adm_ops.c index 1f391fcc372f..e1e7fe4b9104 100644 --- a/subversion/libsvn_wc/adm_ops.c +++ b/subversion/libsvn_wc/adm_ops.c @@ -148,6 +148,7 @@ process_committed_leaf(svn_wc__db_t *db, db, local_abspath, FALSE /* keep_as_working */, FALSE /* queue_deletes */, + TRUE /* remove_locks */, (! via_recurse) ? new_revnum : SVN_INVALID_REVNUM, NULL, NULL, diff --git a/subversion/libsvn_wc/crop.c b/subversion/libsvn_wc/crop.c index 2278476d2355..a8d5ce2571ad 100644 --- a/subversion/libsvn_wc/crop.c +++ b/subversion/libsvn_wc/crop.c @@ -110,6 +110,7 @@ crop_children(svn_wc__db_t *db, SVN_ERR(svn_wc__db_base_remove(db, child_abspath, FALSE /* keep_as_working */, FALSE /* queue_deletes */, + FALSE /* remove_locks */, SVN_INVALID_REVNUM, NULL, NULL, iterpool)); diff --git a/subversion/libsvn_wc/externals.c b/subversion/libsvn_wc/externals.c index 514148fe3e3f..99127304ec4c 100644 --- a/subversion/libsvn_wc/externals.c +++ b/subversion/libsvn_wc/externals.c @@ -1413,6 +1413,7 @@ svn_wc__external_remove(svn_wc_context_t *wc_ctx, SVN_ERR(svn_wc__db_base_remove(wc_ctx->db, local_abspath, FALSE /* keep_as_working */, TRUE /* queue_deletes */, + FALSE /* remove_locks */, SVN_INVALID_REVNUM, NULL, NULL, scratch_pool)); SVN_ERR(svn_wc__wq_run(wc_ctx->db, local_abspath, diff --git a/subversion/libsvn_wc/update_editor.c b/subversion/libsvn_wc/update_editor.c index 617ad4775b90..a353b1b07178 100644 --- a/subversion/libsvn_wc/update_editor.c +++ b/subversion/libsvn_wc/update_editor.c @@ -924,6 +924,7 @@ mark_directory_edited(struct dir_baton *db, apr_pool_t *scratch_pool) do_notification(db->edit_baton, db->local_abspath, svn_node_dir, svn_wc_notify_tree_conflict, scratch_pool); db->already_notified = TRUE; + } return SVN_NO_ERROR; @@ -1813,6 +1814,7 @@ delete_entry(const char *path, SVN_ERR(svn_wc__db_base_remove(eb->db, local_abspath, FALSE /* keep_as_working */, FALSE /* queue_deletes */, + FALSE /* remove_locks */, SVN_INVALID_REVNUM /* not_present_rev */, NULL, NULL, scratch_pool)); @@ -1911,7 +1913,7 @@ delete_entry(const char *path, { /* Delete, and do not leave a not-present node. */ SVN_ERR(svn_wc__db_base_remove(eb->db, local_abspath, - keep_as_working, queue_deletes, + keep_as_working, queue_deletes, FALSE, SVN_INVALID_REVNUM /* not_present_rev */, tree_conflict, NULL, scratch_pool)); @@ -1920,7 +1922,7 @@ delete_entry(const char *path, { /* Delete, leaving a not-present node. */ SVN_ERR(svn_wc__db_base_remove(eb->db, local_abspath, - keep_as_working, queue_deletes, + keep_as_working, queue_deletes, FALSE, *eb->target_revision, tree_conflict, NULL, scratch_pool)); @@ -1939,8 +1941,19 @@ delete_entry(const char *path, /* Notify. */ if (tree_conflict) - do_notification(eb, local_abspath, svn_node_unknown, - svn_wc_notify_tree_conflict, scratch_pool); + { + if (eb->conflict_func) + SVN_ERR(svn_wc__conflict_invoke_resolver(eb->db, local_abspath, + tree_conflict, + NULL /* merge_options */, + eb->conflict_func, + eb->conflict_baton, + eb->cancel_func, + eb->cancel_baton, + scratch_pool)); + do_notification(eb, local_abspath, svn_node_unknown, + svn_wc_notify_tree_conflict, scratch_pool); + } else { svn_wc_notify_action_t action = svn_wc_notify_update_delete; @@ -2289,6 +2302,16 @@ add_directory(const char *path, if (tree_conflict != NULL) { + if (eb->conflict_func) + SVN_ERR(svn_wc__conflict_invoke_resolver(eb->db, db->local_abspath, + tree_conflict, + NULL /* merge_options */, + eb->conflict_func, + eb->conflict_baton, + eb->cancel_func, + eb->cancel_baton, + pool)); + db->already_notified = TRUE; do_notification(eb, db->local_abspath, svn_node_dir, svn_wc_notify_tree_conflict, pool); @@ -2907,7 +2930,7 @@ close_directory(void *dir_baton, eb->conflict_func, eb->conflict_baton, eb->cancel_func, - eb->conflict_baton, + eb->cancel_baton, scratch_pool)); /* Notify of any prop changes on this directory -- but do nothing if @@ -3380,6 +3403,16 @@ add_file(const char *path, tree_conflict, NULL, scratch_pool)); + if (eb->conflict_func) + SVN_ERR(svn_wc__conflict_invoke_resolver(eb->db, fb->local_abspath, + tree_conflict, + NULL /* merge_options */, + eb->conflict_func, + eb->conflict_baton, + eb->cancel_func, + eb->cancel_baton, + scratch_pool)); + fb->already_notified = TRUE; do_notification(eb, fb->local_abspath, svn_node_file, svn_wc_notify_tree_conflict, scratch_pool); @@ -4703,6 +4736,7 @@ close_edit(void *edit_baton, SVN_ERR(svn_wc__db_base_remove(eb->db, eb->target_abspath, FALSE /* keep_as_working */, FALSE /* queue_deletes */, + FALSE /* remove_locks */, SVN_INVALID_REVNUM, NULL, NULL, scratch_pool)); } diff --git a/subversion/libsvn_wc/upgrade.c b/subversion/libsvn_wc/upgrade.c index 983892cc35b0..ff5543c47b6b 100644 --- a/subversion/libsvn_wc/upgrade.c +++ b/subversion/libsvn_wc/upgrade.c @@ -2196,13 +2196,15 @@ svn_wc_upgrade(svn_wc_context_t *wc_ctx, upgrade_working_copy_baton_t cb_baton; svn_error_t *err; int result_format; + svn_boolean_t bumped_format; /* Try upgrading a wc-ng-style working copy. */ SVN_ERR(svn_wc__db_open(&db, NULL /* ### config */, TRUE, FALSE, scratch_pool, scratch_pool)); - err = svn_wc__db_bump_format(&result_format, local_abspath, db, + err = svn_wc__db_bump_format(&result_format, &bumped_format, + db, local_abspath, scratch_pool); if (err) { @@ -2224,6 +2226,17 @@ svn_wc_upgrade(svn_wc_context_t *wc_ctx, SVN_ERR_ASSERT(result_format == SVN_WC__VERSION); + if (bumped_format && notify_func) + { + svn_wc_notify_t *notify; + + notify = svn_wc_create_notify(local_abspath, + svn_wc_notify_upgraded_path, + scratch_pool); + + notify_func(notify_baton, notify, scratch_pool); + } + return SVN_NO_ERROR; } diff --git a/subversion/libsvn_wc/wc-checks.h b/subversion/libsvn_wc/wc-checks.h index 3c05e61a5e45..43ab4cc18ee1 100644 --- a/subversion/libsvn_wc/wc-checks.h +++ b/subversion/libsvn_wc/wc-checks.h @@ -1,4 +1,4 @@ -/* This file is automatically generated from wc-checks.sql and .dist_sandbox/subversion-1.8.0/subversion/libsvn_wc/token-map.h. +/* This file is automatically generated from wc-checks.sql and .dist_sandbox/subversion-1.8.1/subversion/libsvn_wc/token-map.h. * Do not edit this file -- edit the source and rerun gen-make.py */ #define STMT_VERIFICATION_TRIGGERS 0 diff --git a/subversion/libsvn_wc/wc-metadata.h b/subversion/libsvn_wc/wc-metadata.h index 7925f5eb4487..d0421788d8ad 100644 --- a/subversion/libsvn_wc/wc-metadata.h +++ b/subversion/libsvn_wc/wc-metadata.h @@ -1,4 +1,4 @@ -/* This file is automatically generated from wc-metadata.sql and .dist_sandbox/subversion-1.8.0/subversion/libsvn_wc/token-map.h. +/* This file is automatically generated from wc-metadata.sql and .dist_sandbox/subversion-1.8.1/subversion/libsvn_wc/token-map.h. * Do not edit this file -- edit the source and rerun gen-make.py */ #define STMT_CREATE_SCHEMA 0 diff --git a/subversion/libsvn_wc/wc-queries.h b/subversion/libsvn_wc/wc-queries.h index 2fd8f1ac9f11..950f6257f9a2 100644 --- a/subversion/libsvn_wc/wc-queries.h +++ b/subversion/libsvn_wc/wc-queries.h @@ -1,4 +1,4 @@ -/* This file is automatically generated from wc-queries.sql and .dist_sandbox/subversion-1.8.0/subversion/libsvn_wc/token-map.h. +/* This file is automatically generated from wc-queries.sql and .dist_sandbox/subversion-1.8.1/subversion/libsvn_wc/token-map.h. * Do not edit this file -- edit the source and rerun gen-make.py */ #define STMT_SELECT_NODE_INFO 0 @@ -589,57 +589,64 @@ "WHERE repos_id = ?1 AND repos_relpath = ?2 " \ "" -#define STMT_CLEAR_BASE_NODE_RECURSIVE_DAV_CACHE 56 -#define STMT_56_INFO {"STMT_CLEAR_BASE_NODE_RECURSIVE_DAV_CACHE", NULL} +#define STMT_DELETE_LOCK_RECURSIVELY 56 +#define STMT_56_INFO {"STMT_DELETE_LOCK_RECURSIVELY", NULL} #define STMT_56 \ + "DELETE FROM lock " \ + "WHERE repos_id = ?1 AND (repos_relpath = ?2 OR (((repos_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((repos_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ + "" + +#define STMT_CLEAR_BASE_NODE_RECURSIVE_DAV_CACHE 57 +#define STMT_57_INFO {"STMT_CLEAR_BASE_NODE_RECURSIVE_DAV_CACHE", NULL} +#define STMT_57 \ "UPDATE nodes SET dav_cache = NULL " \ "WHERE dav_cache IS NOT NULL AND wc_id = ?1 AND op_depth = 0 " \ " AND (local_relpath = ?2 " \ " OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ "" -#define STMT_RECURSIVE_UPDATE_NODE_REPO 57 -#define STMT_57_INFO {"STMT_RECURSIVE_UPDATE_NODE_REPO", NULL} -#define STMT_57 \ +#define STMT_RECURSIVE_UPDATE_NODE_REPO 58 +#define STMT_58_INFO {"STMT_RECURSIVE_UPDATE_NODE_REPO", NULL} +#define STMT_58 \ "UPDATE nodes SET repos_id = ?4, dav_cache = NULL " \ "WHERE (wc_id = ?1 AND local_relpath = ?2 AND repos_id = ?3) " \ " OR (wc_id = ?1 AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ " AND repos_id = ?3) " \ "" -#define STMT_UPDATE_LOCK_REPOS_ID 58 -#define STMT_58_INFO {"STMT_UPDATE_LOCK_REPOS_ID", NULL} -#define STMT_58 \ +#define STMT_UPDATE_LOCK_REPOS_ID 59 +#define STMT_59_INFO {"STMT_UPDATE_LOCK_REPOS_ID", NULL} +#define STMT_59 \ "UPDATE lock SET repos_id = ?2 " \ "WHERE repos_id = ?1 " \ "" -#define STMT_UPDATE_NODE_FILEINFO 59 -#define STMT_59_INFO {"STMT_UPDATE_NODE_FILEINFO", NULL} -#define STMT_59 \ +#define STMT_UPDATE_NODE_FILEINFO 60 +#define STMT_60_INFO {"STMT_UPDATE_NODE_FILEINFO", NULL} +#define STMT_60 \ "UPDATE nodes SET translated_size = ?3, last_mod_time = ?4 " \ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ " AND op_depth = (SELECT MAX(op_depth) FROM nodes " \ " WHERE wc_id = ?1 AND local_relpath = ?2) " \ "" -#define STMT_INSERT_ACTUAL_CONFLICT 60 -#define STMT_60_INFO {"STMT_INSERT_ACTUAL_CONFLICT", NULL} -#define STMT_60 \ +#define STMT_INSERT_ACTUAL_CONFLICT 61 +#define STMT_61_INFO {"STMT_INSERT_ACTUAL_CONFLICT", NULL} +#define STMT_61 \ "INSERT INTO actual_node (wc_id, local_relpath, conflict_data, parent_relpath) " \ "VALUES (?1, ?2, ?3, ?4) " \ "" -#define STMT_UPDATE_ACTUAL_CONFLICT 61 -#define STMT_61_INFO {"STMT_UPDATE_ACTUAL_CONFLICT", NULL} -#define STMT_61 \ +#define STMT_UPDATE_ACTUAL_CONFLICT 62 +#define STMT_62_INFO {"STMT_UPDATE_ACTUAL_CONFLICT", NULL} +#define STMT_62 \ "UPDATE actual_node SET conflict_data = ?3 " \ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ "" -#define STMT_UPDATE_ACTUAL_CHANGELISTS 62 -#define STMT_62_INFO {"STMT_UPDATE_ACTUAL_CHANGELISTS", NULL} -#define STMT_62 \ +#define STMT_UPDATE_ACTUAL_CHANGELISTS 63 +#define STMT_63_INFO {"STMT_UPDATE_ACTUAL_CHANGELISTS", NULL} +#define STMT_63 \ "UPDATE actual_node SET changelist = ?3 " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ @@ -649,16 +656,16 @@ " AND kind = 'file') " \ "" -#define STMT_UPDATE_ACTUAL_CLEAR_CHANGELIST 63 -#define STMT_63_INFO {"STMT_UPDATE_ACTUAL_CLEAR_CHANGELIST", NULL} -#define STMT_63 \ +#define STMT_UPDATE_ACTUAL_CLEAR_CHANGELIST 64 +#define STMT_64_INFO {"STMT_UPDATE_ACTUAL_CLEAR_CHANGELIST", NULL} +#define STMT_64 \ "UPDATE actual_node SET changelist = NULL " \ " WHERE wc_id = ?1 AND local_relpath = ?2 " \ "" -#define STMT_MARK_SKIPPED_CHANGELIST_DIRS 64 -#define STMT_64_INFO {"STMT_MARK_SKIPPED_CHANGELIST_DIRS", NULL} -#define STMT_64 \ +#define STMT_MARK_SKIPPED_CHANGELIST_DIRS 65 +#define STMT_65_INFO {"STMT_MARK_SKIPPED_CHANGELIST_DIRS", NULL} +#define STMT_65 \ "INSERT INTO changelist_list (wc_id, local_relpath, notify, changelist) " \ "SELECT wc_id, local_relpath, 7, ?3 " \ "FROM targets_list " \ @@ -667,17 +674,17 @@ " AND kind = 'dir' " \ "" -#define STMT_RESET_ACTUAL_WITH_CHANGELIST 65 -#define STMT_65_INFO {"STMT_RESET_ACTUAL_WITH_CHANGELIST", NULL} -#define STMT_65 \ +#define STMT_RESET_ACTUAL_WITH_CHANGELIST 66 +#define STMT_66_INFO {"STMT_RESET_ACTUAL_WITH_CHANGELIST", NULL} +#define STMT_66 \ "REPLACE INTO actual_node ( " \ " wc_id, local_relpath, parent_relpath, changelist) " \ "VALUES (?1, ?2, ?3, ?4) " \ "" -#define STMT_CREATE_CHANGELIST_LIST 66 -#define STMT_66_INFO {"STMT_CREATE_CHANGELIST_LIST", NULL} -#define STMT_66 \ +#define STMT_CREATE_CHANGELIST_LIST 67 +#define STMT_67_INFO {"STMT_CREATE_CHANGELIST_LIST", NULL} +#define STMT_67 \ "DROP TABLE IF EXISTS changelist_list; " \ "CREATE TEMPORARY TABLE changelist_list ( " \ " wc_id INTEGER NOT NULL, " \ @@ -688,9 +695,9 @@ ") " \ "" -#define STMT_CREATE_CHANGELIST_TRIGGER 67 -#define STMT_67_INFO {"STMT_CREATE_CHANGELIST_TRIGGER", NULL} -#define STMT_67 \ +#define STMT_CREATE_CHANGELIST_TRIGGER 68 +#define STMT_68_INFO {"STMT_CREATE_CHANGELIST_TRIGGER", NULL} +#define STMT_68 \ "DROP TRIGGER IF EXISTS trigger_changelist_list_change; " \ "CREATE TEMPORARY TRIGGER trigger_changelist_list_change " \ "BEFORE UPDATE ON actual_node " \ @@ -705,25 +712,25 @@ "END " \ "" -#define STMT_FINALIZE_CHANGELIST 68 -#define STMT_68_INFO {"STMT_FINALIZE_CHANGELIST", NULL} -#define STMT_68 \ +#define STMT_FINALIZE_CHANGELIST 69 +#define STMT_69_INFO {"STMT_FINALIZE_CHANGELIST", NULL} +#define STMT_69 \ "DROP TRIGGER trigger_changelist_list_change; " \ "DROP TABLE changelist_list; " \ "DROP TABLE targets_list " \ "" -#define STMT_SELECT_CHANGELIST_LIST 69 -#define STMT_69_INFO {"STMT_SELECT_CHANGELIST_LIST", NULL} -#define STMT_69 \ +#define STMT_SELECT_CHANGELIST_LIST 70 +#define STMT_70_INFO {"STMT_SELECT_CHANGELIST_LIST", NULL} +#define STMT_70 \ "SELECT wc_id, local_relpath, notify, changelist " \ "FROM changelist_list " \ "ORDER BY wc_id, local_relpath ASC, notify DESC " \ "" -#define STMT_CREATE_TARGETS_LIST 70 -#define STMT_70_INFO {"STMT_CREATE_TARGETS_LIST", NULL} -#define STMT_70 \ +#define STMT_CREATE_TARGETS_LIST 71 +#define STMT_71_INFO {"STMT_CREATE_TARGETS_LIST", NULL} +#define STMT_71 \ "DROP TABLE IF EXISTS targets_list; " \ "CREATE TEMPORARY TABLE targets_list ( " \ " wc_id INTEGER NOT NULL, " \ @@ -734,15 +741,15 @@ " ); " \ "" -#define STMT_DROP_TARGETS_LIST 71 -#define STMT_71_INFO {"STMT_DROP_TARGETS_LIST", NULL} -#define STMT_71 \ +#define STMT_DROP_TARGETS_LIST 72 +#define STMT_72_INFO {"STMT_DROP_TARGETS_LIST", NULL} +#define STMT_72 \ "DROP TABLE targets_list " \ "" -#define STMT_INSERT_TARGET 72 -#define STMT_72_INFO {"STMT_INSERT_TARGET", NULL} -#define STMT_72 \ +#define STMT_INSERT_TARGET 73 +#define STMT_73_INFO {"STMT_INSERT_TARGET", NULL} +#define STMT_73 \ "INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \ "SELECT wc_id, local_relpath, parent_relpath, kind " \ "FROM nodes_current " \ @@ -750,9 +757,9 @@ " AND local_relpath = ?2 " \ "" -#define STMT_INSERT_TARGET_DEPTH_FILES 73 -#define STMT_73_INFO {"STMT_INSERT_TARGET_DEPTH_FILES", NULL} -#define STMT_73 \ +#define STMT_INSERT_TARGET_DEPTH_FILES 74 +#define STMT_74_INFO {"STMT_INSERT_TARGET_DEPTH_FILES", NULL} +#define STMT_74 \ "INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \ "SELECT wc_id, local_relpath, parent_relpath, kind " \ "FROM nodes_current " \ @@ -761,9 +768,9 @@ " AND kind = 'file' " \ "" -#define STMT_INSERT_TARGET_DEPTH_IMMEDIATES 74 -#define STMT_74_INFO {"STMT_INSERT_TARGET_DEPTH_IMMEDIATES", NULL} -#define STMT_74 \ +#define STMT_INSERT_TARGET_DEPTH_IMMEDIATES 75 +#define STMT_75_INFO {"STMT_INSERT_TARGET_DEPTH_IMMEDIATES", NULL} +#define STMT_75 \ "INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \ "SELECT wc_id, local_relpath, parent_relpath, kind " \ "FROM nodes_current " \ @@ -771,9 +778,9 @@ " AND parent_relpath = ?2 " \ "" -#define STMT_INSERT_TARGET_DEPTH_INFINITY 75 -#define STMT_75_INFO {"STMT_INSERT_TARGET_DEPTH_INFINITY", NULL} -#define STMT_75 \ +#define STMT_INSERT_TARGET_DEPTH_INFINITY 76 +#define STMT_76_INFO {"STMT_INSERT_TARGET_DEPTH_INFINITY", NULL} +#define STMT_76 \ "INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \ "SELECT wc_id, local_relpath, parent_relpath, kind " \ "FROM nodes_current " \ @@ -781,9 +788,9 @@ " AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ "" -#define STMT_INSERT_TARGET_WITH_CHANGELIST 76 -#define STMT_76_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST", NULL} -#define STMT_76 \ +#define STMT_INSERT_TARGET_WITH_CHANGELIST 77 +#define STMT_77_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST", NULL} +#define STMT_77 \ "INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \ "SELECT N.wc_id, N.local_relpath, N.parent_relpath, N.kind " \ " FROM actual_node AS A JOIN nodes_current AS N " \ @@ -793,9 +800,9 @@ " AND A.changelist = ?3 " \ "" -#define STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_FILES 77 -#define STMT_77_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_FILES", NULL} -#define STMT_77 \ +#define STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_FILES 78 +#define STMT_78_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_FILES", NULL} +#define STMT_78 \ "INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \ "SELECT N.wc_id, N.local_relpath, N.parent_relpath, N.kind " \ " FROM actual_node AS A JOIN nodes_current AS N " \ @@ -806,9 +813,9 @@ " AND A.changelist = ?3 " \ "" -#define STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_IMMEDIATES 78 -#define STMT_78_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_IMMEDIATES", NULL} -#define STMT_78 \ +#define STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_IMMEDIATES 79 +#define STMT_79_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_IMMEDIATES", NULL} +#define STMT_79 \ "INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \ "SELECT N.wc_id, N.local_relpath, N.parent_relpath, N.kind " \ " FROM actual_node AS A JOIN nodes_current AS N " \ @@ -818,9 +825,9 @@ " AND A.changelist = ?3 " \ "" -#define STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_INFINITY 79 -#define STMT_79_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_INFINITY", NULL} -#define STMT_79 \ +#define STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_INFINITY 80 +#define STMT_80_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_INFINITY", NULL} +#define STMT_80 \ "INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \ "SELECT N.wc_id, N.local_relpath, N.parent_relpath, N.kind " \ " FROM actual_node AS A JOIN nodes_current AS N " \ @@ -830,18 +837,18 @@ " AND A.changelist = ?3 " \ "" -#define STMT_INSERT_ACTUAL_EMPTIES 80 -#define STMT_80_INFO {"STMT_INSERT_ACTUAL_EMPTIES", NULL} -#define STMT_80 \ +#define STMT_INSERT_ACTUAL_EMPTIES 81 +#define STMT_81_INFO {"STMT_INSERT_ACTUAL_EMPTIES", NULL} +#define STMT_81 \ "INSERT OR IGNORE INTO actual_node ( " \ " wc_id, local_relpath, parent_relpath) " \ "SELECT wc_id, local_relpath, parent_relpath " \ "FROM targets_list " \ "" -#define STMT_DELETE_ACTUAL_EMPTY 81 -#define STMT_81_INFO {"STMT_DELETE_ACTUAL_EMPTY", NULL} -#define STMT_81 \ +#define STMT_DELETE_ACTUAL_EMPTY 82 +#define STMT_82_INFO {"STMT_DELETE_ACTUAL_EMPTY", NULL} +#define STMT_82 \ "DELETE FROM actual_node " \ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ " AND properties IS NULL " \ @@ -853,9 +860,9 @@ " AND left_checksum IS NULL " \ "" -#define STMT_DELETE_ACTUAL_EMPTIES 82 -#define STMT_82_INFO {"STMT_DELETE_ACTUAL_EMPTIES", NULL} -#define STMT_82 \ +#define STMT_DELETE_ACTUAL_EMPTIES 83 +#define STMT_83_INFO {"STMT_DELETE_ACTUAL_EMPTIES", NULL} +#define STMT_83 \ "DELETE FROM actual_node " \ "WHERE wc_id = ?1 " \ " AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ @@ -868,25 +875,25 @@ " AND left_checksum IS NULL " \ "" -#define STMT_DELETE_BASE_NODE 83 -#define STMT_83_INFO {"STMT_DELETE_BASE_NODE", NULL} -#define STMT_83 \ +#define STMT_DELETE_BASE_NODE 84 +#define STMT_84_INFO {"STMT_DELETE_BASE_NODE", NULL} +#define STMT_84 \ "DELETE FROM nodes " \ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \ "" -#define STMT_DELETE_WORKING_NODE 84 -#define STMT_84_INFO {"STMT_DELETE_WORKING_NODE", NULL} -#define STMT_84 \ +#define STMT_DELETE_WORKING_NODE 85 +#define STMT_85_INFO {"STMT_DELETE_WORKING_NODE", NULL} +#define STMT_85 \ "DELETE FROM nodes " \ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ " AND op_depth = (SELECT MAX(op_depth) FROM nodes " \ " WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth > 0) " \ "" -#define STMT_DELETE_LOWEST_WORKING_NODE 85 -#define STMT_85_INFO {"STMT_DELETE_LOWEST_WORKING_NODE", NULL} -#define STMT_85 \ +#define STMT_DELETE_LOWEST_WORKING_NODE 86 +#define STMT_86_INFO {"STMT_DELETE_LOWEST_WORKING_NODE", NULL} +#define STMT_86 \ "DELETE FROM nodes " \ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ " AND op_depth = (SELECT MIN(op_depth) FROM nodes " \ @@ -894,16 +901,16 @@ " AND presence = 'base-deleted' " \ "" -#define STMT_DELETE_ALL_LAYERS 86 -#define STMT_86_INFO {"STMT_DELETE_ALL_LAYERS", NULL} -#define STMT_86 \ +#define STMT_DELETE_ALL_LAYERS 87 +#define STMT_87_INFO {"STMT_DELETE_ALL_LAYERS", NULL} +#define STMT_87 \ "DELETE FROM nodes " \ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ "" -#define STMT_DELETE_NODES_ABOVE_DEPTH_RECURSIVE 87 -#define STMT_87_INFO {"STMT_DELETE_NODES_ABOVE_DEPTH_RECURSIVE", NULL} -#define STMT_87 \ +#define STMT_DELETE_NODES_ABOVE_DEPTH_RECURSIVE 88 +#define STMT_88_INFO {"STMT_DELETE_NODES_ABOVE_DEPTH_RECURSIVE", NULL} +#define STMT_88 \ "DELETE FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 " \ @@ -911,25 +918,25 @@ " AND op_depth >= ?3 " \ "" -#define STMT_DELETE_ACTUAL_NODE 88 -#define STMT_88_INFO {"STMT_DELETE_ACTUAL_NODE", NULL} -#define STMT_88 \ +#define STMT_DELETE_ACTUAL_NODE 89 +#define STMT_89_INFO {"STMT_DELETE_ACTUAL_NODE", NULL} +#define STMT_89 \ "DELETE FROM actual_node " \ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ "" -#define STMT_DELETE_ACTUAL_NODE_RECURSIVE 89 -#define STMT_89_INFO {"STMT_DELETE_ACTUAL_NODE_RECURSIVE", NULL} -#define STMT_89 \ +#define STMT_DELETE_ACTUAL_NODE_RECURSIVE 90 +#define STMT_90_INFO {"STMT_DELETE_ACTUAL_NODE_RECURSIVE", NULL} +#define STMT_90 \ "DELETE FROM actual_node " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 " \ " OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ "" -#define STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST 90 -#define STMT_90_INFO {"STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST", NULL} -#define STMT_90 \ +#define STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST 91 +#define STMT_91_INFO {"STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST", NULL} +#define STMT_91 \ "DELETE FROM actual_node " \ "WHERE wc_id = ?1 " \ " AND local_relpath = ?2 " \ @@ -939,9 +946,9 @@ " AND c.kind = 'file')) " \ "" -#define STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE 91 -#define STMT_91_INFO {"STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE", NULL} -#define STMT_91 \ +#define STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE 92 +#define STMT_92_INFO {"STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE", NULL} +#define STMT_92 \ "DELETE FROM actual_node " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 " \ @@ -953,9 +960,9 @@ " AND c.kind = 'file')) " \ "" -#define STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST 92 -#define STMT_92_INFO {"STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST", NULL} -#define STMT_92 \ +#define STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST 93 +#define STMT_93_INFO {"STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST", NULL} +#define STMT_93 \ "UPDATE actual_node " \ "SET properties = NULL, " \ " text_mod = NULL, " \ @@ -967,9 +974,9 @@ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ "" -#define STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE 93 -#define STMT_93_INFO {"STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE", NULL} -#define STMT_93 \ +#define STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE 94 +#define STMT_94_INFO {"STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE", NULL} +#define STMT_94 \ "UPDATE actual_node " \ "SET properties = NULL, " \ " text_mod = NULL, " \ @@ -983,108 +990,108 @@ " OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ "" -#define STMT_UPDATE_NODE_BASE_DEPTH 94 -#define STMT_94_INFO {"STMT_UPDATE_NODE_BASE_DEPTH", NULL} -#define STMT_94 \ +#define STMT_UPDATE_NODE_BASE_DEPTH 95 +#define STMT_95_INFO {"STMT_UPDATE_NODE_BASE_DEPTH", NULL} +#define STMT_95 \ "UPDATE nodes SET depth = ?3 " \ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \ " AND kind='dir' " \ "" -#define STMT_UPDATE_NODE_BASE_PRESENCE 95 -#define STMT_95_INFO {"STMT_UPDATE_NODE_BASE_PRESENCE", NULL} -#define STMT_95 \ +#define STMT_UPDATE_NODE_BASE_PRESENCE 96 +#define STMT_96_INFO {"STMT_UPDATE_NODE_BASE_PRESENCE", NULL} +#define STMT_96 \ "UPDATE nodes SET presence = ?3 " \ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \ "" -#define STMT_UPDATE_BASE_NODE_PRESENCE_REVNUM_AND_REPOS_PATH 96 -#define STMT_96_INFO {"STMT_UPDATE_BASE_NODE_PRESENCE_REVNUM_AND_REPOS_PATH", NULL} -#define STMT_96 \ +#define STMT_UPDATE_BASE_NODE_PRESENCE_REVNUM_AND_REPOS_PATH 97 +#define STMT_97_INFO {"STMT_UPDATE_BASE_NODE_PRESENCE_REVNUM_AND_REPOS_PATH", NULL} +#define STMT_97 \ "UPDATE nodes SET presence = ?3, revision = ?4, repos_path = ?5 " \ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \ "" -#define STMT_LOOK_FOR_WORK 97 -#define STMT_97_INFO {"STMT_LOOK_FOR_WORK", NULL} -#define STMT_97 \ +#define STMT_LOOK_FOR_WORK 98 +#define STMT_98_INFO {"STMT_LOOK_FOR_WORK", NULL} +#define STMT_98 \ "SELECT id FROM work_queue LIMIT 1 " \ "" -#define STMT_INSERT_WORK_ITEM 98 -#define STMT_98_INFO {"STMT_INSERT_WORK_ITEM", NULL} -#define STMT_98 \ +#define STMT_INSERT_WORK_ITEM 99 +#define STMT_99_INFO {"STMT_INSERT_WORK_ITEM", NULL} +#define STMT_99 \ "INSERT INTO work_queue (work) VALUES (?1) " \ "" -#define STMT_SELECT_WORK_ITEM 99 -#define STMT_99_INFO {"STMT_SELECT_WORK_ITEM", NULL} -#define STMT_99 \ +#define STMT_SELECT_WORK_ITEM 100 +#define STMT_100_INFO {"STMT_SELECT_WORK_ITEM", NULL} +#define STMT_100 \ "SELECT id, work FROM work_queue ORDER BY id LIMIT 1 " \ "" -#define STMT_DELETE_WORK_ITEM 100 -#define STMT_100_INFO {"STMT_DELETE_WORK_ITEM", NULL} -#define STMT_100 \ +#define STMT_DELETE_WORK_ITEM 101 +#define STMT_101_INFO {"STMT_DELETE_WORK_ITEM", NULL} +#define STMT_101 \ "DELETE FROM work_queue WHERE id = ?1 " \ "" -#define STMT_INSERT_OR_IGNORE_PRISTINE 101 -#define STMT_101_INFO {"STMT_INSERT_OR_IGNORE_PRISTINE", NULL} -#define STMT_101 \ +#define STMT_INSERT_OR_IGNORE_PRISTINE 102 +#define STMT_102_INFO {"STMT_INSERT_OR_IGNORE_PRISTINE", NULL} +#define STMT_102 \ "INSERT OR IGNORE INTO pristine (checksum, md5_checksum, size, refcount) " \ "VALUES (?1, ?2, ?3, 0) " \ "" -#define STMT_INSERT_PRISTINE 102 -#define STMT_102_INFO {"STMT_INSERT_PRISTINE", NULL} -#define STMT_102 \ +#define STMT_INSERT_PRISTINE 103 +#define STMT_103_INFO {"STMT_INSERT_PRISTINE", NULL} +#define STMT_103 \ "INSERT INTO pristine (checksum, md5_checksum, size, refcount) " \ "VALUES (?1, ?2, ?3, 0) " \ "" -#define STMT_SELECT_PRISTINE 103 -#define STMT_103_INFO {"STMT_SELECT_PRISTINE", NULL} -#define STMT_103 \ +#define STMT_SELECT_PRISTINE 104 +#define STMT_104_INFO {"STMT_SELECT_PRISTINE", NULL} +#define STMT_104 \ "SELECT md5_checksum " \ "FROM pristine " \ "WHERE checksum = ?1 " \ "" -#define STMT_SELECT_PRISTINE_SIZE 104 -#define STMT_104_INFO {"STMT_SELECT_PRISTINE_SIZE", NULL} -#define STMT_104 \ +#define STMT_SELECT_PRISTINE_SIZE 105 +#define STMT_105_INFO {"STMT_SELECT_PRISTINE_SIZE", NULL} +#define STMT_105 \ "SELECT size " \ "FROM pristine " \ "WHERE checksum = ?1 LIMIT 1 " \ "" -#define STMT_SELECT_PRISTINE_BY_MD5 105 -#define STMT_105_INFO {"STMT_SELECT_PRISTINE_BY_MD5", NULL} -#define STMT_105 \ +#define STMT_SELECT_PRISTINE_BY_MD5 106 +#define STMT_106_INFO {"STMT_SELECT_PRISTINE_BY_MD5", NULL} +#define STMT_106 \ "SELECT checksum " \ "FROM pristine " \ "WHERE md5_checksum = ?1 " \ "" -#define STMT_SELECT_UNREFERENCED_PRISTINES 106 -#define STMT_106_INFO {"STMT_SELECT_UNREFERENCED_PRISTINES", NULL} -#define STMT_106 \ +#define STMT_SELECT_UNREFERENCED_PRISTINES 107 +#define STMT_107_INFO {"STMT_SELECT_UNREFERENCED_PRISTINES", NULL} +#define STMT_107 \ "SELECT checksum " \ "FROM pristine " \ "WHERE refcount = 0 " \ "" -#define STMT_DELETE_PRISTINE_IF_UNREFERENCED 107 -#define STMT_107_INFO {"STMT_DELETE_PRISTINE_IF_UNREFERENCED", NULL} -#define STMT_107 \ +#define STMT_DELETE_PRISTINE_IF_UNREFERENCED 108 +#define STMT_108_INFO {"STMT_DELETE_PRISTINE_IF_UNREFERENCED", NULL} +#define STMT_108 \ "DELETE FROM pristine " \ "WHERE checksum = ?1 AND refcount = 0 " \ "" -#define STMT_SELECT_COPY_PRISTINES 108 -#define STMT_108_INFO {"STMT_SELECT_COPY_PRISTINES", NULL} -#define STMT_108 \ +#define STMT_SELECT_COPY_PRISTINES 109 +#define STMT_109_INFO {"STMT_SELECT_COPY_PRISTINES", NULL} +#define STMT_109 \ "SELECT n.checksum, md5_checksum, size " \ "FROM nodes_current n " \ "LEFT JOIN pristine p ON n.checksum = p.checksum " \ @@ -1102,62 +1109,62 @@ " AND n.checksum IS NOT NULL " \ "" -#define STMT_VACUUM 109 -#define STMT_109_INFO {"STMT_VACUUM", NULL} -#define STMT_109 \ +#define STMT_VACUUM 110 +#define STMT_110_INFO {"STMT_VACUUM", NULL} +#define STMT_110 \ "VACUUM " \ "" -#define STMT_SELECT_CONFLICT_VICTIMS 110 -#define STMT_110_INFO {"STMT_SELECT_CONFLICT_VICTIMS", NULL} -#define STMT_110 \ +#define STMT_SELECT_CONFLICT_VICTIMS 111 +#define STMT_111_INFO {"STMT_SELECT_CONFLICT_VICTIMS", NULL} +#define STMT_111 \ "SELECT local_relpath, conflict_data " \ "FROM actual_node " \ "WHERE wc_id = ?1 AND parent_relpath = ?2 AND " \ " NOT (conflict_data IS NULL) " \ "" -#define STMT_INSERT_WC_LOCK 111 -#define STMT_111_INFO {"STMT_INSERT_WC_LOCK", NULL} -#define STMT_111 \ +#define STMT_INSERT_WC_LOCK 112 +#define STMT_112_INFO {"STMT_INSERT_WC_LOCK", NULL} +#define STMT_112 \ "INSERT INTO wc_lock (wc_id, local_dir_relpath, locked_levels) " \ "VALUES (?1, ?2, ?3) " \ "" -#define STMT_SELECT_WC_LOCK 112 -#define STMT_112_INFO {"STMT_SELECT_WC_LOCK", NULL} -#define STMT_112 \ +#define STMT_SELECT_WC_LOCK 113 +#define STMT_113_INFO {"STMT_SELECT_WC_LOCK", NULL} +#define STMT_113 \ "SELECT locked_levels FROM wc_lock " \ "WHERE wc_id = ?1 AND local_dir_relpath = ?2 " \ "" -#define STMT_SELECT_ANCESTOR_WCLOCKS 113 -#define STMT_113_INFO {"STMT_SELECT_ANCESTOR_WCLOCKS", NULL} -#define STMT_113 \ +#define STMT_SELECT_ANCESTOR_WCLOCKS 114 +#define STMT_114_INFO {"STMT_SELECT_ANCESTOR_WCLOCKS", NULL} +#define STMT_114 \ "SELECT local_dir_relpath, locked_levels FROM wc_lock " \ "WHERE wc_id = ?1 " \ " AND ((local_dir_relpath >= ?3 AND local_dir_relpath <= ?2) " \ " OR local_dir_relpath = '') " \ "" -#define STMT_DELETE_WC_LOCK 114 -#define STMT_114_INFO {"STMT_DELETE_WC_LOCK", NULL} -#define STMT_114 \ +#define STMT_DELETE_WC_LOCK 115 +#define STMT_115_INFO {"STMT_DELETE_WC_LOCK", NULL} +#define STMT_115 \ "DELETE FROM wc_lock " \ "WHERE wc_id = ?1 AND local_dir_relpath = ?2 " \ "" -#define STMT_FIND_WC_LOCK 115 -#define STMT_115_INFO {"STMT_FIND_WC_LOCK", NULL} -#define STMT_115 \ +#define STMT_FIND_WC_LOCK 116 +#define STMT_116_INFO {"STMT_FIND_WC_LOCK", NULL} +#define STMT_116 \ "SELECT local_dir_relpath FROM wc_lock " \ "WHERE wc_id = ?1 " \ " AND (((local_dir_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_dir_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ "" -#define STMT_DELETE_WC_LOCK_ORPHAN 116 -#define STMT_116_INFO {"STMT_DELETE_WC_LOCK_ORPHAN", NULL} -#define STMT_116 \ +#define STMT_DELETE_WC_LOCK_ORPHAN 117 +#define STMT_117_INFO {"STMT_DELETE_WC_LOCK_ORPHAN", NULL} +#define STMT_117 \ "DELETE FROM wc_lock " \ "WHERE wc_id = ?1 AND local_dir_relpath = ?2 " \ "AND NOT EXISTS (SELECT 1 FROM nodes " \ @@ -1165,9 +1172,9 @@ " AND nodes.local_relpath = wc_lock.local_dir_relpath) " \ "" -#define STMT_DELETE_WC_LOCK_ORPHAN_RECURSIVE 117 -#define STMT_117_INFO {"STMT_DELETE_WC_LOCK_ORPHAN_RECURSIVE", NULL} -#define STMT_117 \ +#define STMT_DELETE_WC_LOCK_ORPHAN_RECURSIVE 118 +#define STMT_118_INFO {"STMT_DELETE_WC_LOCK_ORPHAN_RECURSIVE", NULL} +#define STMT_118 \ "DELETE FROM wc_lock " \ "WHERE wc_id = ?1 " \ " AND (local_dir_relpath = ?2 " \ @@ -1177,9 +1184,9 @@ " AND nodes.local_relpath = wc_lock.local_dir_relpath) " \ "" -#define STMT_APPLY_CHANGES_TO_BASE_NODE 118 -#define STMT_118_INFO {"STMT_APPLY_CHANGES_TO_BASE_NODE", NULL} -#define STMT_118 \ +#define STMT_APPLY_CHANGES_TO_BASE_NODE 119 +#define STMT_119_INFO {"STMT_APPLY_CHANGES_TO_BASE_NODE", NULL} +#define STMT_119 \ "INSERT OR REPLACE INTO nodes ( " \ " wc_id, local_relpath, op_depth, parent_relpath, repos_id, repos_path, " \ " revision, presence, depth, kind, changed_revision, changed_date, " \ @@ -1193,18 +1200,18 @@ " AND op_depth = 0)) " \ "" -#define STMT_INSTALL_WORKING_NODE_FOR_DELETE 119 -#define STMT_119_INFO {"STMT_INSTALL_WORKING_NODE_FOR_DELETE", NULL} -#define STMT_119 \ +#define STMT_INSTALL_WORKING_NODE_FOR_DELETE 120 +#define STMT_120_INFO {"STMT_INSTALL_WORKING_NODE_FOR_DELETE", NULL} +#define STMT_120 \ "INSERT OR REPLACE INTO nodes ( " \ " wc_id, local_relpath, op_depth, " \ " parent_relpath, presence, kind) " \ "VALUES(?1, ?2, ?3, ?4, 'base-deleted', ?5) " \ "" -#define STMT_DELETE_NO_LOWER_LAYER 120 -#define STMT_120_INFO {"STMT_DELETE_NO_LOWER_LAYER", NULL} -#define STMT_120 \ +#define STMT_DELETE_NO_LOWER_LAYER 121 +#define STMT_121_INFO {"STMT_DELETE_NO_LOWER_LAYER", NULL} +#define STMT_121 \ "DELETE FROM nodes " \ " WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ @@ -1216,9 +1223,9 @@ " AND n.presence IN ('normal', 'incomplete')) " \ "" -#define STMT_REPLACE_WITH_BASE_DELETED 121 -#define STMT_121_INFO {"STMT_REPLACE_WITH_BASE_DELETED", NULL} -#define STMT_121 \ +#define STMT_REPLACE_WITH_BASE_DELETED 122 +#define STMT_122_INFO {"STMT_REPLACE_WITH_BASE_DELETED", NULL} +#define STMT_122 \ "INSERT OR REPLACE INTO nodes (wc_id, local_relpath, op_depth, parent_relpath, " \ " kind, moved_to, presence) " \ "SELECT wc_id, local_relpath, op_depth, parent_relpath, " \ @@ -1229,9 +1236,9 @@ " AND op_depth = ?3 " \ "" -#define STMT_INSERT_DELETE_FROM_NODE_RECURSIVE 122 -#define STMT_122_INFO {"STMT_INSERT_DELETE_FROM_NODE_RECURSIVE", NULL} -#define STMT_122 \ +#define STMT_INSERT_DELETE_FROM_NODE_RECURSIVE 123 +#define STMT_123_INFO {"STMT_INSERT_DELETE_FROM_NODE_RECURSIVE", NULL} +#define STMT_123 \ "INSERT INTO nodes ( " \ " wc_id, local_relpath, op_depth, parent_relpath, presence, kind) " \ "SELECT wc_id, local_relpath, ?4 , parent_relpath, 'base-deleted', " \ @@ -1245,9 +1252,9 @@ " AND file_external IS NULL " \ "" -#define STMT_INSERT_WORKING_NODE_FROM_BASE_COPY 123 -#define STMT_123_INFO {"STMT_INSERT_WORKING_NODE_FROM_BASE_COPY", NULL} -#define STMT_123 \ +#define STMT_INSERT_WORKING_NODE_FROM_BASE_COPY 124 +#define STMT_124_INFO {"STMT_INSERT_WORKING_NODE_FROM_BASE_COPY", NULL} +#define STMT_124 \ "INSERT INTO nodes ( " \ " wc_id, local_relpath, op_depth, parent_relpath, repos_id, repos_path, " \ " revision, presence, depth, kind, changed_revision, changed_date, " \ @@ -1261,9 +1268,9 @@ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \ "" -#define STMT_INSERT_DELETE_FROM_BASE 124 -#define STMT_124_INFO {"STMT_INSERT_DELETE_FROM_BASE", NULL} -#define STMT_124 \ +#define STMT_INSERT_DELETE_FROM_BASE 125 +#define STMT_125_INFO {"STMT_INSERT_DELETE_FROM_BASE", NULL} +#define STMT_125 \ "INSERT INTO nodes ( " \ " wc_id, local_relpath, op_depth, parent_relpath, presence, kind) " \ "SELECT wc_id, local_relpath, ?3 , parent_relpath, " \ @@ -1272,34 +1279,34 @@ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \ "" -#define STMT_UPDATE_OP_DEPTH_INCREASE_RECURSIVE 125 -#define STMT_125_INFO {"STMT_UPDATE_OP_DEPTH_INCREASE_RECURSIVE", NULL} -#define STMT_125 \ +#define STMT_UPDATE_OP_DEPTH_INCREASE_RECURSIVE 126 +#define STMT_126_INFO {"STMT_UPDATE_OP_DEPTH_INCREASE_RECURSIVE", NULL} +#define STMT_126 \ "UPDATE nodes SET op_depth = ?3 + 1 " \ "WHERE wc_id = ?1 " \ " AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ " AND op_depth = ?3 " \ "" -#define STMT_UPDATE_OP_DEPTH_RECURSIVE 126 -#define STMT_126_INFO {"STMT_UPDATE_OP_DEPTH_RECURSIVE", NULL} -#define STMT_126 \ +#define STMT_UPDATE_OP_DEPTH_RECURSIVE 127 +#define STMT_127_INFO {"STMT_UPDATE_OP_DEPTH_RECURSIVE", NULL} +#define STMT_127 \ "UPDATE nodes SET op_depth = ?4, moved_here = NULL " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ " AND op_depth = ?3 " \ "" -#define STMT_DOES_NODE_EXIST 127 -#define STMT_127_INFO {"STMT_DOES_NODE_EXIST", NULL} -#define STMT_127 \ +#define STMT_DOES_NODE_EXIST 128 +#define STMT_128_INFO {"STMT_DOES_NODE_EXIST", NULL} +#define STMT_128 \ "SELECT 1 FROM nodes WHERE wc_id = ?1 AND local_relpath = ?2 " \ "LIMIT 1 " \ "" -#define STMT_HAS_SERVER_EXCLUDED_DESCENDANTS 128 -#define STMT_128_INFO {"STMT_HAS_SERVER_EXCLUDED_DESCENDANTS", NULL} -#define STMT_128 \ +#define STMT_HAS_SERVER_EXCLUDED_DESCENDANTS 129 +#define STMT_129_INFO {"STMT_HAS_SERVER_EXCLUDED_DESCENDANTS", NULL} +#define STMT_129 \ "SELECT local_relpath FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ @@ -1307,9 +1314,9 @@ "LIMIT 1 " \ "" -#define STMT_SELECT_ALL_EXCLUDED_DESCENDANTS 129 -#define STMT_129_INFO {"STMT_SELECT_ALL_EXCLUDED_DESCENDANTS", NULL} -#define STMT_129 \ +#define STMT_SELECT_ALL_EXCLUDED_DESCENDANTS 130 +#define STMT_130_INFO {"STMT_SELECT_ALL_EXCLUDED_DESCENDANTS", NULL} +#define STMT_130 \ "SELECT local_relpath FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ @@ -1317,9 +1324,9 @@ " AND (presence = 'server-excluded' OR presence = 'excluded') " \ "" -#define STMT_INSERT_WORKING_NODE_COPY_FROM 130 -#define STMT_130_INFO {"STMT_INSERT_WORKING_NODE_COPY_FROM", NULL} -#define STMT_130 \ +#define STMT_INSERT_WORKING_NODE_COPY_FROM 131 +#define STMT_131_INFO {"STMT_INSERT_WORKING_NODE_COPY_FROM", NULL} +#define STMT_131 \ "INSERT OR REPLACE INTO nodes ( " \ " wc_id, local_relpath, op_depth, parent_relpath, repos_id, " \ " repos_path, revision, presence, depth, moved_here, kind, changed_revision, " \ @@ -1338,9 +1345,9 @@ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ "" -#define STMT_INSERT_WORKING_NODE_COPY_FROM_DEPTH 131 -#define STMT_131_INFO {"STMT_INSERT_WORKING_NODE_COPY_FROM_DEPTH", NULL} -#define STMT_131 \ +#define STMT_INSERT_WORKING_NODE_COPY_FROM_DEPTH 132 +#define STMT_132_INFO {"STMT_INSERT_WORKING_NODE_COPY_FROM_DEPTH", NULL} +#define STMT_132 \ "INSERT OR REPLACE INTO nodes ( " \ " wc_id, local_relpath, op_depth, parent_relpath, repos_id, " \ " repos_path, revision, presence, depth, moved_here, kind, changed_revision, " \ @@ -1359,49 +1366,49 @@ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?7 " \ "" -#define STMT_UPDATE_BASE_REVISION 132 -#define STMT_132_INFO {"STMT_UPDATE_BASE_REVISION", NULL} -#define STMT_132 \ +#define STMT_UPDATE_BASE_REVISION 133 +#define STMT_133_INFO {"STMT_UPDATE_BASE_REVISION", NULL} +#define STMT_133 \ "UPDATE nodes SET revision = ?3 " \ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \ "" -#define STMT_UPDATE_BASE_REPOS 133 -#define STMT_133_INFO {"STMT_UPDATE_BASE_REPOS", NULL} -#define STMT_133 \ +#define STMT_UPDATE_BASE_REPOS 134 +#define STMT_134_INFO {"STMT_UPDATE_BASE_REPOS", NULL} +#define STMT_134 \ "UPDATE nodes SET repos_id = ?3, repos_path = ?4 " \ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \ "" -#define STMT_ACTUAL_HAS_CHILDREN 134 -#define STMT_134_INFO {"STMT_ACTUAL_HAS_CHILDREN", NULL} -#define STMT_134 \ +#define STMT_ACTUAL_HAS_CHILDREN 135 +#define STMT_135_INFO {"STMT_ACTUAL_HAS_CHILDREN", NULL} +#define STMT_135 \ "SELECT 1 FROM actual_node " \ "WHERE wc_id = ?1 AND parent_relpath = ?2 " \ "LIMIT 1 " \ "" -#define STMT_INSERT_EXTERNAL 135 -#define STMT_135_INFO {"STMT_INSERT_EXTERNAL", NULL} -#define STMT_135 \ +#define STMT_INSERT_EXTERNAL 136 +#define STMT_136_INFO {"STMT_INSERT_EXTERNAL", NULL} +#define STMT_136 \ "INSERT OR REPLACE INTO externals ( " \ " wc_id, local_relpath, parent_relpath, presence, kind, def_local_relpath, " \ " repos_id, def_repos_relpath, def_operational_revision, def_revision) " \ "VALUES (?1, ?2, ?3, ?4, ?5, ?6, ?7, ?8, ?9, ?10) " \ "" -#define STMT_SELECT_EXTERNAL_INFO 136 -#define STMT_136_INFO {"STMT_SELECT_EXTERNAL_INFO", NULL} -#define STMT_136 \ +#define STMT_SELECT_EXTERNAL_INFO 137 +#define STMT_137_INFO {"STMT_SELECT_EXTERNAL_INFO", NULL} +#define STMT_137 \ "SELECT presence, kind, def_local_relpath, repos_id, " \ " def_repos_relpath, def_operational_revision, def_revision " \ "FROM externals WHERE wc_id = ?1 AND local_relpath = ?2 " \ "LIMIT 1 " \ "" -#define STMT_DELETE_FILE_EXTERNALS 137 -#define STMT_137_INFO {"STMT_DELETE_FILE_EXTERNALS", NULL} -#define STMT_137 \ +#define STMT_DELETE_FILE_EXTERNALS 138 +#define STMT_138_INFO {"STMT_DELETE_FILE_EXTERNALS", NULL} +#define STMT_138 \ "DELETE FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ @@ -1409,26 +1416,26 @@ " AND file_external IS NOT NULL " \ "" -#define STMT_DELETE_FILE_EXTERNAL_REGISTATIONS 138 -#define STMT_138_INFO {"STMT_DELETE_FILE_EXTERNAL_REGISTATIONS", NULL} -#define STMT_138 \ +#define STMT_DELETE_FILE_EXTERNAL_REGISTATIONS 139 +#define STMT_139_INFO {"STMT_DELETE_FILE_EXTERNAL_REGISTATIONS", NULL} +#define STMT_139 \ "DELETE FROM externals " \ "WHERE wc_id = ?1 " \ " AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ " AND kind != 'dir' " \ "" -#define STMT_DELETE_EXTERNAL_REGISTATIONS 139 -#define STMT_139_INFO {"STMT_DELETE_EXTERNAL_REGISTATIONS", NULL} -#define STMT_139 \ +#define STMT_DELETE_EXTERNAL_REGISTATIONS 140 +#define STMT_140_INFO {"STMT_DELETE_EXTERNAL_REGISTATIONS", NULL} +#define STMT_140 \ "DELETE FROM externals " \ "WHERE wc_id = ?1 " \ " AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ "" -#define STMT_SELECT_COMMITTABLE_EXTERNALS_BELOW 140 -#define STMT_140_INFO {"STMT_SELECT_COMMITTABLE_EXTERNALS_BELOW", NULL} -#define STMT_140 \ +#define STMT_SELECT_COMMITTABLE_EXTERNALS_BELOW 141 +#define STMT_141_INFO {"STMT_SELECT_COMMITTABLE_EXTERNALS_BELOW", NULL} +#define STMT_141 \ "SELECT local_relpath, kind, def_repos_relpath, " \ " (SELECT root FROM repository AS r WHERE r.id = e.repos_id) " \ "FROM externals e " \ @@ -1446,9 +1453,9 @@ " AND nodes.local_relpath = e.parent_relpath)) " \ "" -#define STMT_SELECT_COMMITTABLE_EXTERNALS_IMMEDIATELY_BELOW 141 -#define STMT_141_INFO {"STMT_SELECT_COMMITTABLE_EXTERNALS_IMMEDIATELY_BELOW", NULL} -#define STMT_141 \ +#define STMT_SELECT_COMMITTABLE_EXTERNALS_IMMEDIATELY_BELOW 142 +#define STMT_142_INFO {"STMT_SELECT_COMMITTABLE_EXTERNALS_IMMEDIATELY_BELOW", NULL} +#define STMT_142 \ "SELECT local_relpath, kind, def_repos_relpath, " \ " (SELECT root FROM repository AS r WHERE r.id = e.repos_id) " \ "FROM externals e " \ @@ -1467,25 +1474,25 @@ " AND nodes.local_relpath = e.parent_relpath)) " \ "" -#define STMT_SELECT_EXTERNALS_DEFINED 142 -#define STMT_142_INFO {"STMT_SELECT_EXTERNALS_DEFINED", NULL} -#define STMT_142 \ +#define STMT_SELECT_EXTERNALS_DEFINED 143 +#define STMT_143_INFO {"STMT_SELECT_EXTERNALS_DEFINED", NULL} +#define STMT_143 \ "SELECT local_relpath, def_local_relpath " \ "FROM externals " \ "WHERE (wc_id = ?1 AND def_local_relpath = ?2) " \ " OR (wc_id = ?1 AND (((def_local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((def_local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ "" -#define STMT_DELETE_EXTERNAL 143 -#define STMT_143_INFO {"STMT_DELETE_EXTERNAL", NULL} -#define STMT_143 \ +#define STMT_DELETE_EXTERNAL 144 +#define STMT_144_INFO {"STMT_DELETE_EXTERNAL", NULL} +#define STMT_144 \ "DELETE FROM externals " \ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ "" -#define STMT_SELECT_EXTERNAL_PROPERTIES 144 -#define STMT_144_INFO {"STMT_SELECT_EXTERNAL_PROPERTIES", NULL} -#define STMT_144 \ +#define STMT_SELECT_EXTERNAL_PROPERTIES 145 +#define STMT_145_INFO {"STMT_SELECT_EXTERNAL_PROPERTIES", NULL} +#define STMT_145 \ "SELECT IFNULL((SELECT properties FROM actual_node a " \ " WHERE a.wc_id = ?1 AND A.local_relpath = n.local_relpath), " \ " properties), " \ @@ -1503,9 +1510,9 @@ " AND kind = 'dir' AND presence IN ('normal', 'incomplete') " \ "" -#define STMT_SELECT_CURRENT_PROPS_RECURSIVE 145 -#define STMT_145_INFO {"STMT_SELECT_CURRENT_PROPS_RECURSIVE", NULL} -#define STMT_145 \ +#define STMT_SELECT_CURRENT_PROPS_RECURSIVE 146 +#define STMT_146_INFO {"STMT_SELECT_CURRENT_PROPS_RECURSIVE", NULL} +#define STMT_146 \ "SELECT IFNULL((SELECT properties FROM actual_node a " \ " WHERE a.wc_id = ?1 AND A.local_relpath = n.local_relpath), " \ " properties), " \ @@ -1515,57 +1522,57 @@ " OR (wc_id = ?1 AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ "" -#define STMT_PRAGMA_LOCKING_MODE 146 -#define STMT_146_INFO {"STMT_PRAGMA_LOCKING_MODE", NULL} -#define STMT_146 \ +#define STMT_PRAGMA_LOCKING_MODE 147 +#define STMT_147_INFO {"STMT_PRAGMA_LOCKING_MODE", NULL} +#define STMT_147 \ "PRAGMA locking_mode = exclusive " \ "" -#define STMT_INSERT_ACTUAL_NODE 147 -#define STMT_147_INFO {"STMT_INSERT_ACTUAL_NODE", NULL} -#define STMT_147 \ +#define STMT_INSERT_ACTUAL_NODE 148 +#define STMT_148_INFO {"STMT_INSERT_ACTUAL_NODE", NULL} +#define STMT_148 \ "INSERT OR REPLACE INTO actual_node ( " \ " wc_id, local_relpath, parent_relpath, properties, changelist, conflict_data) " \ "VALUES (?1, ?2, ?3, ?4, ?5, ?6) " \ "" -#define STMT_UPDATE_ACTUAL_CONFLICT_DATA 148 -#define STMT_148_INFO {"STMT_UPDATE_ACTUAL_CONFLICT_DATA", NULL} -#define STMT_148 \ +#define STMT_UPDATE_ACTUAL_CONFLICT_DATA 149 +#define STMT_149_INFO {"STMT_UPDATE_ACTUAL_CONFLICT_DATA", NULL} +#define STMT_149 \ "UPDATE actual_node SET conflict_data = ?3 " \ "WHERE wc_id = ?1 AND local_relpath = ?2 " \ "" -#define STMT_INSERT_ACTUAL_CONFLICT_DATA 149 -#define STMT_149_INFO {"STMT_INSERT_ACTUAL_CONFLICT_DATA", NULL} -#define STMT_149 \ +#define STMT_INSERT_ACTUAL_CONFLICT_DATA 150 +#define STMT_150_INFO {"STMT_INSERT_ACTUAL_CONFLICT_DATA", NULL} +#define STMT_150 \ "INSERT INTO actual_node (wc_id, local_relpath, conflict_data, parent_relpath) " \ "VALUES (?1, ?2, ?3, ?4) " \ "" -#define STMT_SELECT_ALL_FILES 150 -#define STMT_150_INFO {"STMT_SELECT_ALL_FILES", NULL} -#define STMT_150 \ +#define STMT_SELECT_ALL_FILES 151 +#define STMT_151_INFO {"STMT_SELECT_ALL_FILES", NULL} +#define STMT_151 \ "SELECT local_relpath FROM nodes_current " \ "WHERE wc_id = ?1 AND parent_relpath = ?2 AND kind = 'file' " \ "" -#define STMT_UPDATE_NODE_PROPS 151 -#define STMT_151_INFO {"STMT_UPDATE_NODE_PROPS", NULL} -#define STMT_151 \ +#define STMT_UPDATE_NODE_PROPS 152 +#define STMT_152_INFO {"STMT_UPDATE_NODE_PROPS", NULL} +#define STMT_152 \ "UPDATE nodes SET properties = ?4 " \ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \ "" -#define STMT_PRAGMA_TABLE_INFO_NODES 152 -#define STMT_152_INFO {"STMT_PRAGMA_TABLE_INFO_NODES", NULL} -#define STMT_152 \ +#define STMT_PRAGMA_TABLE_INFO_NODES 153 +#define STMT_153_INFO {"STMT_PRAGMA_TABLE_INFO_NODES", NULL} +#define STMT_153 \ "PRAGMA table_info(\"NODES\") " \ "" -#define STMT_CREATE_TARGET_PROP_CACHE 153 -#define STMT_153_INFO {"STMT_CREATE_TARGET_PROP_CACHE", NULL} -#define STMT_153 \ +#define STMT_CREATE_TARGET_PROP_CACHE 154 +#define STMT_154_INFO {"STMT_CREATE_TARGET_PROP_CACHE", NULL} +#define STMT_154 \ "DROP TABLE IF EXISTS target_prop_cache; " \ "CREATE TEMPORARY TABLE target_prop_cache ( " \ " local_relpath TEXT NOT NULL PRIMARY KEY, " \ @@ -1574,9 +1581,9 @@ "); " \ "" -#define STMT_CACHE_TARGET_PROPS 154 -#define STMT_154_INFO {"STMT_CACHE_TARGET_PROPS", NULL} -#define STMT_154 \ +#define STMT_CACHE_TARGET_PROPS 155 +#define STMT_155_INFO {"STMT_CACHE_TARGET_PROPS", NULL} +#define STMT_155 \ "INSERT INTO target_prop_cache(local_relpath, kind, properties) " \ " SELECT n.local_relpath, n.kind, " \ " IFNULL((SELECT properties FROM actual_node AS a " \ @@ -1595,9 +1602,9 @@ " ORDER BY t.local_relpath " \ "" -#define STMT_CACHE_TARGET_PRISTINE_PROPS 155 -#define STMT_155_INFO {"STMT_CACHE_TARGET_PRISTINE_PROPS", NULL} -#define STMT_155 \ +#define STMT_CACHE_TARGET_PRISTINE_PROPS 156 +#define STMT_156_INFO {"STMT_CACHE_TARGET_PRISTINE_PROPS", NULL} +#define STMT_156 \ "INSERT INTO target_prop_cache(local_relpath, kind, properties) " \ " SELECT n.local_relpath, n.kind, " \ " CASE n.presence " \ @@ -1622,22 +1629,22 @@ " ORDER BY t.local_relpath " \ "" -#define STMT_SELECT_ALL_TARGET_PROP_CACHE 156 -#define STMT_156_INFO {"STMT_SELECT_ALL_TARGET_PROP_CACHE", NULL} -#define STMT_156 \ +#define STMT_SELECT_ALL_TARGET_PROP_CACHE 157 +#define STMT_157_INFO {"STMT_SELECT_ALL_TARGET_PROP_CACHE", NULL} +#define STMT_157 \ "SELECT local_relpath, properties FROM target_prop_cache " \ "ORDER BY local_relpath " \ "" -#define STMT_DROP_TARGET_PROP_CACHE 157 -#define STMT_157_INFO {"STMT_DROP_TARGET_PROP_CACHE", NULL} -#define STMT_157 \ +#define STMT_DROP_TARGET_PROP_CACHE 158 +#define STMT_158_INFO {"STMT_DROP_TARGET_PROP_CACHE", NULL} +#define STMT_158 \ "DROP TABLE target_prop_cache; " \ "" -#define STMT_CREATE_REVERT_LIST 158 -#define STMT_158_INFO {"STMT_CREATE_REVERT_LIST", NULL} -#define STMT_158 \ +#define STMT_CREATE_REVERT_LIST 159 +#define STMT_159_INFO {"STMT_CREATE_REVERT_LIST", NULL} +#define STMT_159 \ "DROP TABLE IF EXISTS revert_list; " \ "CREATE TEMPORARY TABLE revert_list ( " \ " local_relpath TEXT NOT NULL, " \ @@ -1693,26 +1700,26 @@ "END " \ "" -#define STMT_DROP_REVERT_LIST_TRIGGERS 159 -#define STMT_159_INFO {"STMT_DROP_REVERT_LIST_TRIGGERS", NULL} -#define STMT_159 \ +#define STMT_DROP_REVERT_LIST_TRIGGERS 160 +#define STMT_160_INFO {"STMT_DROP_REVERT_LIST_TRIGGERS", NULL} +#define STMT_160 \ "DROP TRIGGER trigger_revert_list_nodes; " \ "DROP TRIGGER trigger_revert_list_actual_delete; " \ "DROP TRIGGER trigger_revert_list_actual_update " \ "" -#define STMT_SELECT_REVERT_LIST 160 -#define STMT_160_INFO {"STMT_SELECT_REVERT_LIST", NULL} -#define STMT_160 \ +#define STMT_SELECT_REVERT_LIST 161 +#define STMT_161_INFO {"STMT_SELECT_REVERT_LIST", NULL} +#define STMT_161 \ "SELECT actual, notify, kind, op_depth, repos_id, conflict_data " \ "FROM revert_list " \ "WHERE local_relpath = ?1 " \ "ORDER BY actual DESC " \ "" -#define STMT_SELECT_REVERT_LIST_COPIED_CHILDREN 161 -#define STMT_161_INFO {"STMT_SELECT_REVERT_LIST_COPIED_CHILDREN", NULL} -#define STMT_161 \ +#define STMT_SELECT_REVERT_LIST_COPIED_CHILDREN 162 +#define STMT_162_INFO {"STMT_SELECT_REVERT_LIST_COPIED_CHILDREN", NULL} +#define STMT_162 \ "SELECT local_relpath, kind " \ "FROM revert_list " \ "WHERE (((local_relpath) > (CASE (?1) WHEN '' THEN '' ELSE (?1) || '/' END)) AND ((local_relpath) < CASE (?1) WHEN '' THEN X'FFFF' ELSE (?1) || '0' END)) " \ @@ -1721,15 +1728,15 @@ "ORDER BY local_relpath " \ "" -#define STMT_DELETE_REVERT_LIST 162 -#define STMT_162_INFO {"STMT_DELETE_REVERT_LIST", NULL} -#define STMT_162 \ +#define STMT_DELETE_REVERT_LIST 163 +#define STMT_163_INFO {"STMT_DELETE_REVERT_LIST", NULL} +#define STMT_163 \ "DELETE FROM revert_list WHERE local_relpath = ?1 " \ "" -#define STMT_SELECT_REVERT_LIST_RECURSIVE 163 -#define STMT_163_INFO {"STMT_SELECT_REVERT_LIST_RECURSIVE", NULL} -#define STMT_163 \ +#define STMT_SELECT_REVERT_LIST_RECURSIVE 164 +#define STMT_164_INFO {"STMT_SELECT_REVERT_LIST_RECURSIVE", NULL} +#define STMT_164 \ "SELECT DISTINCT local_relpath " \ "FROM revert_list " \ "WHERE (local_relpath = ?1 " \ @@ -1738,32 +1745,32 @@ "ORDER BY local_relpath " \ "" -#define STMT_DELETE_REVERT_LIST_RECURSIVE 164 -#define STMT_164_INFO {"STMT_DELETE_REVERT_LIST_RECURSIVE", NULL} -#define STMT_164 \ +#define STMT_DELETE_REVERT_LIST_RECURSIVE 165 +#define STMT_165_INFO {"STMT_DELETE_REVERT_LIST_RECURSIVE", NULL} +#define STMT_165 \ "DELETE FROM revert_list " \ "WHERE (local_relpath = ?1 " \ " OR (((local_relpath) > (CASE (?1) WHEN '' THEN '' ELSE (?1) || '/' END)) AND ((local_relpath) < CASE (?1) WHEN '' THEN X'FFFF' ELSE (?1) || '0' END))) " \ "" -#define STMT_DROP_REVERT_LIST 165 -#define STMT_165_INFO {"STMT_DROP_REVERT_LIST", NULL} -#define STMT_165 \ +#define STMT_DROP_REVERT_LIST 166 +#define STMT_166_INFO {"STMT_DROP_REVERT_LIST", NULL} +#define STMT_166 \ "DROP TABLE IF EXISTS revert_list " \ "" -#define STMT_CREATE_DELETE_LIST 166 -#define STMT_166_INFO {"STMT_CREATE_DELETE_LIST", NULL} -#define STMT_166 \ +#define STMT_CREATE_DELETE_LIST 167 +#define STMT_167_INFO {"STMT_CREATE_DELETE_LIST", NULL} +#define STMT_167 \ "DROP TABLE IF EXISTS delete_list; " \ "CREATE TEMPORARY TABLE delete_list ( " \ " local_relpath TEXT PRIMARY KEY NOT NULL UNIQUE " \ " ) " \ "" -#define STMT_INSERT_DELETE_LIST 167 -#define STMT_167_INFO {"STMT_INSERT_DELETE_LIST", NULL} -#define STMT_167 \ +#define STMT_INSERT_DELETE_LIST 168 +#define STMT_168_INFO {"STMT_INSERT_DELETE_LIST", NULL} +#define STMT_168 \ "INSERT INTO delete_list(local_relpath) " \ "SELECT local_relpath FROM nodes AS n " \ "WHERE wc_id = ?1 " \ @@ -1777,22 +1784,22 @@ " AND file_external IS NULL " \ "" -#define STMT_SELECT_DELETE_LIST 168 -#define STMT_168_INFO {"STMT_SELECT_DELETE_LIST", NULL} -#define STMT_168 \ +#define STMT_SELECT_DELETE_LIST 169 +#define STMT_169_INFO {"STMT_SELECT_DELETE_LIST", NULL} +#define STMT_169 \ "SELECT local_relpath FROM delete_list " \ "ORDER BY local_relpath " \ "" -#define STMT_FINALIZE_DELETE 169 -#define STMT_169_INFO {"STMT_FINALIZE_DELETE", NULL} -#define STMT_169 \ +#define STMT_FINALIZE_DELETE 170 +#define STMT_170_INFO {"STMT_FINALIZE_DELETE", NULL} +#define STMT_170 \ "DROP TABLE IF EXISTS delete_list " \ "" -#define STMT_CREATE_UPDATE_MOVE_LIST 170 -#define STMT_170_INFO {"STMT_CREATE_UPDATE_MOVE_LIST", NULL} -#define STMT_170 \ +#define STMT_CREATE_UPDATE_MOVE_LIST 171 +#define STMT_171_INFO {"STMT_CREATE_UPDATE_MOVE_LIST", NULL} +#define STMT_171 \ "DROP TABLE IF EXISTS update_move_list; " \ "CREATE TEMPORARY TABLE update_move_list ( " \ " local_relpath TEXT PRIMARY KEY NOT NULL UNIQUE, " \ @@ -1803,31 +1810,31 @@ " ) " \ "" -#define STMT_INSERT_UPDATE_MOVE_LIST 171 -#define STMT_171_INFO {"STMT_INSERT_UPDATE_MOVE_LIST", NULL} -#define STMT_171 \ +#define STMT_INSERT_UPDATE_MOVE_LIST 172 +#define STMT_172_INFO {"STMT_INSERT_UPDATE_MOVE_LIST", NULL} +#define STMT_172 \ "INSERT INTO update_move_list(local_relpath, action, kind, content_state, " \ " prop_state) " \ "VALUES (?1, ?2, ?3, ?4, ?5) " \ "" -#define STMT_SELECT_UPDATE_MOVE_LIST 172 -#define STMT_172_INFO {"STMT_SELECT_UPDATE_MOVE_LIST", NULL} -#define STMT_172 \ +#define STMT_SELECT_UPDATE_MOVE_LIST 173 +#define STMT_173_INFO {"STMT_SELECT_UPDATE_MOVE_LIST", NULL} +#define STMT_173 \ "SELECT local_relpath, action, kind, content_state, prop_state " \ "FROM update_move_list " \ "ORDER BY local_relpath " \ "" -#define STMT_FINALIZE_UPDATE_MOVE 173 -#define STMT_173_INFO {"STMT_FINALIZE_UPDATE_MOVE", NULL} -#define STMT_173 \ +#define STMT_FINALIZE_UPDATE_MOVE 174 +#define STMT_174_INFO {"STMT_FINALIZE_UPDATE_MOVE", NULL} +#define STMT_174 \ "DROP TABLE IF EXISTS update_move_list " \ "" -#define STMT_SELECT_MIN_MAX_REVISIONS 174 -#define STMT_174_INFO {"STMT_SELECT_MIN_MAX_REVISIONS", NULL} -#define STMT_174 \ +#define STMT_SELECT_MIN_MAX_REVISIONS 175 +#define STMT_175_INFO {"STMT_SELECT_MIN_MAX_REVISIONS", NULL} +#define STMT_175 \ "SELECT MIN(revision), MAX(revision), " \ " MIN(changed_revision), MAX(changed_revision) FROM nodes " \ " WHERE wc_id = ?1 " \ @@ -1838,9 +1845,9 @@ " AND op_depth = 0 " \ "" -#define STMT_HAS_SPARSE_NODES 175 -#define STMT_175_INFO {"STMT_HAS_SPARSE_NODES", NULL} -#define STMT_175 \ +#define STMT_HAS_SPARSE_NODES 176 +#define STMT_176_INFO {"STMT_HAS_SPARSE_NODES", NULL} +#define STMT_176 \ "SELECT 1 FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 " \ @@ -1852,9 +1859,9 @@ "LIMIT 1 " \ "" -#define STMT_SUBTREE_HAS_TREE_MODIFICATIONS 176 -#define STMT_176_INFO {"STMT_SUBTREE_HAS_TREE_MODIFICATIONS", NULL} -#define STMT_176 \ +#define STMT_SUBTREE_HAS_TREE_MODIFICATIONS 177 +#define STMT_177_INFO {"STMT_SUBTREE_HAS_TREE_MODIFICATIONS", NULL} +#define STMT_177 \ "SELECT 1 FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 " \ @@ -1863,9 +1870,9 @@ "LIMIT 1 " \ "" -#define STMT_SUBTREE_HAS_PROP_MODIFICATIONS 177 -#define STMT_177_INFO {"STMT_SUBTREE_HAS_PROP_MODIFICATIONS", NULL} -#define STMT_177 \ +#define STMT_SUBTREE_HAS_PROP_MODIFICATIONS 178 +#define STMT_178_INFO {"STMT_SUBTREE_HAS_PROP_MODIFICATIONS", NULL} +#define STMT_178 \ "SELECT 1 FROM actual_node " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 " \ @@ -1874,9 +1881,9 @@ "LIMIT 1 " \ "" -#define STMT_HAS_SWITCHED 178 -#define STMT_178_INFO {"STMT_HAS_SWITCHED", NULL} -#define STMT_178 \ +#define STMT_HAS_SWITCHED 179 +#define STMT_179_INFO {"STMT_HAS_SWITCHED", NULL} +#define STMT_179 \ "SELECT 1 " \ "FROM nodes " \ "WHERE wc_id = ?1 " \ @@ -1888,9 +1895,9 @@ "LIMIT 1 " \ "" -#define STMT_SELECT_BASE_FILES_RECURSIVE 179 -#define STMT_179_INFO {"STMT_SELECT_BASE_FILES_RECURSIVE", NULL} -#define STMT_179 \ +#define STMT_SELECT_BASE_FILES_RECURSIVE 180 +#define STMT_180_INFO {"STMT_SELECT_BASE_FILES_RECURSIVE", NULL} +#define STMT_180 \ "SELECT local_relpath, translated_size, last_mod_time FROM nodes AS n " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 " \ @@ -1901,47 +1908,47 @@ " AND file_external IS NULL " \ "" -#define STMT_SELECT_MOVED_FROM_RELPATH 180 -#define STMT_180_INFO {"STMT_SELECT_MOVED_FROM_RELPATH", NULL} -#define STMT_180 \ +#define STMT_SELECT_MOVED_FROM_RELPATH 181 +#define STMT_181_INFO {"STMT_SELECT_MOVED_FROM_RELPATH", NULL} +#define STMT_181 \ "SELECT local_relpath, op_depth FROM nodes " \ "WHERE wc_id = ?1 AND moved_to = ?2 AND op_depth > 0 " \ "" -#define STMT_UPDATE_MOVED_TO_RELPATH 181 -#define STMT_181_INFO {"STMT_UPDATE_MOVED_TO_RELPATH", NULL} -#define STMT_181 \ +#define STMT_UPDATE_MOVED_TO_RELPATH 182 +#define STMT_182_INFO {"STMT_UPDATE_MOVED_TO_RELPATH", NULL} +#define STMT_182 \ "UPDATE nodes SET moved_to = ?4 " \ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \ "" -#define STMT_CLEAR_MOVED_TO_RELPATH 182 -#define STMT_182_INFO {"STMT_CLEAR_MOVED_TO_RELPATH", NULL} -#define STMT_182 \ +#define STMT_CLEAR_MOVED_TO_RELPATH 183 +#define STMT_183_INFO {"STMT_CLEAR_MOVED_TO_RELPATH", NULL} +#define STMT_183 \ "UPDATE nodes SET moved_to = NULL " \ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \ "" -#define STMT_CLEAR_MOVED_HERE_RECURSIVE 183 -#define STMT_183_INFO {"STMT_CLEAR_MOVED_HERE_RECURSIVE", NULL} -#define STMT_183 \ +#define STMT_CLEAR_MOVED_HERE_RECURSIVE 184 +#define STMT_184_INFO {"STMT_CLEAR_MOVED_HERE_RECURSIVE", NULL} +#define STMT_184 \ "UPDATE nodes SET moved_here = NULL " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ " AND op_depth = ?3 " \ "" -#define STMT_SELECT_MOVED_HERE_CHILDREN 184 -#define STMT_184_INFO {"STMT_SELECT_MOVED_HERE_CHILDREN", NULL} -#define STMT_184 \ +#define STMT_SELECT_MOVED_HERE_CHILDREN 185 +#define STMT_185_INFO {"STMT_SELECT_MOVED_HERE_CHILDREN", NULL} +#define STMT_185 \ "SELECT moved_to, local_relpath FROM nodes " \ "WHERE wc_id = ?1 AND op_depth > 0 " \ " AND (((moved_to) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((moved_to) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ "" -#define STMT_SELECT_MOVED_FOR_DELETE 185 -#define STMT_185_INFO {"STMT_SELECT_MOVED_FOR_DELETE", NULL} -#define STMT_185 \ +#define STMT_SELECT_MOVED_FOR_DELETE 186 +#define STMT_186_INFO {"STMT_SELECT_MOVED_FOR_DELETE", NULL} +#define STMT_186 \ "SELECT local_relpath, moved_to, op_depth FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ @@ -1951,25 +1958,25 @@ " AND o.local_relpath = ?2) " \ "" -#define STMT_UPDATE_MOVED_TO_DESCENDANTS 186 -#define STMT_186_INFO {"STMT_UPDATE_MOVED_TO_DESCENDANTS", NULL} -#define STMT_186 \ +#define STMT_UPDATE_MOVED_TO_DESCENDANTS 187 +#define STMT_187_INFO {"STMT_UPDATE_MOVED_TO_DESCENDANTS", NULL} +#define STMT_187 \ "UPDATE nodes SET moved_to = (CASE WHEN (?2) = '' THEN (CASE WHEN (?3) = '' THEN (moved_to) WHEN (moved_to) = '' THEN (?3) ELSE (?3) || '/' || (moved_to) END) WHEN (?3) = '' THEN (CASE WHEN (?2) = '' THEN (moved_to) WHEN SUBSTR((moved_to), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(moved_to) THEN '' WHEN SUBSTR((moved_to), LENGTH(?2)+1, 1) = '/' THEN SUBSTR((moved_to), LENGTH(?2)+2) END END) WHEN SUBSTR((moved_to), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(moved_to) THEN (?3) WHEN SUBSTR((moved_to), LENGTH(?2)+1, 1) = '/' THEN (?3) || SUBSTR((moved_to), LENGTH(?2)+1) END END) " \ " WHERE wc_id = ?1 " \ " AND (((moved_to) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((moved_to) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ "" -#define STMT_CLEAR_MOVED_TO_DESCENDANTS 187 -#define STMT_187_INFO {"STMT_CLEAR_MOVED_TO_DESCENDANTS", NULL} -#define STMT_187 \ +#define STMT_CLEAR_MOVED_TO_DESCENDANTS 188 +#define STMT_188_INFO {"STMT_CLEAR_MOVED_TO_DESCENDANTS", NULL} +#define STMT_188 \ "UPDATE nodes SET moved_to = NULL " \ " WHERE wc_id = ?1 " \ " AND (((moved_to) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((moved_to) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ "" -#define STMT_SELECT_MOVED_PAIR2 188 -#define STMT_188_INFO {"STMT_SELECT_MOVED_PAIR2", NULL} -#define STMT_188 \ +#define STMT_SELECT_MOVED_PAIR2 189 +#define STMT_189_INFO {"STMT_SELECT_MOVED_PAIR2", NULL} +#define STMT_189 \ "SELECT local_relpath, moved_to, op_depth FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ @@ -1980,9 +1987,9 @@ " AND o.local_relpath = ?2) " \ "" -#define STMT_SELECT_MOVED_PAIR3 189 -#define STMT_189_INFO {"STMT_SELECT_MOVED_PAIR3", NULL} -#define STMT_189 \ +#define STMT_SELECT_MOVED_PAIR3 190 +#define STMT_190_INFO {"STMT_SELECT_MOVED_PAIR3", NULL} +#define STMT_190 \ "SELECT local_relpath, moved_to, op_depth, kind FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ @@ -1990,9 +1997,9 @@ " AND moved_to IS NOT NULL " \ "" -#define STMT_SELECT_MOVED_OUTSIDE 190 -#define STMT_190_INFO {"STMT_SELECT_MOVED_OUTSIDE", NULL} -#define STMT_190 \ +#define STMT_SELECT_MOVED_OUTSIDE 191 +#define STMT_191_INFO {"STMT_SELECT_MOVED_OUTSIDE", NULL} +#define STMT_191 \ "SELECT local_relpath, moved_to FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (local_relpath = ?2 OR (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \ @@ -2001,9 +2008,9 @@ " AND NOT (((moved_to) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((moved_to) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ "" -#define STMT_SELECT_OP_DEPTH_MOVED_PAIR 191 -#define STMT_191_INFO {"STMT_SELECT_OP_DEPTH_MOVED_PAIR", NULL} -#define STMT_191 \ +#define STMT_SELECT_OP_DEPTH_MOVED_PAIR 192 +#define STMT_192_INFO {"STMT_SELECT_OP_DEPTH_MOVED_PAIR", NULL} +#define STMT_192 \ "SELECT n.local_relpath, n.moved_to, " \ " (SELECT o.repos_path FROM nodes AS o " \ " WHERE o.wc_id = n.wc_id " \ @@ -2016,9 +2023,9 @@ " AND n.moved_to IS NOT NULL " \ "" -#define STMT_SELECT_MOVED_DESCENDANTS 192 -#define STMT_192_INFO {"STMT_SELECT_MOVED_DESCENDANTS", NULL} -#define STMT_192 \ +#define STMT_SELECT_MOVED_DESCENDANTS 193 +#define STMT_193_INFO {"STMT_SELECT_MOVED_DESCENDANTS", NULL} +#define STMT_193 \ "SELECT n.local_relpath, h.moved_to " \ "FROM nodes n, nodes h " \ "WHERE n.wc_id = ?1 " \ @@ -2034,9 +2041,9 @@ " AND h.moved_to IS NOT NULL " \ "" -#define STMT_COMMIT_UPDATE_ORIGIN 193 -#define STMT_193_INFO {"STMT_COMMIT_UPDATE_ORIGIN", NULL} -#define STMT_193 \ +#define STMT_COMMIT_UPDATE_ORIGIN 194 +#define STMT_194_INFO {"STMT_COMMIT_UPDATE_ORIGIN", NULL} +#define STMT_194 \ "UPDATE nodes SET repos_id = ?4, " \ " repos_path = ?5 || SUBSTR(local_relpath, LENGTH(?2)+1), " \ " revision = ?6 " \ @@ -2046,16 +2053,16 @@ " AND op_depth = ?3 " \ "" -#define STMT_HAS_LAYER_BETWEEN 194 -#define STMT_194_INFO {"STMT_HAS_LAYER_BETWEEN", NULL} -#define STMT_194 \ +#define STMT_HAS_LAYER_BETWEEN 195 +#define STMT_195_INFO {"STMT_HAS_LAYER_BETWEEN", NULL} +#define STMT_195 \ "SELECT 1 FROM NODES " \ "WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth > ?3 AND op_depth < ?4 " \ "" -#define STMT_SELECT_REPOS_PATH_REVISION 195 -#define STMT_195_INFO {"STMT_SELECT_REPOS_PATH_REVISION", NULL} -#define STMT_195 \ +#define STMT_SELECT_REPOS_PATH_REVISION 196 +#define STMT_196_INFO {"STMT_SELECT_REPOS_PATH_REVISION", NULL} +#define STMT_196 \ "SELECT local_relpath, repos_path, revision FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ @@ -2063,16 +2070,16 @@ "ORDER BY local_relpath " \ "" -#define STMT_SELECT_HAS_NON_FILE_CHILDREN 196 -#define STMT_196_INFO {"STMT_SELECT_HAS_NON_FILE_CHILDREN", NULL} -#define STMT_196 \ +#define STMT_SELECT_HAS_NON_FILE_CHILDREN 197 +#define STMT_197_INFO {"STMT_SELECT_HAS_NON_FILE_CHILDREN", NULL} +#define STMT_197 \ "SELECT 1 FROM nodes " \ "WHERE wc_id = ?1 AND parent_relpath = ?2 AND op_depth = 0 AND kind != 'file' " \ "" -#define STMT_SELECT_HAS_GRANDCHILDREN 197 -#define STMT_197_INFO {"STMT_SELECT_HAS_GRANDCHILDREN", NULL} -#define STMT_197 \ +#define STMT_SELECT_HAS_GRANDCHILDREN 198 +#define STMT_198_INFO {"STMT_SELECT_HAS_GRANDCHILDREN", NULL} +#define STMT_198 \ "SELECT 1 FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (((parent_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((parent_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ @@ -2080,33 +2087,33 @@ " AND file_external IS NULL " \ "" -#define STMT_SELECT_ALL_NODES 198 -#define STMT_198_INFO {"STMT_SELECT_ALL_NODES", NULL} -#define STMT_198 \ +#define STMT_SELECT_ALL_NODES 199 +#define STMT_199_INFO {"STMT_SELECT_ALL_NODES", NULL} +#define STMT_199 \ "SELECT op_depth, local_relpath, parent_relpath, file_external FROM nodes " \ "WHERE wc_id = ?1 " \ "" -#define STMT_SELECT_IPROPS 199 -#define STMT_199_INFO {"STMT_SELECT_IPROPS", NULL} -#define STMT_199 \ +#define STMT_SELECT_IPROPS 200 +#define STMT_200_INFO {"STMT_SELECT_IPROPS", NULL} +#define STMT_200 \ "SELECT inherited_props FROM nodes " \ "WHERE wc_id = ?1 " \ " AND local_relpath = ?2 " \ " AND op_depth = 0 " \ "" -#define STMT_UPDATE_IPROP 200 -#define STMT_200_INFO {"STMT_UPDATE_IPROP", NULL} -#define STMT_200 \ +#define STMT_UPDATE_IPROP 201 +#define STMT_201_INFO {"STMT_UPDATE_IPROP", NULL} +#define STMT_201 \ "UPDATE nodes " \ "SET inherited_props = ?3 " \ "WHERE (wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0) " \ "" -#define STMT_SELECT_IPROPS_NODE 201 -#define STMT_201_INFO {"STMT_SELECT_IPROPS_NODE", NULL} -#define STMT_201 \ +#define STMT_SELECT_IPROPS_NODE 202 +#define STMT_202_INFO {"STMT_SELECT_IPROPS_NODE", NULL} +#define STMT_202 \ "SELECT local_relpath, repos_path FROM nodes " \ "WHERE wc_id = ?1 " \ " AND local_relpath = ?2 " \ @@ -2114,9 +2121,9 @@ " AND (inherited_props not null) " \ "" -#define STMT_SELECT_IPROPS_RECURSIVE 202 -#define STMT_202_INFO {"STMT_SELECT_IPROPS_RECURSIVE", NULL} -#define STMT_202 \ +#define STMT_SELECT_IPROPS_RECURSIVE 203 +#define STMT_203_INFO {"STMT_SELECT_IPROPS_RECURSIVE", NULL} +#define STMT_203 \ "SELECT local_relpath, repos_path FROM nodes " \ "WHERE wc_id = ?1 " \ " AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \ @@ -2124,9 +2131,9 @@ " AND (inherited_props not null) " \ "" -#define STMT_SELECT_IPROPS_CHILDREN 203 -#define STMT_203_INFO {"STMT_SELECT_IPROPS_CHILDREN", NULL} -#define STMT_203 \ +#define STMT_SELECT_IPROPS_CHILDREN 204 +#define STMT_204_INFO {"STMT_SELECT_IPROPS_CHILDREN", NULL} +#define STMT_204 \ "SELECT local_relpath, repos_path FROM nodes " \ "WHERE wc_id = ?1 " \ " AND parent_relpath = ?2 " \ @@ -2134,9 +2141,9 @@ " AND (inherited_props not null) " \ "" -#define STMT_CREATE_SCHEMA 204 -#define STMT_204_INFO {"STMT_CREATE_SCHEMA", NULL} -#define STMT_204 \ +#define STMT_CREATE_SCHEMA 205 +#define STMT_205_INFO {"STMT_CREATE_SCHEMA", NULL} +#define STMT_205 \ "CREATE TABLE REPOSITORY ( " \ " id INTEGER PRIMARY KEY AUTOINCREMENT, " \ " root TEXT UNIQUE NOT NULL, " \ @@ -2201,9 +2208,9 @@ "; " \ "" -#define STMT_CREATE_NODES 205 -#define STMT_205_INFO {"STMT_CREATE_NODES", NULL} -#define STMT_205 \ +#define STMT_CREATE_NODES 206 +#define STMT_206_INFO {"STMT_CREATE_NODES", NULL} +#define STMT_206 \ "CREATE TABLE NODES ( " \ " wc_id INTEGER NOT NULL REFERENCES WCROOT (id), " \ " local_relpath TEXT NOT NULL, " \ @@ -2243,9 +2250,9 @@ " WHERE op_depth = 0; " \ "" -#define STMT_CREATE_NODES_TRIGGERS 206 -#define STMT_206_INFO {"STMT_CREATE_NODES_TRIGGERS", NULL} -#define STMT_206 \ +#define STMT_CREATE_NODES_TRIGGERS 207 +#define STMT_207_INFO {"STMT_CREATE_NODES_TRIGGERS", NULL} +#define STMT_207 \ "CREATE TRIGGER nodes_insert_trigger " \ "AFTER INSERT ON nodes " \ "WHEN NEW.checksum IS NOT NULL " \ @@ -2271,9 +2278,9 @@ "END; " \ "" -#define STMT_CREATE_EXTERNALS 207 -#define STMT_207_INFO {"STMT_CREATE_EXTERNALS", NULL} -#define STMT_207 \ +#define STMT_CREATE_EXTERNALS 208 +#define STMT_208_INFO {"STMT_CREATE_EXTERNALS", NULL} +#define STMT_208 \ "CREATE TABLE EXTERNALS ( " \ " wc_id INTEGER NOT NULL REFERENCES WCROOT (id), " \ " local_relpath TEXT NOT NULL, " \ @@ -2292,9 +2299,9 @@ " local_relpath); " \ "" -#define STMT_UPGRADE_TO_20 208 -#define STMT_208_INFO {"STMT_UPGRADE_TO_20", NULL} -#define STMT_208 \ +#define STMT_UPGRADE_TO_20 209 +#define STMT_209_INFO {"STMT_UPGRADE_TO_20", NULL} +#define STMT_209 \ "UPDATE BASE_NODE SET checksum = (SELECT checksum FROM pristine " \ " WHERE md5_checksum = BASE_NODE.checksum) " \ "WHERE EXISTS (SELECT 1 FROM pristine WHERE md5_checksum = BASE_NODE.checksum); " \ @@ -2335,59 +2342,59 @@ "PRAGMA user_version = 20; " \ "" -#define STMT_UPGRADE_TO_21 209 -#define STMT_209_INFO {"STMT_UPGRADE_TO_21", NULL} -#define STMT_209 \ +#define STMT_UPGRADE_TO_21 210 +#define STMT_210_INFO {"STMT_UPGRADE_TO_21", NULL} +#define STMT_210 \ "PRAGMA user_version = 21; " \ "" -#define STMT_UPGRADE_21_SELECT_OLD_TREE_CONFLICT 210 -#define STMT_210_INFO {"STMT_UPGRADE_21_SELECT_OLD_TREE_CONFLICT", NULL} -#define STMT_210 \ +#define STMT_UPGRADE_21_SELECT_OLD_TREE_CONFLICT 211 +#define STMT_211_INFO {"STMT_UPGRADE_21_SELECT_OLD_TREE_CONFLICT", NULL} +#define STMT_211 \ "SELECT wc_id, local_relpath, tree_conflict_data " \ "FROM actual_node " \ "WHERE tree_conflict_data IS NOT NULL " \ "" -#define STMT_UPGRADE_21_ERASE_OLD_CONFLICTS 211 -#define STMT_211_INFO {"STMT_UPGRADE_21_ERASE_OLD_CONFLICTS", NULL} -#define STMT_211 \ +#define STMT_UPGRADE_21_ERASE_OLD_CONFLICTS 212 +#define STMT_212_INFO {"STMT_UPGRADE_21_ERASE_OLD_CONFLICTS", NULL} +#define STMT_212 \ "UPDATE actual_node SET tree_conflict_data = NULL " \ "" -#define STMT_UPGRADE_TO_22 212 -#define STMT_212_INFO {"STMT_UPGRADE_TO_22", NULL} -#define STMT_212 \ +#define STMT_UPGRADE_TO_22 213 +#define STMT_213_INFO {"STMT_UPGRADE_TO_22", NULL} +#define STMT_213 \ "UPDATE actual_node SET tree_conflict_data = conflict_data; " \ "UPDATE actual_node SET conflict_data = NULL; " \ "PRAGMA user_version = 22; " \ "" -#define STMT_UPGRADE_TO_23 213 -#define STMT_213_INFO {"STMT_UPGRADE_TO_23", NULL} -#define STMT_213 \ +#define STMT_UPGRADE_TO_23 214 +#define STMT_214_INFO {"STMT_UPGRADE_TO_23", NULL} +#define STMT_214 \ "PRAGMA user_version = 23; " \ "" -#define STMT_UPGRADE_23_HAS_WORKING_NODES 214 -#define STMT_214_INFO {"STMT_UPGRADE_23_HAS_WORKING_NODES", NULL} -#define STMT_214 \ +#define STMT_UPGRADE_23_HAS_WORKING_NODES 215 +#define STMT_215_INFO {"STMT_UPGRADE_23_HAS_WORKING_NODES", NULL} +#define STMT_215 \ "SELECT 1 FROM nodes WHERE op_depth > 0 " \ "LIMIT 1 " \ "" -#define STMT_UPGRADE_TO_24 215 -#define STMT_215_INFO {"STMT_UPGRADE_TO_24", NULL} -#define STMT_215 \ +#define STMT_UPGRADE_TO_24 216 +#define STMT_216_INFO {"STMT_UPGRADE_TO_24", NULL} +#define STMT_216 \ "UPDATE pristine SET refcount = " \ " (SELECT COUNT(*) FROM nodes " \ " WHERE checksum = pristine.checksum ); " \ "PRAGMA user_version = 24; " \ "" -#define STMT_UPGRADE_TO_25 216 -#define STMT_216_INFO {"STMT_UPGRADE_TO_25", NULL} -#define STMT_216 \ +#define STMT_UPGRADE_TO_25 217 +#define STMT_217_INFO {"STMT_UPGRADE_TO_25", NULL} +#define STMT_217 \ "DROP VIEW IF EXISTS NODES_CURRENT; " \ "CREATE VIEW NODES_CURRENT AS " \ " SELECT * FROM nodes " \ @@ -2399,9 +2406,9 @@ "PRAGMA user_version = 25; " \ "" -#define STMT_UPGRADE_TO_26 217 -#define STMT_217_INFO {"STMT_UPGRADE_TO_26", NULL} -#define STMT_217 \ +#define STMT_UPGRADE_TO_26 218 +#define STMT_218_INFO {"STMT_UPGRADE_TO_26", NULL} +#define STMT_218 \ "DROP VIEW IF EXISTS NODES_BASE; " \ "CREATE VIEW NODES_BASE AS " \ " SELECT * FROM nodes " \ @@ -2409,15 +2416,15 @@ "PRAGMA user_version = 26; " \ "" -#define STMT_UPGRADE_TO_27 218 -#define STMT_218_INFO {"STMT_UPGRADE_TO_27", NULL} -#define STMT_218 \ +#define STMT_UPGRADE_TO_27 219 +#define STMT_219_INFO {"STMT_UPGRADE_TO_27", NULL} +#define STMT_219 \ "PRAGMA user_version = 27; " \ "" -#define STMT_UPGRADE_27_HAS_ACTUAL_NODES_CONFLICTS 219 -#define STMT_219_INFO {"STMT_UPGRADE_27_HAS_ACTUAL_NODES_CONFLICTS", NULL} -#define STMT_219 \ +#define STMT_UPGRADE_27_HAS_ACTUAL_NODES_CONFLICTS 220 +#define STMT_220_INFO {"STMT_UPGRADE_27_HAS_ACTUAL_NODES_CONFLICTS", NULL} +#define STMT_220 \ "SELECT 1 FROM actual_node " \ "WHERE NOT ((prop_reject IS NULL) AND (conflict_old IS NULL) " \ " AND (conflict_new IS NULL) AND (conflict_working IS NULL) " \ @@ -2425,18 +2432,18 @@ "LIMIT 1 " \ "" -#define STMT_UPGRADE_TO_28 220 -#define STMT_220_INFO {"STMT_UPGRADE_TO_28", NULL} -#define STMT_220 \ +#define STMT_UPGRADE_TO_28 221 +#define STMT_221_INFO {"STMT_UPGRADE_TO_28", NULL} +#define STMT_221 \ "UPDATE NODES SET checksum = (SELECT checksum FROM pristine " \ " WHERE md5_checksum = nodes.checksum) " \ "WHERE EXISTS (SELECT 1 FROM pristine WHERE md5_checksum = nodes.checksum); " \ "PRAGMA user_version = 28; " \ "" -#define STMT_UPGRADE_TO_29 221 -#define STMT_221_INFO {"STMT_UPGRADE_TO_29", NULL} -#define STMT_221 \ +#define STMT_UPGRADE_TO_29 222 +#define STMT_222_INFO {"STMT_UPGRADE_TO_29", NULL} +#define STMT_222 \ "DROP TRIGGER IF EXISTS nodes_update_checksum_trigger; " \ "DROP TRIGGER IF EXISTS nodes_insert_trigger; " \ "DROP TRIGGER IF EXISTS nodes_delete_trigger; " \ @@ -2466,9 +2473,9 @@ "PRAGMA user_version = 29; " \ "" -#define STMT_UPGRADE_TO_30 222 -#define STMT_222_INFO {"STMT_UPGRADE_TO_30", NULL} -#define STMT_222 \ +#define STMT_UPGRADE_TO_30 223 +#define STMT_223_INFO {"STMT_UPGRADE_TO_30", NULL} +#define STMT_223 \ "CREATE UNIQUE INDEX IF NOT EXISTS I_NODES_MOVED " \ "ON NODES (wc_id, moved_to, op_depth); " \ "CREATE INDEX IF NOT EXISTS I_PRISTINE_MD5 ON PRISTINE (md5_checksum); " \ @@ -2476,9 +2483,9 @@ "UPDATE nodes SET file_external=1 WHERE file_external IS NOT NULL; " \ "" -#define STMT_UPGRADE_30_SELECT_CONFLICT_SEPARATE 223 -#define STMT_223_INFO {"STMT_UPGRADE_30_SELECT_CONFLICT_SEPARATE", NULL} -#define STMT_223 \ +#define STMT_UPGRADE_30_SELECT_CONFLICT_SEPARATE 224 +#define STMT_224_INFO {"STMT_UPGRADE_30_SELECT_CONFLICT_SEPARATE", NULL} +#define STMT_224 \ "SELECT wc_id, local_relpath, " \ " conflict_old, conflict_working, conflict_new, prop_reject, tree_conflict_data " \ "FROM actual_node " \ @@ -2490,24 +2497,24 @@ "ORDER by wc_id, local_relpath " \ "" -#define STMT_UPGRADE_30_SET_CONFLICT 224 -#define STMT_224_INFO {"STMT_UPGRADE_30_SET_CONFLICT", NULL} -#define STMT_224 \ +#define STMT_UPGRADE_30_SET_CONFLICT 225 +#define STMT_225_INFO {"STMT_UPGRADE_30_SET_CONFLICT", NULL} +#define STMT_225 \ "UPDATE actual_node SET conflict_data = ?3, conflict_old = NULL, " \ " conflict_working = NULL, conflict_new = NULL, prop_reject = NULL, " \ " tree_conflict_data = NULL " \ "WHERE wc_id = ?1 and local_relpath = ?2 " \ "" -#define STMT_UPGRADE_TO_31_ALTER_TABLE 225 -#define STMT_225_INFO {"STMT_UPGRADE_TO_31_ALTER_TABLE", NULL} -#define STMT_225 \ +#define STMT_UPGRADE_TO_31_ALTER_TABLE 226 +#define STMT_226_INFO {"STMT_UPGRADE_TO_31_ALTER_TABLE", NULL} +#define STMT_226 \ "ALTER TABLE NODES ADD COLUMN inherited_props BLOB; " \ "" -#define STMT_UPGRADE_TO_31_FINALIZE 226 -#define STMT_226_INFO {"STMT_UPGRADE_TO_31_FINALIZE", NULL} -#define STMT_226 \ +#define STMT_UPGRADE_TO_31_FINALIZE 227 +#define STMT_227_INFO {"STMT_UPGRADE_TO_31_FINALIZE", NULL} +#define STMT_227 \ "DROP INDEX IF EXISTS I_ACTUAL_CHANGELIST; " \ "DROP INDEX IF EXISTS I_EXTERNALS_PARENT; " \ "DROP INDEX I_NODES_PARENT; " \ @@ -2519,9 +2526,9 @@ "PRAGMA user_version = 31; " \ "" -#define STMT_UPGRADE_31_SELECT_WCROOT_NODES 227 -#define STMT_227_INFO {"STMT_UPGRADE_31_SELECT_WCROOT_NODES", NULL} -#define STMT_227 \ +#define STMT_UPGRADE_31_SELECT_WCROOT_NODES 228 +#define STMT_228_INFO {"STMT_UPGRADE_31_SELECT_WCROOT_NODES", NULL} +#define STMT_228 \ "SELECT l.wc_id, l.local_relpath FROM nodes as l " \ "LEFT OUTER JOIN nodes as r " \ "ON l.wc_id = r.wc_id " \ @@ -2533,9 +2540,9 @@ " OR (l.repos_path IS NOT (CASE WHEN (r.local_relpath) = '' THEN (CASE WHEN (r.repos_path) = '' THEN (l.local_relpath) WHEN (l.local_relpath) = '' THEN (r.repos_path) ELSE (r.repos_path) || '/' || (l.local_relpath) END) WHEN (r.repos_path) = '' THEN (CASE WHEN (r.local_relpath) = '' THEN (l.local_relpath) WHEN SUBSTR((l.local_relpath), 1, LENGTH(r.local_relpath)) = (r.local_relpath) THEN CASE WHEN LENGTH(r.local_relpath) = LENGTH(l.local_relpath) THEN '' WHEN SUBSTR((l.local_relpath), LENGTH(r.local_relpath)+1, 1) = '/' THEN SUBSTR((l.local_relpath), LENGTH(r.local_relpath)+2) END END) WHEN SUBSTR((l.local_relpath), 1, LENGTH(r.local_relpath)) = (r.local_relpath) THEN CASE WHEN LENGTH(r.local_relpath) = LENGTH(l.local_relpath) THEN (r.repos_path) WHEN SUBSTR((l.local_relpath), LENGTH(r.local_relpath)+1, 1) = '/' THEN (r.repos_path) || SUBSTR((l.local_relpath), LENGTH(r.local_relpath)+1) END END))) " \ "" -#define STMT_UPGRADE_TO_32 228 -#define STMT_228_INFO {"STMT_UPGRADE_TO_32", NULL} -#define STMT_228 \ +#define STMT_UPGRADE_TO_32 229 +#define STMT_229_INFO {"STMT_UPGRADE_TO_32", NULL} +#define STMT_229 \ "DROP INDEX IF EXISTS I_ACTUAL_CHANGELIST; " \ "DROP INDEX IF EXISTS I_EXTERNALS_PARENT; " \ "CREATE INDEX I_EXTERNALS_PARENT ON EXTERNALS (wc_id, parent_relpath); " \ @@ -2588,9 +2595,9 @@ "DROP TABLE ACTUAL_NODE_BACKUP; " \ "" -#define STMT_VERIFICATION_TRIGGERS 229 -#define STMT_229_INFO {"STMT_VERIFICATION_TRIGGERS", NULL} -#define STMT_229 \ +#define STMT_VERIFICATION_TRIGGERS 230 +#define STMT_230_INFO {"STMT_VERIFICATION_TRIGGERS", NULL} +#define STMT_230 \ "CREATE TEMPORARY TRIGGER no_repository_updates BEFORE UPDATE ON repository " \ "BEGIN " \ " SELECT RAISE(FAIL, 'Updates to REPOSITORY are not allowed.'); " \ @@ -2861,6 +2868,7 @@ STMT_227, \ STMT_228, \ STMT_229, \ + STMT_230, \ NULL \ } @@ -3096,5 +3104,6 @@ STMT_227_INFO, \ STMT_228_INFO, \ STMT_229_INFO, \ + STMT_230_INFO, \ {NULL, NULL} \ } diff --git a/subversion/libsvn_wc/wc-queries.sql b/subversion/libsvn_wc/wc-queries.sql index 0ffe6f07d4e4..d5f7e82557f0 100644 --- a/subversion/libsvn_wc/wc-queries.sql +++ b/subversion/libsvn_wc/wc-queries.sql @@ -472,6 +472,10 @@ WHERE wc_id = ?1 DELETE FROM lock WHERE repos_id = ?1 AND repos_relpath = ?2 +-- STMT_DELETE_LOCK_RECURSIVELY +DELETE FROM lock +WHERE repos_id = ?1 AND (repos_relpath = ?2 OR IS_STRICT_DESCENDANT_OF(repos_relpath, ?2)) + -- STMT_CLEAR_BASE_NODE_RECURSIVE_DAV_CACHE UPDATE nodes SET dav_cache = NULL WHERE dav_cache IS NOT NULL AND wc_id = ?1 AND op_depth = 0 diff --git a/subversion/libsvn_wc/wc_db.c b/subversion/libsvn_wc/wc_db.c index 7e1e8777eea7..e41165765d42 100644 --- a/subversion/libsvn_wc/wc_db.c +++ b/subversion/libsvn_wc/wc_db.c @@ -2086,6 +2086,7 @@ db_base_remove(svn_wc__db_wcroot_t *wcroot, svn_wc__db_t *db, /* For checking conflicts */ svn_boolean_t keep_as_working, svn_boolean_t queue_deletes, + svn_boolean_t remove_locks, svn_revnum_t not_present_revision, svn_skel_t *conflict, svn_skel_t *work_items, @@ -2106,6 +2107,16 @@ db_base_remove(svn_wc__db_wcroot_t *wcroot, wcroot, local_relpath, scratch_pool, scratch_pool)); + if (remove_locks) + { + svn_sqlite__stmt_t *lock_stmt; + + SVN_ERR(svn_sqlite__get_statement(&lock_stmt, wcroot->sdb, + STMT_DELETE_LOCK_RECURSIVELY)); + SVN_ERR(svn_sqlite__bindf(lock_stmt, "is", repos_id, repos_relpath)); + SVN_ERR(svn_sqlite__step_done(lock_stmt)); + } + if (status == svn_wc__db_status_normal && keep_as_working) { @@ -2333,6 +2344,7 @@ svn_wc__db_base_remove(svn_wc__db_t *db, const char *local_abspath, svn_boolean_t keep_as_working, svn_boolean_t queue_deletes, + svn_boolean_t remove_locks, svn_revnum_t not_present_revision, svn_skel_t *conflict, svn_skel_t *work_items, @@ -2349,7 +2361,7 @@ svn_wc__db_base_remove(svn_wc__db_t *db, SVN_WC__DB_WITH_TXN(db_base_remove(wcroot, local_relpath, db, keep_as_working, queue_deletes, - not_present_revision, + remove_locks, not_present_revision, conflict, work_items, scratch_pool), wcroot); @@ -10814,7 +10826,7 @@ commit_node(svn_wc__db_wcroot_t *wcroot, svn_sqlite__stmt_t *lock_stmt; SVN_ERR(svn_sqlite__get_statement(&lock_stmt, wcroot->sdb, - STMT_DELETE_LOCK)); + STMT_DELETE_LOCK_RECURSIVELY)); SVN_ERR(svn_sqlite__bindf(lock_stmt, "is", repos_id, repos_relpath)); SVN_ERR(svn_sqlite__step_done(lock_stmt)); } @@ -11058,7 +11070,7 @@ bump_node_revision(svn_wc__db_wcroot_t *wcroot, revision != new_rev))) { return svn_error_trace(db_base_remove(wcroot, local_relpath, - db, FALSE, FALSE, + db, FALSE, FALSE, FALSE, SVN_INVALID_REVNUM, NULL, NULL, scratch_pool)); } @@ -14978,14 +14990,18 @@ svn_wc__db_verify(svn_wc__db_t *db, svn_error_t * svn_wc__db_bump_format(int *result_format, - const char *wcroot_abspath, + svn_boolean_t *bumped_format, svn_wc__db_t *db, + const char *wcroot_abspath, apr_pool_t *scratch_pool) { svn_sqlite__db_t *sdb; svn_error_t *err; int format; + if (bumped_format) + *bumped_format = FALSE; + /* Do not scan upwards for a working copy root here to prevent accidental * upgrades of any working copies the WCROOT might be nested in. * Just try to open a DB at the specified path instead. */ @@ -15020,7 +15036,10 @@ svn_wc__db_bump_format(int *result_format, SVN_ERR(svn_sqlite__read_schema_version(&format, sdb, scratch_pool)); err = svn_wc__upgrade_sdb(result_format, wcroot_abspath, - sdb, format, scratch_pool); + sdb, format, scratch_pool); + + if (err == SVN_NO_ERROR && bumped_format) + *bumped_format = (*result_format > format); /* Make sure we return a different error than expected for upgrades from entries */ diff --git a/subversion/libsvn_wc/wc_db.h b/subversion/libsvn_wc/wc_db.h index 154262d7d21a..88e455fb51df 100644 --- a/subversion/libsvn_wc/wc_db.h +++ b/subversion/libsvn_wc/wc_db.h @@ -702,6 +702,9 @@ svn_wc__db_base_add_not_present_node(svn_wc__db_t *db, (With KEEP_AS_WORKING TRUE, this is a no-op, as everything is automatically shadowed by the created copy) + If REMOVE_LOCKS is TRUE, all locks of this node and any subnodes + are also removed. This is to be done during commit of deleted nodes. + If NOT_PRESENT_REVISION specifies a valid revision a not-present node is installed in BASE node with kind NOT_PRESENT_KIND after deleting. @@ -715,6 +718,7 @@ svn_wc__db_base_remove(svn_wc__db_t *db, const char *local_abspath, svn_boolean_t keep_as_working, svn_boolean_t queue_deletes, + svn_boolean_t remove_locks, svn_revnum_t not_present_revision, svn_skel_t *conflict, svn_skel_t *work_items, @@ -2909,11 +2913,15 @@ svn_wc__db_upgrade_get_repos_id(apr_int64_t *repos_id, * Upgrading subdirectories of a working copy is not supported. * If WCROOT_ABSPATH is not a working copy root SVN_ERR_WC_INVALID_OP_ON_CWD * is returned. + * + * If BUMPED_FORMAT is not NULL, set *BUMPED_FORMAT to TRUE if the format + * was bumped or to FALSE if the wc was already at the resulting format. */ svn_error_t * svn_wc__db_bump_format(int *result_format, - const char *wcroot_abspath, + svn_boolean_t *bumped_format, svn_wc__db_t *db, + const char *wcroot_abspath, apr_pool_t *scratch_pool); /* @} */ diff --git a/subversion/libsvn_wc/wc_db_update_move.c b/subversion/libsvn_wc/wc_db_update_move.c index fa5afe4f70aa..a8cce76c0c0d 100644 --- a/subversion/libsvn_wc/wc_db_update_move.c +++ b/subversion/libsvn_wc/wc_db_update_move.c @@ -1988,8 +1988,12 @@ svn_wc__db_update_moved_away_conflict_victim(svn_wc__db_t *db, /* Send all queued up notifications. */ SVN_ERR(svn_wc__db_update_move_list_notify(wcroot, - old_version->peg_rev, - new_version->peg_rev, + (old_version + ? old_version->peg_rev + : SVN_INVALID_REVNUM), + (new_version + ? new_version->peg_rev + : SVN_INVALID_REVNUM), notify_func, notify_baton, scratch_pool)); if (notify_func) @@ -2395,7 +2399,9 @@ svn_wc__db_resolve_delete_raise_moved_away(svn_wc__db_t *db, wcroot); SVN_ERR(svn_wc__db_update_move_list_notify(wcroot, - old_version->peg_rev, + (old_version + ? old_version->peg_rev + : SVN_INVALID_REVNUM), (new_version ? new_version->peg_rev : SVN_INVALID_REVNUM), diff --git a/subversion/libsvn_wc/wc_db_wcroot.c b/subversion/libsvn_wc/wc_db_wcroot.c index 1091f1b5cc03..21173e50cfa2 100644 --- a/subversion/libsvn_wc/wc_db_wcroot.c +++ b/subversion/libsvn_wc/wc_db_wcroot.c @@ -434,6 +434,8 @@ svn_wc__db_wcroot_parse_local_abspath(svn_wc__db_wcroot_t **wcroot, svn_boolean_t always_check = FALSE; int wc_format = 0; const char *adm_relpath; + /* Non-NULL if WCROOT is found through a symlink: */ + const char *symlink_wcroot_abspath = NULL; /* ### we need more logic for finding the database (if it is located ### outside of the wcroot) and then managing all of that within DB. @@ -611,6 +613,7 @@ svn_wc__db_wcroot_parse_local_abspath(svn_wc__db_wcroot_t **wcroot, if (found_wcroot) break; + symlink_wcroot_abspath = local_abspath; SVN_ERR(read_link_target(&local_abspath, local_abspath, scratch_pool)); try_symlink_as_dir: @@ -632,6 +635,7 @@ try_symlink_as_dir: local_abspath = svn_dirent_dirname(local_abspath, scratch_pool); moved_upwards = TRUE; + symlink_wcroot_abspath = NULL; /* Is the parent directory recorded in our hash? */ found_wcroot = svn_hash_gets(db->dir_data, local_abspath); @@ -669,7 +673,10 @@ try_symlink_as_dir: (ie. where we found it). */ err = svn_wc__db_pdh_create_wcroot(wcroot, - apr_pstrdup(db->state_pool, local_abspath), + apr_pstrdup(db->state_pool, + symlink_wcroot_abspath + ? symlink_wcroot_abspath + : local_abspath), sdb, wc_id, FORMAT_FROM_SDB, db->verify_format, db->enforce_empty_wq, db->state_pool, scratch_pool); @@ -737,7 +744,10 @@ try_symlink_as_dir: } SVN_ERR(svn_wc__db_pdh_create_wcroot(wcroot, - apr_pstrdup(db->state_pool, local_abspath), + apr_pstrdup(db->state_pool, + symlink_wcroot_abspath + ? symlink_wcroot_abspath + : local_abspath), NULL, UNKNOWN_WC_ID, wc_format, db->verify_format, db->enforce_empty_wq, db->state_pool, scratch_pool)); @@ -747,6 +757,13 @@ try_symlink_as_dir: { const char *dir_relpath; + if (symlink_wcroot_abspath) + { + /* The WCROOT was found through a symlink pointing at the root of + * the WC. Cache the WCROOT under the symlink's path. */ + local_dir_abspath = symlink_wcroot_abspath; + } + /* The subdirectory's relpath is easily computed relative to the wcroot that we just found. */ dir_relpath = compute_relpath(*wcroot, local_dir_abspath, NULL); @@ -809,6 +826,7 @@ try_symlink_as_dir: scratch_pool)); if (resolved_kind == svn_node_dir) { + symlink_wcroot_abspath = original_abspath; SVN_ERR(read_link_target(&local_abspath, original_abspath, scratch_pool)); /* This handle was opened in this function but is not going diff --git a/subversion/libsvn_wc/workqueue.c b/subversion/libsvn_wc/workqueue.c index ddbac150dcf9..b034d7d124ce 100644 --- a/subversion/libsvn_wc/workqueue.c +++ b/subversion/libsvn_wc/workqueue.c @@ -143,6 +143,7 @@ run_base_remove(work_item_baton_t *wqb, SVN_ERR(svn_wc__db_base_remove(db, local_abspath, FALSE /* keep_as_working */, TRUE /* queue_deletes */, + FALSE /* remove_locks */, not_present_rev, NULL, NULL, scratch_pool)); |