/* This file is automatically generated from wc-queries.sql and token-map.h.
* Do not edit this file -- edit the source and rerun gen-make.py */
#define STMT_SELECT_NODE_INFO 0
#define STMT_0_INFO {"STMT_SELECT_NODE_INFO", NULL}
#define STMT_0 \
"SELECT op_depth, repos_id, repos_path, presence, kind, revision, checksum, " \
" translated_size, changed_revision, changed_date, changed_author, depth, " \
" symlink_target, last_mod_time, properties, moved_here, inherited_props, " \
" moved_to " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
"ORDER BY op_depth DESC " \
""
#define STMT_SELECT_NODE_INFO_WITH_LOCK 1
#define STMT_1_INFO {"STMT_SELECT_NODE_INFO_WITH_LOCK", NULL}
#define STMT_1 \
"SELECT op_depth, nodes.repos_id, nodes.repos_path, presence, kind, revision, " \
" checksum, translated_size, changed_revision, changed_date, changed_author, " \
" depth, symlink_target, last_mod_time, properties, moved_here, " \
" inherited_props, " \
" lock_token, lock_owner, lock_comment, lock_date " \
"FROM nodes " \
"LEFT OUTER JOIN lock ON nodes.repos_id = lock.repos_id " \
" AND nodes.repos_path = lock.repos_relpath AND nodes.op_depth=0 " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
"ORDER BY op_depth DESC " \
""
#define STMT_SELECT_BASE_NODE 2
#define STMT_2_INFO {"STMT_SELECT_BASE_NODE", NULL}
#define STMT_2 \
"SELECT repos_id, repos_path, presence, kind, revision, checksum, " \
" translated_size, changed_revision, changed_date, changed_author, depth, " \
" symlink_target, last_mod_time, properties, file_external " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \
""
#define STMT_SELECT_BASE_NODE_WITH_LOCK 3
#define STMT_3_INFO {"STMT_SELECT_BASE_NODE_WITH_LOCK", NULL}
#define STMT_3 \
"SELECT nodes.repos_id, nodes.repos_path, presence, kind, revision, " \
" checksum, translated_size, changed_revision, changed_date, changed_author, " \
" depth, symlink_target, last_mod_time, properties, file_external, " \
" lock_token, lock_owner, lock_comment, lock_date " \
"FROM nodes " \
"LEFT OUTER JOIN lock ON nodes.repos_id = lock.repos_id " \
" AND nodes.repos_path = lock.repos_relpath " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \
""
#define STMT_SELECT_BASE_CHILDREN_INFO 4
#define STMT_4_INFO {"STMT_SELECT_BASE_CHILDREN_INFO", NULL}
#define STMT_4 \
"SELECT local_relpath, nodes.repos_id, nodes.repos_path, presence, kind, " \
" revision, depth, file_external " \
"FROM nodes " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 AND op_depth = 0 " \
""
#define STMT_SELECT_BASE_CHILDREN_INFO_LOCK 5
#define STMT_5_INFO {"STMT_SELECT_BASE_CHILDREN_INFO_LOCK", NULL}
#define STMT_5 \
"SELECT local_relpath, nodes.repos_id, nodes.repos_path, presence, kind, " \
" revision, depth, file_external, " \
" lock_token, lock_owner, lock_comment, lock_date " \
"FROM nodes " \
"LEFT OUTER JOIN lock ON nodes.repos_id = lock.repos_id " \
" AND nodes.repos_path = lock.repos_relpath " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 AND op_depth = 0 " \
""
#define STMT_SELECT_WORKING_NODE 6
#define STMT_6_INFO {"STMT_SELECT_WORKING_NODE", NULL}
#define STMT_6 \
"SELECT op_depth, presence, kind, checksum, translated_size, " \
" changed_revision, changed_date, changed_author, depth, symlink_target, " \
" repos_id, repos_path, revision, " \
" moved_here, moved_to, last_mod_time, properties " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth > 0 " \
"ORDER BY op_depth DESC " \
"LIMIT 1 " \
""
#define STMT_SELECT_DEPTH_NODE 7
#define STMT_7_INFO {"STMT_SELECT_DEPTH_NODE", NULL}
#define STMT_7 \
"SELECT repos_id, repos_path, presence, kind, revision, checksum, " \
" translated_size, changed_revision, changed_date, changed_author, depth, " \
" symlink_target, properties, moved_to, moved_here " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \
""
#define STMT_SELECT_LOWEST_WORKING_NODE 8
#define STMT_8_INFO {"STMT_SELECT_LOWEST_WORKING_NODE", NULL}
#define STMT_8 \
"SELECT op_depth, presence, kind, moved_to " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth > ?3 " \
"ORDER BY op_depth " \
"LIMIT 1 " \
""
#define STMT_SELECT_HIGHEST_WORKING_NODE 9
#define STMT_9_INFO {"STMT_SELECT_HIGHEST_WORKING_NODE", NULL}
#define STMT_9 \
"SELECT op_depth " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth < ?3 " \
"ORDER BY op_depth DESC " \
"LIMIT 1 " \
""
#define STMT_SELECT_PRESENT_HIGHEST_WORKING_NODES_BY_BASENAME_AND_KIND 10
#define STMT_10_INFO {"STMT_SELECT_PRESENT_HIGHEST_WORKING_NODES_BY_BASENAME_AND_KIND", NULL}
#define STMT_10 \
"SELECT presence, local_relpath " \
"FROM nodes n " \
"WHERE wc_id = ?1 AND local_relpath = (CASE WHEN (parent_relpath) = '' THEN (?2) WHEN (?2) = '' THEN (parent_relpath) ELSE (parent_relpath) || '/' || (?2) END) " \
" AND kind = ?3 " \
" AND presence in ('normal', 'incomplete') " \
" AND op_depth = (SELECT MAX(op_depth) " \
" FROM NODES w " \
" WHERE w.wc_id = ?1 " \
" AND w.local_relpath = n.local_relpath) " \
""
#define STMT_SELECT_ACTUAL_NODE 11
#define STMT_11_INFO {"STMT_SELECT_ACTUAL_NODE", NULL}
#define STMT_11 \
"SELECT changelist, properties, conflict_data " \
"FROM actual_node " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_SELECT_NODE_CHILDREN_INFO 12
#define STMT_12_INFO {"STMT_SELECT_NODE_CHILDREN_INFO", NULL}
#define STMT_12 \
"SELECT op_depth, nodes.repos_id, nodes.repos_path, presence, kind, revision, " \
" checksum, translated_size, changed_revision, changed_date, changed_author, " \
" depth, symlink_target, last_mod_time, properties, lock_token, lock_owner, " \
" lock_comment, lock_date, local_relpath, moved_here, moved_to, file_external " \
"FROM nodes " \
"LEFT OUTER JOIN lock ON nodes.repos_id = lock.repos_id " \
" AND nodes.repos_path = lock.repos_relpath AND nodes.op_depth = 0 " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 " \
"ORDER BY local_relpath DESC, op_depth DESC " \
""
#define STMT_SELECT_BASE_NODE_CHILDREN_INFO 13
#define STMT_13_INFO {"STMT_SELECT_BASE_NODE_CHILDREN_INFO", NULL}
#define STMT_13 \
"SELECT op_depth, nodes.repos_id, nodes.repos_path, presence, kind, revision, " \
" checksum, translated_size, changed_revision, changed_date, changed_author, " \
" depth, symlink_target, last_mod_time, properties, lock_token, lock_owner, " \
" lock_comment, lock_date, local_relpath, moved_here, moved_to, file_external " \
"FROM nodes " \
"LEFT OUTER JOIN lock ON nodes.repos_id = lock.repos_id " \
" AND nodes.repos_path = lock.repos_relpath " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 AND op_depth = 0 " \
"ORDER BY local_relpath DESC " \
""
#define STMT_SELECT_NODE_CHILDREN_WALKER_INFO 14
#define STMT_14_INFO {"STMT_SELECT_NODE_CHILDREN_WALKER_INFO", NULL}
#define STMT_14 \
"SELECT local_relpath, op_depth, presence, kind " \
"FROM nodes_current " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 " \
"ORDER BY local_relpath " \
""
#define STMT_SELECT_ACTUAL_CHILDREN_INFO 15
#define STMT_15_INFO {"STMT_SELECT_ACTUAL_CHILDREN_INFO", NULL}
#define STMT_15 \
"SELECT local_relpath, changelist, properties, conflict_data " \
"FROM actual_node " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 " \
""
#define STMT_SELECT_REPOSITORY_BY_ID 16
#define STMT_16_INFO {"STMT_SELECT_REPOSITORY_BY_ID", NULL}
#define STMT_16 \
"SELECT root, uuid FROM repository WHERE id = ?1 " \
""
#define STMT_SELECT_WCROOT_NULL 17
#define STMT_17_INFO {"STMT_SELECT_WCROOT_NULL", NULL}
#define STMT_17 \
"SELECT id FROM wcroot WHERE local_abspath IS NULL " \
""
#define STMT_SELECT_REPOSITORY 18
#define STMT_18_INFO {"STMT_SELECT_REPOSITORY", NULL}
#define STMT_18 \
"SELECT id FROM repository WHERE root = ?1 " \
""
#define STMT_INSERT_REPOSITORY 19
#define STMT_19_INFO {"STMT_INSERT_REPOSITORY", NULL}
#define STMT_19 \
"INSERT INTO repository (root, uuid) VALUES (?1, ?2) " \
""
#define STMT_INSERT_NODE 20
#define STMT_20_INFO {"STMT_INSERT_NODE", NULL}
#define STMT_20 \
"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, " \
" changed_author, checksum, properties, translated_size, last_mod_time, " \
" dav_cache, symlink_target, file_external, moved_to, moved_here, " \
" inherited_props) " \
"VALUES (?1, ?2, ?3, ?4, ?5, ?6, ?7, ?8, ?9, ?10, ?11, ?12, ?13, ?14, " \
" ?15, ?16, ?17, ?18, ?19, ?20, ?21, ?22, ?23) " \
""
#define STMT_SELECT_WORKING_PRESENT 21
#define STMT_21_INFO {"STMT_SELECT_WORKING_PRESENT", NULL}
#define STMT_21 \
"SELECT local_relpath, kind, checksum, translated_size, last_mod_time " \
"FROM nodes n " \
"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 presence in ('normal', 'incomplete') " \
" AND op_depth = (SELECT MAX(op_depth) " \
" FROM NODES w " \
" WHERE w.wc_id = ?1 " \
" AND w.local_relpath = n.local_relpath) " \
"ORDER BY local_relpath DESC " \
""
#define STMT_DELETE_NODE_RECURSIVE 22
#define STMT_22_INFO {"STMT_DELETE_NODE_RECURSIVE", NULL}
#define STMT_22 \
"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)) " \
""
#define STMT_DELETE_NODE 23
#define STMT_23_INFO {"STMT_DELETE_NODE", NULL}
#define STMT_23 \
"DELETE " \
"FROM NODES " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \
""
#define STMT_DELETE_ACTUAL_FOR_BASE_RECURSIVE 24
#define STMT_24_INFO {"STMT_DELETE_ACTUAL_FOR_BASE_RECURSIVE", NULL}
#define STMT_24 \
"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)) " \
" AND EXISTS(SELECT 1 FROM NODES b " \
" WHERE b.wc_id = ?1 " \
" AND b.local_relpath = actual_node.local_relpath " \
" AND op_depth = 0) " \
" AND NOT EXISTS(SELECT 1 FROM NODES w " \
" WHERE w.wc_id = ?1 " \
" AND w.local_relpath = actual_node.local_relpath " \
" AND op_depth > 0 " \
" AND presence in ('normal', 'incomplete', 'not-present')) " \
""
#define STMT_DELETE_WORKING_BASE_DELETE 25
#define STMT_25_INFO {"STMT_DELETE_WORKING_BASE_DELETE", NULL}
#define STMT_25 \
"DELETE FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
" AND presence = 'base-deleted' " \
" AND op_depth > ?3 " \
" AND op_depth = (SELECT MIN(op_depth) FROM nodes n " \
" WHERE n.wc_id = ?1 " \
" AND n.local_relpath = nodes.local_relpath " \
" AND op_depth > ?3) " \
""
#define STMT_DELETE_WORKING_BASE_DELETE_RECURSIVE 26
#define STMT_26_INFO {"STMT_DELETE_WORKING_BASE_DELETE_RECURSIVE", NULL}
#define STMT_26 \
"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)) " \
" AND presence = 'base-deleted' " \
" AND op_depth > ?3 " \
" AND op_depth = (SELECT MIN(op_depth) FROM nodes n " \
" WHERE n.wc_id = ?1 " \
" AND n.local_relpath = nodes.local_relpath " \
" AND op_depth > ?3) " \
""
#define STMT_DELETE_WORKING_RECURSIVE 27
#define STMT_27_INFO {"STMT_DELETE_WORKING_RECURSIVE", NULL}
#define STMT_27 \
"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)) " \
" AND op_depth > 0 " \
""
#define STMT_DELETE_BASE_RECURSIVE 28
#define STMT_28_INFO {"STMT_DELETE_BASE_RECURSIVE", NULL}
#define STMT_28 \
"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))) " \
" AND op_depth = 0 " \
""
#define STMT_DELETE_WORKING_OP_DEPTH 29
#define STMT_29_INFO {"STMT_DELETE_WORKING_OP_DEPTH", NULL}
#define STMT_29 \
"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))) " \
" AND op_depth = ?3 " \
""
#define STMT_SELECT_LAYER_FOR_REPLACE 30
#define STMT_30_INFO {"STMT_SELECT_LAYER_FOR_REPLACE", NULL}
#define STMT_30 \
"SELECT s.local_relpath, s.kind, " \
" (CASE WHEN (?2) = '' THEN (CASE WHEN (?4) = '' THEN (s.local_relpath) WHEN (s.local_relpath) = '' THEN (?4) ELSE (?4) || '/' || (s.local_relpath) END) WHEN (?4) = '' THEN (CASE WHEN (?2) = '' THEN (s.local_relpath) WHEN SUBSTR((s.local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(s.local_relpath) THEN '' WHEN SUBSTR((s.local_relpath), LENGTH(?2)+1, 1) = '/' THEN SUBSTR((s.local_relpath), LENGTH(?2)+2) END END) WHEN SUBSTR((s.local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(s.local_relpath) THEN (?4) WHEN SUBSTR((s.local_relpath), LENGTH(?2)+1, 1) = '/' THEN (?4) || SUBSTR((s.local_relpath), LENGTH(?2)+1) END END) drp, 'normal' " \
"FROM nodes s " \
"WHERE s.wc_id = ?1 AND s.local_relpath = ?2 AND s.op_depth = ?3 " \
"UNION ALL " \
"SELECT s.local_relpath, s.kind, " \
" (CASE WHEN (?2) = '' THEN (CASE WHEN (?4) = '' THEN (s.local_relpath) WHEN (s.local_relpath) = '' THEN (?4) ELSE (?4) || '/' || (s.local_relpath) END) WHEN (?4) = '' THEN (CASE WHEN (?2) = '' THEN (s.local_relpath) WHEN SUBSTR((s.local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(s.local_relpath) THEN '' WHEN SUBSTR((s.local_relpath), LENGTH(?2)+1, 1) = '/' THEN SUBSTR((s.local_relpath), LENGTH(?2)+2) END END) WHEN SUBSTR((s.local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(s.local_relpath) THEN (?4) WHEN SUBSTR((s.local_relpath), LENGTH(?2)+1, 1) = '/' THEN (?4) || SUBSTR((s.local_relpath), LENGTH(?2)+1) END END) drp, d.presence " \
"FROM nodes s " \
"LEFT OUTER JOIN nodes d ON d.wc_id= ?1 AND d.op_depth = ?5 " \
" AND d.local_relpath = drp " \
"WHERE s.wc_id = ?1 " \
" AND (((s.local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((s.local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \
" AND s.op_depth = ?3 " \
"ORDER BY s.local_relpath " \
""
#define STMT_SELECT_DESCENDANTS_OP_DEPTH_RV 31
#define STMT_31_INFO {"STMT_SELECT_DESCENDANTS_OP_DEPTH_RV", NULL}
#define STMT_31 \
"SELECT local_relpath, kind " \
"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)) " \
" AND op_depth = ?3 " \
" AND presence in ('normal', 'incomplete') " \
"ORDER BY local_relpath DESC " \
""
#define STMT_COPY_NODE_MOVE 32
#define STMT_32_INFO {"STMT_COPY_NODE_MOVE", NULL}
#define STMT_32 \
"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, " \
" changed_author, checksum, properties, translated_size, last_mod_time, " \
" symlink_target, moved_here, moved_to ) " \
"SELECT " \
" s.wc_id, ?4 , ?5 , ?6 , " \
" s.repos_id, " \
" s.repos_path, s.revision, s.presence, s.depth, s.kind, s.changed_revision, " \
" s.changed_date, s.changed_author, s.checksum, s.properties, " \
" CASE WHEN d.checksum=s.checksum THEN d.translated_size END, " \
" CASE WHEN d.checksum=s.checksum THEN d.last_mod_time END, " \
" s.symlink_target, 1, d.moved_to " \
"FROM nodes s " \
"LEFT JOIN nodes d ON d.wc_id=?1 AND d.local_relpath=?4 AND d.op_depth=?5 " \
"WHERE s.wc_id = ?1 AND s.local_relpath = ?2 AND s.op_depth = ?3 " \
""
#define STMT_SELECT_NO_LONGER_MOVED_RV 33
#define STMT_33_INFO {"STMT_SELECT_NO_LONGER_MOVED_RV", NULL}
#define STMT_33 \
"SELECT d.local_relpath, (CASE WHEN (?2) = '' THEN (CASE WHEN (?4) = '' THEN (d.local_relpath) WHEN (d.local_relpath) = '' THEN (?4) ELSE (?4) || '/' || (d.local_relpath) END) WHEN (?4) = '' THEN (CASE WHEN (?2) = '' THEN (d.local_relpath) WHEN SUBSTR((d.local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(d.local_relpath) THEN '' WHEN SUBSTR((d.local_relpath), LENGTH(?2)+1, 1) = '/' THEN SUBSTR((d.local_relpath), LENGTH(?2)+2) END END) WHEN SUBSTR((d.local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(d.local_relpath) THEN (?4) WHEN SUBSTR((d.local_relpath), LENGTH(?2)+1, 1) = '/' THEN (?4) || SUBSTR((d.local_relpath), LENGTH(?2)+1) END END) srp, " \
" b.presence, b.op_depth " \
"FROM nodes d " \
"LEFT OUTER JOIN nodes b ON b.wc_id = ?1 AND b.local_relpath = d.local_relpath " \
" AND b.op_depth = (SELECT MAX(x.op_depth) FROM nodes x " \
" WHERE x.wc_id = ?1 " \
" AND x.local_relpath = b.local_relpath " \
" AND x.op_depth < ?3) " \
"WHERE d.wc_id = ?1 " \
" AND (((d.local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((d.local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \
" AND d.op_depth = ?3 " \
" AND NOT EXISTS(SELECT * FROM nodes s " \
" WHERE s.wc_id = ?1 " \
" AND s.local_relpath = srp " \
" AND s.op_depth = ?5) " \
"ORDER BY d.local_relpath DESC " \
""
#define STMT_SELECT_OP_DEPTH_CHILDREN 34
#define STMT_34_INFO {"STMT_SELECT_OP_DEPTH_CHILDREN", NULL}
#define STMT_34 \
"SELECT local_relpath, kind FROM nodes " \
"WHERE wc_id = ?1 " \
" AND parent_relpath = ?2 " \
" AND op_depth = ?3 " \
" AND presence != 'base-deleted' " \
" AND file_external is NULL " \
"ORDER BY local_relpath " \
""
#define STMT_SELECT_OP_DEPTH_CHILDREN_EXISTS 35
#define STMT_35_INFO {"STMT_SELECT_OP_DEPTH_CHILDREN_EXISTS", NULL}
#define STMT_35 \
"SELECT local_relpath, kind FROM nodes " \
"WHERE wc_id = ?1 " \
" AND parent_relpath = ?2 " \
" AND op_depth = ?3 " \
" AND presence IN ('normal', 'incomplete') " \
"ORDER BY local_relpath " \
""
#define STMT_SELECT_GE_OP_DEPTH_CHILDREN 36
#define STMT_36_INFO {"STMT_SELECT_GE_OP_DEPTH_CHILDREN", NULL}
#define STMT_36 \
"SELECT 1 FROM nodes " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 " \
" AND (op_depth > ?3 OR (op_depth = ?3 " \
" AND presence IN ('normal', 'incomplete'))) " \
"UNION ALL " \
"SELECT 1 FROM ACTUAL_NODE a " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 " \
" AND NOT EXISTS (SELECT 1 FROM nodes n " \
" WHERE wc_id = ?1 AND n.local_relpath = a.local_relpath) " \
""
#define STMT_DELETE_SHADOWED_RECURSIVE 37
#define STMT_37_INFO {"STMT_DELETE_SHADOWED_RECURSIVE", NULL}
#define STMT_37 \
"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)) " \
" AND (op_depth < ?3 " \
" OR (op_depth = ?3 AND presence = 'base-deleted')) " \
""
#define STMT_CLEAR_MOVED_TO_FROM_DEST 38
#define STMT_38_INFO {"STMT_CLEAR_MOVED_TO_FROM_DEST", NULL}
#define STMT_38 \
"UPDATE NODES SET moved_to = NULL " \
"WHERE wc_id = ?1 " \
" AND moved_to = ?2 " \
""
#define STMT_SELECT_NOT_PRESENT_DESCENDANTS 39
#define STMT_39_INFO {"STMT_SELECT_NOT_PRESENT_DESCENDANTS", NULL}
#define STMT_39 \
"SELECT local_relpath FROM nodes " \
"WHERE wc_id = ?1 AND op_depth = ?3 " \
" AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \
" AND presence = 'not-present' " \
""
#define STMT_COMMIT_DESCENDANTS_TO_BASE 40
#define STMT_40_INFO {"STMT_COMMIT_DESCENDANTS_TO_BASE", NULL}
#define STMT_40 \
"UPDATE NODES SET op_depth = 0, " \
" repos_id = ?4, " \
" repos_path = (CASE WHEN (?2) = '' THEN (CASE WHEN (?5) = '' THEN (local_relpath) WHEN (local_relpath) = '' THEN (?5) ELSE (?5) || '/' || (local_relpath) END) WHEN (?5) = '' THEN (CASE WHEN (?2) = '' THEN (local_relpath) WHEN SUBSTR((local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(local_relpath) THEN '' WHEN SUBSTR((local_relpath), LENGTH(?2)+1, 1) = '/' THEN SUBSTR((local_relpath), LENGTH(?2)+2) END END) WHEN SUBSTR((local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(local_relpath) THEN (?5) WHEN SUBSTR((local_relpath), LENGTH(?2)+1, 1) = '/' THEN (?5) || SUBSTR((local_relpath), LENGTH(?2)+1) END END), " \
" revision = ?6, " \
" dav_cache = NULL, " \
" moved_here = NULL, " \
" moved_to = NULL, " \
" presence = CASE presence " \
" WHEN 'normal' THEN 'normal' " \
" WHEN 'excluded' THEN 'excluded' " \
" ELSE 'not-present' " \
" END " \
"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_SELECT_NODE_CHILDREN 41
#define STMT_41_INFO {"STMT_SELECT_NODE_CHILDREN", NULL}
#define STMT_41 \
"SELECT DISTINCT local_relpath FROM nodes " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 " \
"ORDER BY local_relpath " \
""
#define STMT_SELECT_WORKING_CHILDREN 42
#define STMT_42_INFO {"STMT_SELECT_WORKING_CHILDREN", NULL}
#define STMT_42 \
"SELECT DISTINCT local_relpath FROM nodes " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 " \
" AND (op_depth > (SELECT MAX(op_depth) FROM nodes " \
" WHERE wc_id = ?1 AND local_relpath = ?2) " \
" OR " \
" (op_depth = (SELECT MAX(op_depth) FROM nodes " \
" WHERE wc_id = ?1 AND local_relpath = ?2) " \
" AND presence IN ('normal', 'incomplete'))) " \
"ORDER BY local_relpath " \
""
#define STMT_SELECT_BASE_NOT_PRESENT_CHILDREN 43
#define STMT_43_INFO {"STMT_SELECT_BASE_NOT_PRESENT_CHILDREN", NULL}
#define STMT_43 \
"SELECT local_relpath FROM nodes " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 AND op_depth = 0 " \
" AND presence = 'not-present' " \
"ORDER BY local_relpath " \
""
#define STMT_SELECT_NODE_PROPS 44
#define STMT_44_INFO {"STMT_SELECT_NODE_PROPS", NULL}
#define STMT_44 \
"SELECT properties, presence FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
"ORDER BY op_depth DESC " \
""
#define STMT_SELECT_ACTUAL_PROPS 45
#define STMT_45_INFO {"STMT_SELECT_ACTUAL_PROPS", NULL}
#define STMT_45 \
"SELECT properties FROM actual_node " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_UPDATE_ACTUAL_PROPS 46
#define STMT_46_INFO {"STMT_UPDATE_ACTUAL_PROPS", NULL}
#define STMT_46 \
"UPDATE actual_node SET properties = ?3 " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_INSERT_ACTUAL_PROPS 47
#define STMT_47_INFO {"STMT_INSERT_ACTUAL_PROPS", NULL}
#define STMT_47 \
"INSERT INTO actual_node (wc_id, local_relpath, parent_relpath, properties) " \
"VALUES (?1, ?2, ?3, ?4) " \
""
#define STMT_INSERT_LOCK 48
#define STMT_48_INFO {"STMT_INSERT_LOCK", NULL}
#define STMT_48 \
"INSERT OR REPLACE INTO lock " \
"(repos_id, repos_relpath, lock_token, lock_owner, lock_comment, " \
" lock_date) " \
"VALUES (?1, ?2, ?3, ?4, ?5, ?6) " \
""
#define STMT_SELECT_BASE_NODE_LOCK_TOKENS_RECURSIVE 49
#define STMT_49_INFO {"STMT_SELECT_BASE_NODE_LOCK_TOKENS_RECURSIVE", NULL}
#define STMT_49 \
"SELECT nodes.repos_id, nodes.repos_path, lock_token " \
"FROM nodes " \
"LEFT JOIN lock ON nodes.repos_id = lock.repos_id " \
" AND nodes.repos_path = lock.repos_relpath " \
"WHERE wc_id = ?1 AND op_depth = 0 " \
" 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_WCROOT 50
#define STMT_50_INFO {"STMT_INSERT_WCROOT", NULL}
#define STMT_50 \
"INSERT INTO wcroot (local_abspath) " \
"VALUES (?1) " \
""
#define STMT_UPDATE_BASE_NODE_DAV_CACHE 51
#define STMT_51_INFO {"STMT_UPDATE_BASE_NODE_DAV_CACHE", NULL}
#define STMT_51 \
"UPDATE nodes SET dav_cache = ?3 " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \
""
#define STMT_SELECT_BASE_DAV_CACHE 52
#define STMT_52_INFO {"STMT_SELECT_BASE_DAV_CACHE", NULL}
#define STMT_52 \
"SELECT dav_cache FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \
""
#define STMT_SELECT_DELETION_INFO 53
#define STMT_53_INFO {"STMT_SELECT_DELETION_INFO", NULL}
#define STMT_53 \
"SELECT b.presence, w.presence, w.op_depth, w.moved_to " \
"FROM nodes w " \
"LEFT JOIN nodes b ON b.wc_id = ?1 AND b.local_relpath = ?2 AND b.op_depth = 0 " \
"WHERE w.wc_id = ?1 AND w.local_relpath = ?2 " \
" AND w.op_depth = (SELECT MAX(op_depth) FROM nodes d " \
" WHERE d.wc_id = ?1 AND d.local_relpath = ?2 " \
" AND d.op_depth > 0) " \
"LIMIT 1 " \
""
#define STMT_SELECT_MOVED_TO_NODE 54
#define STMT_54_INFO {"STMT_SELECT_MOVED_TO_NODE", NULL}
#define STMT_54 \
"SELECT op_depth, moved_to " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND moved_to IS NOT NULL " \
"ORDER BY op_depth DESC " \
""
#define STMT_SELECT_OP_DEPTH_MOVED_TO 55
#define STMT_55_INFO {"STMT_SELECT_OP_DEPTH_MOVED_TO", NULL}
#define STMT_55 \
"SELECT op_depth, moved_to " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth > ?3 " \
" AND EXISTS(SELECT * from nodes " \
" WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \
" AND presence IN ('normal', 'incomplete')) " \
"ORDER BY op_depth ASC " \
"LIMIT 1 " \
""
#define STMT_SELECT_MOVED_TO 56
#define STMT_56_INFO {"STMT_SELECT_MOVED_TO", NULL}
#define STMT_56 \
"SELECT moved_to " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \
""
#define STMT_SELECT_MOVED_BACK 57
#define STMT_57_INFO {"STMT_SELECT_MOVED_BACK", NULL}
#define STMT_57 \
"SELECT u.local_relpath, " \
" u.presence, u.repos_id, u.repos_path, u.revision, " \
" l.presence, l.repos_id, l.repos_path, l.revision, " \
" u.moved_here, u.moved_to " \
"FROM nodes u " \
"LEFT OUTER JOIN nodes l ON l.wc_id = ?1 " \
" AND l.local_relpath = u.local_relpath " \
" AND l.op_depth = ?3 " \
"WHERE u.wc_id = ?1 " \
" AND u.local_relpath = ?2 " \
" AND u.op_depth = ?4 " \
"UNION ALL " \
"SELECT u.local_relpath, " \
" u.presence, u.repos_id, u.repos_path, u.revision, " \
" l.presence, l.repos_id, l.repos_path, l.revision, " \
" u.moved_here, NULL " \
"FROM nodes u " \
"LEFT OUTER JOIN nodes l ON l.wc_id=?1 " \
" AND l.local_relpath=u.local_relpath " \
" AND l.op_depth=?3 " \
"WHERE u.wc_id = ?1 " \
" AND (((u.local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((u.local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \
" AND u.op_depth = ?4 " \
""
#define STMT_DELETE_LOCK 58
#define STMT_58_INFO {"STMT_DELETE_LOCK", NULL}
#define STMT_58 \
"DELETE FROM lock " \
"WHERE repos_id = ?1 AND repos_relpath = ?2 " \
""
#define STMT_DELETE_LOCK_RECURSIVELY 59
#define STMT_59_INFO {"STMT_DELETE_LOCK_RECURSIVELY", NULL}
#define STMT_59 \
"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 60
#define STMT_60_INFO {"STMT_CLEAR_BASE_NODE_RECURSIVE_DAV_CACHE", NULL}
#define STMT_60 \
"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 61
#define STMT_61_INFO {"STMT_RECURSIVE_UPDATE_NODE_REPO", NULL}
#define STMT_61 \
"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 62
#define STMT_62_INFO {"STMT_UPDATE_LOCK_REPOS_ID", NULL}
#define STMT_62 \
"UPDATE lock SET repos_id = ?2 " \
"WHERE repos_id = ?1 " \
""
#define STMT_UPDATE_NODE_FILEINFO 63
#define STMT_63_INFO {"STMT_UPDATE_NODE_FILEINFO", NULL}
#define STMT_63 \
"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 64
#define STMT_64_INFO {"STMT_INSERT_ACTUAL_CONFLICT", NULL}
#define STMT_64 \
"INSERT INTO actual_node (wc_id, local_relpath, conflict_data, parent_relpath) " \
"VALUES (?1, ?2, ?3, ?4) " \
""
#define STMT_UPDATE_ACTUAL_CONFLICT 65
#define STMT_65_INFO {"STMT_UPDATE_ACTUAL_CONFLICT", NULL}
#define STMT_65 \
"UPDATE actual_node SET conflict_data = ?3 " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_UPDATE_ACTUAL_CHANGELISTS 66
#define STMT_66_INFO {"STMT_UPDATE_ACTUAL_CHANGELISTS", NULL}
#define STMT_66 \
"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))) " \
" AND local_relpath = (SELECT local_relpath FROM targets_list AS t " \
" WHERE wc_id = ?1 " \
" AND t.local_relpath = actual_node.local_relpath " \
" AND kind = 'file') " \
""
#define STMT_UPDATE_ACTUAL_CLEAR_CHANGELIST 67
#define STMT_67_INFO {"STMT_UPDATE_ACTUAL_CLEAR_CHANGELIST", NULL}
#define STMT_67 \
"UPDATE actual_node SET changelist = NULL " \
" WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_MARK_SKIPPED_CHANGELIST_DIRS 68
#define STMT_68_INFO {"STMT_MARK_SKIPPED_CHANGELIST_DIRS", NULL}
#define STMT_68 \
"INSERT INTO changelist_list (wc_id, local_relpath, notify, changelist) " \
"SELECT wc_id, local_relpath, 7, ?3 " \
"FROM targets_list " \
"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 kind = 'dir' " \
""
#define STMT_RESET_ACTUAL_WITH_CHANGELIST 69
#define STMT_69_INFO {"STMT_RESET_ACTUAL_WITH_CHANGELIST", NULL}
#define STMT_69 \
"REPLACE INTO actual_node ( " \
" wc_id, local_relpath, parent_relpath, changelist) " \
"VALUES (?1, ?2, ?3, ?4) " \
""
#define STMT_CREATE_CHANGELIST_LIST 70
#define STMT_70_INFO {"STMT_CREATE_CHANGELIST_LIST", NULL}
#define STMT_70 \
"DROP TABLE IF EXISTS changelist_list; " \
"CREATE TEMPORARY TABLE changelist_list ( " \
" wc_id INTEGER NOT NULL, " \
" local_relpath TEXT NOT NULL, " \
" notify INTEGER NOT NULL, " \
" changelist TEXT NOT NULL, " \
" PRIMARY KEY (wc_id, local_relpath, notify DESC) " \
") " \
""
#define STMT_CREATE_CHANGELIST_TRIGGER 71
#define STMT_71_INFO {"STMT_CREATE_CHANGELIST_TRIGGER", NULL}
#define STMT_71 \
"DROP TRIGGER IF EXISTS trigger_changelist_list_change; " \
"CREATE TEMPORARY TRIGGER trigger_changelist_list_change " \
"BEFORE UPDATE ON actual_node " \
"WHEN old.changelist IS NOT new.changelist " \
"BEGIN " \
" INSERT INTO changelist_list(wc_id, local_relpath, notify, changelist) " \
" SELECT old.wc_id, old.local_relpath, 27, old.changelist " \
" WHERE old.changelist is NOT NULL; " \
" INSERT INTO changelist_list(wc_id, local_relpath, notify, changelist) " \
" SELECT new.wc_id, new.local_relpath, 26, new.changelist " \
" WHERE new.changelist IS NOT NULL; " \
"END " \
""
#define STMT_FINALIZE_CHANGELIST 72
#define STMT_72_INFO {"STMT_FINALIZE_CHANGELIST", NULL}
#define STMT_72 \
"DROP TRIGGER trigger_changelist_list_change; " \
"DROP TABLE changelist_list; " \
"DROP TABLE targets_list " \
""
#define STMT_SELECT_CHANGELIST_LIST 73
#define STMT_73_INFO {"STMT_SELECT_CHANGELIST_LIST", NULL}
#define STMT_73 \
"SELECT wc_id, local_relpath, notify, changelist " \
"FROM changelist_list " \
"ORDER BY wc_id, local_relpath ASC, notify DESC " \
""
#define STMT_CREATE_TARGETS_LIST 74
#define STMT_74_INFO {"STMT_CREATE_TARGETS_LIST", NULL}
#define STMT_74 \
"DROP TABLE IF EXISTS targets_list; " \
"CREATE TEMPORARY TABLE targets_list ( " \
" wc_id INTEGER NOT NULL, " \
" local_relpath TEXT NOT NULL, " \
" parent_relpath TEXT, " \
" kind TEXT NOT NULL, " \
" PRIMARY KEY (wc_id, local_relpath) " \
" ); " \
""
#define STMT_DROP_TARGETS_LIST 75
#define STMT_75_INFO {"STMT_DROP_TARGETS_LIST", NULL}
#define STMT_75 \
"DROP TABLE targets_list " \
""
#define STMT_INSERT_TARGET 76
#define STMT_76_INFO {"STMT_INSERT_TARGET", 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 " \
"WHERE wc_id = ?1 " \
" AND local_relpath = ?2 " \
""
#define STMT_INSERT_TARGET_DEPTH_FILES 77
#define STMT_77_INFO {"STMT_INSERT_TARGET_DEPTH_FILES", NULL}
#define STMT_77 \
"INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \
"SELECT wc_id, local_relpath, parent_relpath, kind " \
"FROM nodes_current " \
"WHERE wc_id = ?1 " \
" AND parent_relpath = ?2 " \
" AND kind = 'file' " \
""
#define STMT_INSERT_TARGET_DEPTH_IMMEDIATES 78
#define STMT_78_INFO {"STMT_INSERT_TARGET_DEPTH_IMMEDIATES", NULL}
#define STMT_78 \
"INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \
"SELECT wc_id, local_relpath, parent_relpath, kind " \
"FROM nodes_current " \
"WHERE wc_id = ?1 " \
" AND parent_relpath = ?2 " \
""
#define STMT_INSERT_TARGET_DEPTH_INFINITY 79
#define STMT_79_INFO {"STMT_INSERT_TARGET_DEPTH_INFINITY", NULL}
#define STMT_79 \
"INSERT INTO targets_list(wc_id, local_relpath, parent_relpath, kind) " \
"SELECT wc_id, local_relpath, parent_relpath, kind " \
"FROM nodes_current " \
"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_INSERT_TARGET_WITH_CHANGELIST 80
#define STMT_80_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST", 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 " \
" ON A.wc_id = N.wc_id AND A.local_relpath = N.local_relpath " \
" WHERE N.wc_id = ?1 " \
" AND N.local_relpath = ?2 " \
" AND A.changelist = ?3 " \
""
#define STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_FILES 81
#define STMT_81_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_FILES", NULL}
#define STMT_81 \
"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 " \
" ON A.wc_id = N.wc_id AND A.local_relpath = N.local_relpath " \
" WHERE N.wc_id = ?1 " \
" AND N.parent_relpath = ?2 " \
" AND kind = 'file' " \
" AND A.changelist = ?3 " \
""
#define STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_IMMEDIATES 82
#define STMT_82_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_IMMEDIATES", NULL}
#define STMT_82 \
"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 " \
" ON A.wc_id = N.wc_id AND A.local_relpath = N.local_relpath " \
" WHERE N.wc_id = ?1 " \
" AND N.parent_relpath = ?2 " \
" AND A.changelist = ?3 " \
""
#define STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_INFINITY 83
#define STMT_83_INFO {"STMT_INSERT_TARGET_WITH_CHANGELIST_DEPTH_INFINITY", NULL}
#define STMT_83 \
"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 " \
" ON A.wc_id = N.wc_id AND A.local_relpath = N.local_relpath " \
" WHERE N.wc_id = ?1 " \
" AND (((N.local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((N.local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \
" AND A.changelist = ?3 " \
""
#define STMT_INSERT_ACTUAL_EMPTIES 84
#define STMT_84_INFO {"STMT_INSERT_ACTUAL_EMPTIES", NULL}
#define STMT_84 \
"INSERT OR IGNORE INTO actual_node ( " \
" wc_id, local_relpath, parent_relpath) " \
"SELECT wc_id, local_relpath, parent_relpath " \
"FROM targets_list " \
""
#define STMT_INSERT_ACTUAL_EMPTIES_FILES 85
#define STMT_85_INFO {"STMT_INSERT_ACTUAL_EMPTIES_FILES", NULL}
#define STMT_85 \
"INSERT OR IGNORE INTO actual_node ( " \
" wc_id, local_relpath, parent_relpath) " \
"SELECT wc_id, local_relpath, parent_relpath " \
"FROM targets_list " \
"WHERE kind='file' " \
""
#define STMT_DELETE_ACTUAL_EMPTY 86
#define STMT_86_INFO {"STMT_DELETE_ACTUAL_EMPTY", NULL}
#define STMT_86 \
"DELETE FROM actual_node " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
" AND properties IS NULL " \
" AND conflict_data IS NULL " \
" AND changelist IS NULL " \
" AND text_mod IS NULL " \
" AND older_checksum IS NULL " \
" AND right_checksum IS NULL " \
" AND left_checksum IS NULL " \
""
#define STMT_DELETE_ACTUAL_EMPTIES 87
#define STMT_87_INFO {"STMT_DELETE_ACTUAL_EMPTIES", NULL}
#define STMT_87 \
"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))) " \
" AND properties IS NULL " \
" AND conflict_data IS NULL " \
" AND changelist IS NULL " \
" AND text_mod IS NULL " \
" AND older_checksum IS NULL " \
" AND right_checksum IS NULL " \
" AND left_checksum IS NULL " \
""
#define STMT_DELETE_BASE_NODE 88
#define STMT_88_INFO {"STMT_DELETE_BASE_NODE", NULL}
#define STMT_88 \
"DELETE FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \
""
#define STMT_DELETE_WORKING_NODE 89
#define STMT_89_INFO {"STMT_DELETE_WORKING_NODE", NULL}
#define STMT_89 \
"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 90
#define STMT_90_INFO {"STMT_DELETE_LOWEST_WORKING_NODE", NULL}
#define STMT_90 \
"DELETE FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
" AND op_depth = (SELECT MIN(op_depth) FROM nodes " \
" WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth > ?3) " \
" AND presence = 'base-deleted' " \
""
#define STMT_DELETE_NODE_ALL_LAYERS 91
#define STMT_91_INFO {"STMT_DELETE_NODE_ALL_LAYERS", NULL}
#define STMT_91 \
"DELETE FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_DELETE_NODES_ABOVE_DEPTH_RECURSIVE 92
#define STMT_92_INFO {"STMT_DELETE_NODES_ABOVE_DEPTH_RECURSIVE", NULL}
#define STMT_92 \
"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))) " \
" AND op_depth >= ?3 " \
""
#define STMT_DELETE_ACTUAL_NODE 93
#define STMT_93_INFO {"STMT_DELETE_ACTUAL_NODE", NULL}
#define STMT_93 \
"DELETE FROM actual_node " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_DELETE_ACTUAL_NODE_RECURSIVE 94
#define STMT_94_INFO {"STMT_DELETE_ACTUAL_NODE_RECURSIVE", NULL}
#define STMT_94 \
"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 95
#define STMT_95_INFO {"STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST", NULL}
#define STMT_95 \
"DELETE FROM actual_node " \
"WHERE wc_id = ?1 " \
" AND local_relpath = ?2 " \
" AND (changelist IS NULL " \
" OR NOT EXISTS (SELECT 1 FROM nodes_current c " \
" WHERE c.wc_id = ?1 AND c.local_relpath = ?2 " \
" AND c.kind = 'file')) " \
""
#define STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE 96
#define STMT_96_INFO {"STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE", NULL}
#define STMT_96 \
"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))) " \
" AND (changelist IS NULL " \
" OR NOT EXISTS (SELECT 1 FROM nodes_current c " \
" WHERE c.wc_id = ?1 " \
" AND c.local_relpath = actual_node.local_relpath " \
" AND c.kind = 'file')) " \
""
#define STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST 97
#define STMT_97_INFO {"STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST", NULL}
#define STMT_97 \
"UPDATE actual_node " \
"SET properties = NULL, " \
" text_mod = NULL, " \
" conflict_data = NULL, " \
" tree_conflict_data = NULL, " \
" older_checksum = NULL, " \
" left_checksum = NULL, " \
" right_checksum = NULL " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_CLEAR_ACTUAL_NODE_LEAVING_CONFLICT 98
#define STMT_98_INFO {"STMT_CLEAR_ACTUAL_NODE_LEAVING_CONFLICT", NULL}
#define STMT_98 \
"UPDATE actual_node " \
"SET properties = NULL, " \
" text_mod = NULL, " \
" tree_conflict_data = NULL, " \
" older_checksum = NULL, " \
" left_checksum = NULL, " \
" right_checksum = NULL, " \
" changelist = NULL " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE 99
#define STMT_99_INFO {"STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE", NULL}
#define STMT_99 \
"UPDATE actual_node " \
"SET properties = NULL, " \
" text_mod = NULL, " \
" conflict_data = NULL, " \
" tree_conflict_data = NULL, " \
" older_checksum = NULL, " \
" left_checksum = NULL, " \
" right_checksum = 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))) " \
""
#define STMT_UPDATE_NODE_BASE_DEPTH 100
#define STMT_100_INFO {"STMT_UPDATE_NODE_BASE_DEPTH", NULL}
#define STMT_100 \
"UPDATE nodes SET depth = ?3 " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \
" AND kind='dir' " \
" AND presence IN ('normal', 'incomplete') " \
""
#define STMT_UPDATE_NODE_BASE_PRESENCE 101
#define STMT_101_INFO {"STMT_UPDATE_NODE_BASE_PRESENCE", NULL}
#define STMT_101 \
"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 102
#define STMT_102_INFO {"STMT_UPDATE_BASE_NODE_PRESENCE_REVNUM_AND_REPOS_PATH", NULL}
#define STMT_102 \
"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 103
#define STMT_103_INFO {"STMT_LOOK_FOR_WORK", NULL}
#define STMT_103 \
"SELECT id FROM work_queue LIMIT 1 " \
""
#define STMT_INSERT_WORK_ITEM 104
#define STMT_104_INFO {"STMT_INSERT_WORK_ITEM", NULL}
#define STMT_104 \
"INSERT INTO work_queue (work) VALUES (?1) " \
""
#define STMT_SELECT_WORK_ITEM 105
#define STMT_105_INFO {"STMT_SELECT_WORK_ITEM", NULL}
#define STMT_105 \
"SELECT id, work FROM work_queue ORDER BY id LIMIT 1 " \
""
#define STMT_DELETE_WORK_ITEM 106
#define STMT_106_INFO {"STMT_DELETE_WORK_ITEM", NULL}
#define STMT_106 \
"DELETE FROM work_queue WHERE id = ?1 " \
""
#define STMT_INSERT_OR_IGNORE_PRISTINE 107
#define STMT_107_INFO {"STMT_INSERT_OR_IGNORE_PRISTINE", NULL}
#define STMT_107 \
"INSERT OR IGNORE INTO pristine (checksum, md5_checksum, size, refcount) " \
"VALUES (?1, ?2, ?3, 0) " \
""
#define STMT_INSERT_PRISTINE 108
#define STMT_108_INFO {"STMT_INSERT_PRISTINE", NULL}
#define STMT_108 \
"INSERT INTO pristine (checksum, md5_checksum, size, refcount) " \
"VALUES (?1, ?2, ?3, 0) " \
""
#define STMT_SELECT_PRISTINE 109
#define STMT_109_INFO {"STMT_SELECT_PRISTINE", NULL}
#define STMT_109 \
"SELECT md5_checksum " \
"FROM pristine " \
"WHERE checksum = ?1 " \
""
#define STMT_SELECT_PRISTINE_SIZE 110
#define STMT_110_INFO {"STMT_SELECT_PRISTINE_SIZE", NULL}
#define STMT_110 \
"SELECT size " \
"FROM pristine " \
"WHERE checksum = ?1 LIMIT 1 " \
""
#define STMT_SELECT_PRISTINE_BY_MD5 111
#define STMT_111_INFO {"STMT_SELECT_PRISTINE_BY_MD5", NULL}
#define STMT_111 \
"SELECT checksum " \
"FROM pristine " \
"WHERE md5_checksum = ?1 " \
""
#define STMT_SELECT_UNREFERENCED_PRISTINES 112
#define STMT_112_INFO {"STMT_SELECT_UNREFERENCED_PRISTINES", NULL}
#define STMT_112 \
"SELECT checksum " \
"FROM pristine " \
"WHERE refcount = 0 " \
""
#define STMT_DELETE_PRISTINE_IF_UNREFERENCED 113
#define STMT_113_INFO {"STMT_DELETE_PRISTINE_IF_UNREFERENCED", NULL}
#define STMT_113 \
"DELETE FROM pristine " \
"WHERE checksum = ?1 AND refcount = 0 " \
""
#define STMT_SELECT_COPY_PRISTINES 114
#define STMT_114_INFO {"STMT_SELECT_COPY_PRISTINES", NULL}
#define STMT_114 \
"SELECT n.checksum, md5_checksum, size " \
"FROM nodes_current n " \
"LEFT JOIN pristine p ON n.checksum = p.checksum " \
"WHERE wc_id = ?1 " \
" AND n.local_relpath = ?2 " \
" AND n.checksum IS NOT NULL " \
"UNION ALL " \
"SELECT n.checksum, md5_checksum, size " \
"FROM nodes n " \
"LEFT JOIN pristine p ON n.checksum = p.checksum " \
"WHERE wc_id = ?1 " \
" AND (((n.local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((n.local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \
" AND op_depth >= " \
" (SELECT MAX(op_depth) FROM nodes WHERE wc_id = ?1 AND local_relpath = ?2) " \
" AND n.checksum IS NOT NULL " \
""
#define STMT_VACUUM 115
#define STMT_115_INFO {"STMT_VACUUM", NULL}
#define STMT_115 \
"VACUUM " \
""
#define STMT_SELECT_CONFLICT_VICTIMS 116
#define STMT_116_INFO {"STMT_SELECT_CONFLICT_VICTIMS", NULL}
#define STMT_116 \
"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 117
#define STMT_117_INFO {"STMT_INSERT_WC_LOCK", NULL}
#define STMT_117 \
"INSERT INTO wc_lock (wc_id, local_dir_relpath, locked_levels) " \
"VALUES (?1, ?2, ?3) " \
""
#define STMT_SELECT_WC_LOCK 118
#define STMT_118_INFO {"STMT_SELECT_WC_LOCK", NULL}
#define STMT_118 \
"SELECT locked_levels FROM wc_lock " \
"WHERE wc_id = ?1 AND local_dir_relpath = ?2 " \
""
#define STMT_SELECT_ANCESTOR_WCLOCKS 119
#define STMT_119_INFO {"STMT_SELECT_ANCESTOR_WCLOCKS", NULL}
#define STMT_119 \
"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 120
#define STMT_120_INFO {"STMT_DELETE_WC_LOCK", NULL}
#define STMT_120 \
"DELETE FROM wc_lock " \
"WHERE wc_id = ?1 AND local_dir_relpath = ?2 " \
""
#define STMT_FIND_WC_LOCK 121
#define STMT_121_INFO {"STMT_FIND_WC_LOCK", NULL}
#define STMT_121 \
"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_FIND_CONFLICT_DESCENDANT 122
#define STMT_122_INFO {"STMT_FIND_CONFLICT_DESCENDANT", NULL}
#define STMT_122 \
"SELECT 1 FROM actual_node " \
"WHERE wc_id = ?1 " \
" AND local_relpath > (?2 || '/') " \
" AND local_relpath < (?2 || '0') " \
" AND conflict_data IS NOT NULL " \
"LIMIT 1 " \
""
#define STMT_DELETE_WC_LOCK_ORPHAN 123
#define STMT_123_INFO {"STMT_DELETE_WC_LOCK_ORPHAN", NULL}
#define STMT_123 \
"DELETE FROM wc_lock " \
"WHERE wc_id = ?1 AND local_dir_relpath = ?2 " \
"AND NOT EXISTS (SELECT 1 FROM nodes " \
" WHERE nodes.wc_id = ?1 " \
" AND nodes.local_relpath = wc_lock.local_dir_relpath) " \
""
#define STMT_DELETE_WC_LOCK_ORPHAN_RECURSIVE 124
#define STMT_124_INFO {"STMT_DELETE_WC_LOCK_ORPHAN_RECURSIVE", NULL}
#define STMT_124 \
"DELETE FROM wc_lock " \
"WHERE wc_id = ?1 " \
" AND (local_dir_relpath = ?2 " \
" OR (((local_dir_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_dir_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \
" AND NOT EXISTS (SELECT 1 FROM nodes " \
" WHERE nodes.wc_id = ?1 " \
" AND nodes.local_relpath = wc_lock.local_dir_relpath) " \
""
#define STMT_APPLY_CHANGES_TO_BASE_NODE 125
#define STMT_125_INFO {"STMT_APPLY_CHANGES_TO_BASE_NODE", NULL}
#define STMT_125 \
"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, " \
" changed_author, checksum, properties, dav_cache, symlink_target, " \
" inherited_props, file_external ) " \
"VALUES (?1, ?2, 0, " \
" ?3, ?4, ?5, ?6, ?7, ?8, ?9, ?10, ?11, ?12, ?13, ?14, ?15, ?16, ?17, " \
" (SELECT file_external FROM nodes " \
" WHERE wc_id = ?1 " \
" AND local_relpath = ?2 " \
" AND op_depth = 0)) " \
""
#define STMT_INSTALL_WORKING_NODE_FOR_DELETE 126
#define STMT_126_INFO {"STMT_INSTALL_WORKING_NODE_FOR_DELETE", NULL}
#define STMT_126 \
"INSERT INTO nodes ( " \
" wc_id, local_relpath, op_depth, " \
" parent_relpath, presence, kind) " \
"VALUES(?1, ?2, ?3, ?4, 'base-deleted', ?5) " \
""
#define STMT_REPLACE_WITH_BASE_DELETED 127
#define STMT_127_INFO {"STMT_REPLACE_WITH_BASE_DELETED", NULL}
#define STMT_127 \
"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, " \
" kind, moved_to, 'base-deleted' " \
" FROM nodes " \
" WHERE wc_id = ?1 " \
" AND local_relpath = ?2 " \
" AND op_depth = ?3 " \
""
#define STMT_INSERT_DELETE_FROM_NODE_RECURSIVE 128
#define STMT_128_INFO {"STMT_INSERT_DELETE_FROM_NODE_RECURSIVE", NULL}
#define STMT_128 \
"INSERT INTO nodes ( " \
" wc_id, local_relpath, op_depth, parent_relpath, presence, kind) " \
"SELECT wc_id, local_relpath, ?4 , parent_relpath, 'base-deleted', " \
" kind " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \
"UNION ALL " \
"SELECT wc_id, local_relpath, ?4 , parent_relpath, 'base-deleted', " \
" kind " \
"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)) " \
" AND op_depth = ?3 " \
" AND presence NOT IN ('base-deleted', 'not-present', 'excluded', 'server-excluded') " \
" AND file_external IS NULL " \
"ORDER BY local_relpath " \
""
#define STMT_INSERT_WORKING_NODE_FROM_BASE_COPY 129
#define STMT_129_INFO {"STMT_INSERT_WORKING_NODE_FROM_BASE_COPY", NULL}
#define STMT_129 \
"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, " \
" changed_author, checksum, properties, translated_size, last_mod_time, " \
" symlink_target, moved_to ) " \
"SELECT wc_id, local_relpath, ?3 , parent_relpath, repos_id, " \
" repos_path, revision, presence, depth, kind, changed_revision, " \
" changed_date, changed_author, checksum, properties, translated_size, " \
" last_mod_time, symlink_target, " \
" (SELECT moved_to FROM nodes " \
" WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3) moved_to " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \
""
#define STMT_INSERT_DELETE_FROM_BASE 130
#define STMT_130_INFO {"STMT_INSERT_DELETE_FROM_BASE", NULL}
#define STMT_130 \
"INSERT INTO nodes ( " \
" wc_id, local_relpath, op_depth, parent_relpath, presence, kind) " \
"SELECT wc_id, local_relpath, ?3 , parent_relpath, " \
" 'base-deleted', kind " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \
""
#define STMT_UPDATE_OP_DEPTH_INCREASE_RECURSIVE 131
#define STMT_131_INFO {"STMT_UPDATE_OP_DEPTH_INCREASE_RECURSIVE", NULL}
#define STMT_131 \
"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_COPY_OP_DEPTH_RECURSIVE 132
#define STMT_132_INFO {"STMT_COPY_OP_DEPTH_RECURSIVE", NULL}
#define STMT_132 \
"INSERT INTO nodes ( " \
" wc_id, local_relpath, op_depth, parent_relpath, repos_id, repos_path, " \
" revision, presence, depth, kind, changed_revision, changed_date, " \
" changed_author, checksum, properties, translated_size, last_mod_time, " \
" symlink_target, moved_here, moved_to ) " \
"SELECT " \
" wc_id, local_relpath, ?4, parent_relpath, repos_id, " \
" repos_path, revision, presence, depth, kind, changed_revision, " \
" changed_date, changed_author, checksum, properties, translated_size, " \
" last_mod_time, symlink_target, NULL, NULL " \
"FROM nodes " \
"WHERE wc_id = ?1 AND op_depth = ?3 AND local_relpath = ?2 " \
"UNION ALL " \
"SELECT " \
" wc_id, local_relpath, ?4, parent_relpath, repos_id, " \
" repos_path, revision, presence, depth, kind, changed_revision, " \
" changed_date, changed_author, checksum, properties, translated_size, " \
" last_mod_time, symlink_target, NULL, NULL " \
"FROM nodes " \
"WHERE wc_id = ?1 AND op_depth = ?3 " \
" AND (((local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \
"ORDER BY local_relpath " \
""
#define STMT_DOES_NODE_EXIST 133
#define STMT_133_INFO {"STMT_DOES_NODE_EXIST", NULL}
#define STMT_133 \
"SELECT 1 FROM nodes WHERE wc_id = ?1 AND local_relpath = ?2 " \
"LIMIT 1 " \
""
#define STMT_HAS_SERVER_EXCLUDED_DESCENDANTS 134
#define STMT_134_INFO {"STMT_HAS_SERVER_EXCLUDED_DESCENDANTS", NULL}
#define STMT_134 \
"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)) " \
" AND op_depth = 0 AND presence = 'server-excluded' " \
"LIMIT 1 " \
""
#define STMT_SELECT_ALL_EXCLUDED_DESCENDANTS 135
#define STMT_135_INFO {"STMT_SELECT_ALL_EXCLUDED_DESCENDANTS", NULL}
#define STMT_135 \
"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)) " \
" AND op_depth = 0 " \
" AND (presence = 'server-excluded' OR presence = 'excluded') " \
""
#define STMT_INSERT_WORKING_NODE_COPY_FROM 136
#define STMT_136_INFO {"STMT_INSERT_WORKING_NODE_COPY_FROM", NULL}
#define STMT_136 \
"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, " \
" changed_date, changed_author, checksum, properties, translated_size, " \
" last_mod_time, symlink_target, moved_to ) " \
"SELECT wc_id, ?3 , ?4 , ?5 , " \
" repos_id, repos_path, revision, ?6 , depth, " \
" ?7, kind, changed_revision, changed_date, " \
" changed_author, checksum, properties, translated_size, " \
" last_mod_time, symlink_target, " \
" (SELECT dst.moved_to FROM nodes AS dst " \
" WHERE dst.wc_id = ?1 " \
" AND dst.local_relpath = ?3 " \
" AND dst.op_depth = ?4) " \
"FROM nodes_current " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_INSERT_WORKING_NODE_COPY_FROM_DEPTH 137
#define STMT_137_INFO {"STMT_INSERT_WORKING_NODE_COPY_FROM_DEPTH", NULL}
#define STMT_137 \
"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, " \
" changed_date, changed_author, checksum, properties, translated_size, " \
" last_mod_time, symlink_target, moved_to ) " \
"SELECT wc_id, ?3 , ?4 , ?5 , " \
" repos_id, repos_path, revision, ?6 , depth, " \
" ?8 , kind, changed_revision, changed_date, " \
" changed_author, checksum, properties, translated_size, " \
" last_mod_time, symlink_target, " \
" (SELECT dst.moved_to FROM nodes AS dst " \
" WHERE dst.wc_id = ?1 " \
" AND dst.local_relpath = ?3 " \
" AND dst.op_depth = ?4) " \
"FROM nodes " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?7 " \
""
#define STMT_UPDATE_BASE_REVISION 138
#define STMT_138_INFO {"STMT_UPDATE_BASE_REVISION", NULL}
#define STMT_138 \
"UPDATE nodes SET revision = ?3 " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0 " \
""
#define STMT_UPDATE_BASE_REPOS 139
#define STMT_139_INFO {"STMT_UPDATE_BASE_REPOS", NULL}
#define STMT_139 \
"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 140
#define STMT_140_INFO {"STMT_ACTUAL_HAS_CHILDREN", NULL}
#define STMT_140 \
"SELECT 1 FROM actual_node " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 " \
"LIMIT 1 " \
""
#define STMT_INSERT_EXTERNAL 141
#define STMT_141_INFO {"STMT_INSERT_EXTERNAL", NULL}
#define STMT_141 \
"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 142
#define STMT_142_INFO {"STMT_SELECT_EXTERNAL_INFO", NULL}
#define STMT_142 \
"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 143
#define STMT_143_INFO {"STMT_DELETE_FILE_EXTERNALS", NULL}
#define STMT_143 \
"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)) " \
" AND op_depth = 0 " \
" AND file_external IS NOT NULL " \
""
#define STMT_DELETE_FILE_EXTERNAL_REGISTATIONS 144
#define STMT_144_INFO {"STMT_DELETE_FILE_EXTERNAL_REGISTATIONS", NULL}
#define STMT_144 \
"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 145
#define STMT_145_INFO {"STMT_DELETE_EXTERNAL_REGISTATIONS", NULL}
#define STMT_145 \
"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 146
#define STMT_146_INFO {"STMT_SELECT_COMMITTABLE_EXTERNALS_BELOW", NULL}
#define STMT_146 \
"SELECT local_relpath, kind, def_repos_relpath, " \
" (SELECT root FROM repository AS r WHERE r.id = e.repos_id) " \
"FROM externals e " \
"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 def_revision IS NULL " \
" AND repos_id = (SELECT repos_id " \
" FROM nodes AS n " \
" WHERE n.wc_id = ?1 " \
" AND n.local_relpath = '' " \
" AND n.op_depth = 0) " \
" AND ((kind='dir') " \
" OR EXISTS (SELECT 1 FROM nodes " \
" WHERE nodes.wc_id = e.wc_id " \
" AND nodes.local_relpath = e.parent_relpath)) " \
""
#define STMT_SELECT_COMMITTABLE_EXTERNALS_IMMEDIATELY_BELOW 147
#define STMT_147_INFO {"STMT_SELECT_COMMITTABLE_EXTERNALS_IMMEDIATELY_BELOW", NULL}
#define STMT_147 \
"SELECT local_relpath, kind, def_repos_relpath, " \
" (SELECT root FROM repository AS r WHERE r.id = e.repos_id) " \
"FROM externals e " \
"WHERE wc_id = ?1 " \
" AND (((e.local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((e.local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \
" AND parent_relpath = ?2 " \
" AND def_revision IS NULL " \
" AND repos_id = (SELECT repos_id " \
" FROM nodes AS n " \
" WHERE n.wc_id = ?1 " \
" AND n.local_relpath = '' " \
" AND n.op_depth = 0) " \
" AND ((kind='dir') " \
" OR EXISTS (SELECT 1 FROM nodes " \
" WHERE nodes.wc_id = e.wc_id " \
" AND nodes.local_relpath = e.parent_relpath)) " \
""
#define STMT_SELECT_EXTERNALS_DEFINED 148
#define STMT_148_INFO {"STMT_SELECT_EXTERNALS_DEFINED", NULL}
#define STMT_148 \
"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 149
#define STMT_149_INFO {"STMT_DELETE_EXTERNAL", NULL}
#define STMT_149 \
"DELETE FROM externals " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
""
#define STMT_SELECT_EXTERNAL_PROPERTIES 150
#define STMT_150_INFO {"STMT_SELECT_EXTERNAL_PROPERTIES", NULL}
#define STMT_150 \
"SELECT IFNULL((SELECT properties FROM actual_node a " \
" WHERE a.wc_id = ?1 AND A.local_relpath = n.local_relpath), " \
" properties), " \
" local_relpath, depth " \
"FROM nodes_current n " \
"WHERE wc_id = ?1 AND local_relpath = ?2 " \
" AND kind = 'dir' AND presence IN ('normal', 'incomplete') " \
"UNION ALL " \
"SELECT IFNULL((SELECT properties FROM actual_node a " \
" WHERE a.wc_id = ?1 AND A.local_relpath = n.local_relpath), " \
" properties), " \
" local_relpath, depth " \
"FROM nodes_current n " \
"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' AND presence IN ('normal', 'incomplete') " \
""
#define STMT_SELECT_CURRENT_PROPS_RECURSIVE 151
#define STMT_151_INFO {"STMT_SELECT_CURRENT_PROPS_RECURSIVE", NULL}
#define STMT_151 \
"SELECT IFNULL((SELECT properties FROM actual_node a " \
" WHERE a.wc_id = ?1 AND A.local_relpath = n.local_relpath), " \
" properties), " \
" local_relpath " \
"FROM nodes_current n " \
"WHERE (wc_id = ?1 AND local_relpath = ?2) " \
" 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 152
#define STMT_152_INFO {"STMT_PRAGMA_LOCKING_MODE", NULL}
#define STMT_152 \
"PRAGMA locking_mode = exclusive; " \
"PRAGMA journal_mode = DELETE " \
""
#define STMT_FIND_REPOS_PATH_IN_WC 153
#define STMT_153_INFO {"STMT_FIND_REPOS_PATH_IN_WC", NULL}
#define STMT_153 \
"SELECT local_relpath FROM nodes_current " \
" WHERE wc_id = ?1 AND repos_path = ?2 " \
""
#define STMT_INSERT_ACTUAL_NODE 154
#define STMT_154_INFO {"STMT_INSERT_ACTUAL_NODE", NULL}
#define STMT_154 \
"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_SELECT_ALL_FILES 155
#define STMT_155_INFO {"STMT_SELECT_ALL_FILES", NULL}
#define STMT_155 \
"SELECT local_relpath FROM nodes_current " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 AND kind = 'file' " \
""
#define STMT_UPDATE_NODE_PROPS 156
#define STMT_156_INFO {"STMT_UPDATE_NODE_PROPS", NULL}
#define STMT_156 \
"UPDATE nodes SET properties = ?4 " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \
""
#define STMT_PRAGMA_TABLE_INFO_NODES 157
#define STMT_157_INFO {"STMT_PRAGMA_TABLE_INFO_NODES", NULL}
#define STMT_157 \
"PRAGMA table_info(\"NODES\") " \
""
#define STMT_CREATE_TARGET_PROP_CACHE 158
#define STMT_158_INFO {"STMT_CREATE_TARGET_PROP_CACHE", NULL}
#define STMT_158 \
"DROP TABLE IF EXISTS target_prop_cache; " \
"CREATE TEMPORARY TABLE target_prop_cache ( " \
" local_relpath TEXT NOT NULL PRIMARY KEY, " \
" kind TEXT NOT NULL, " \
" properties BLOB " \
"); " \
""
#define STMT_CACHE_TARGET_PROPS 159
#define STMT_159_INFO {"STMT_CACHE_TARGET_PROPS", NULL}
#define STMT_159 \
"INSERT INTO target_prop_cache(local_relpath, kind, properties) " \
" SELECT n.local_relpath, n.kind, " \
" IFNULL((SELECT properties FROM actual_node AS a " \
" WHERE a.wc_id = n.wc_id " \
" AND a.local_relpath = n.local_relpath), " \
" n.properties) " \
" FROM targets_list AS t " \
" JOIN nodes AS n " \
" ON n.wc_id = ?1 " \
" AND n.local_relpath = t.local_relpath " \
" AND n.op_depth = (SELECT MAX(op_depth) FROM nodes AS n3 " \
" WHERE n3.wc_id = ?1 " \
" AND n3.local_relpath = t.local_relpath) " \
" WHERE t.wc_id = ?1 " \
" AND (presence='normal' OR presence='incomplete') " \
" ORDER BY t.local_relpath " \
""
#define STMT_CACHE_TARGET_PRISTINE_PROPS 160
#define STMT_160_INFO {"STMT_CACHE_TARGET_PRISTINE_PROPS", NULL}
#define STMT_160 \
"INSERT INTO target_prop_cache(local_relpath, kind, properties) " \
" SELECT n.local_relpath, n.kind, " \
" CASE n.presence " \
" WHEN 'base-deleted' " \
" THEN (SELECT properties FROM nodes AS p " \
" WHERE p.wc_id = n.wc_id " \
" AND p.local_relpath = n.local_relpath " \
" AND p.op_depth < n.op_depth " \
" ORDER BY p.op_depth DESC ) " \
" ELSE properties END " \
" FROM targets_list AS t " \
" JOIN nodes AS n " \
" ON n.wc_id = ?1 " \
" AND n.local_relpath = t.local_relpath " \
" AND n.op_depth = (SELECT MAX(op_depth) FROM nodes AS n3 " \
" WHERE n3.wc_id = ?1 " \
" AND n3.local_relpath = t.local_relpath) " \
" WHERE t.wc_id = ?1 " \
" AND (presence = 'normal' " \
" OR presence = 'incomplete' " \
" OR presence = 'base-deleted') " \
" ORDER BY t.local_relpath " \
""
#define STMT_SELECT_ALL_TARGET_PROP_CACHE 161
#define STMT_161_INFO {"STMT_SELECT_ALL_TARGET_PROP_CACHE", NULL}
#define STMT_161 \
"SELECT local_relpath, properties FROM target_prop_cache " \
"ORDER BY local_relpath " \
""
#define STMT_DROP_TARGET_PROP_CACHE 162
#define STMT_162_INFO {"STMT_DROP_TARGET_PROP_CACHE", NULL}
#define STMT_162 \
"DROP TABLE target_prop_cache; " \
""
#define STMT_CREATE_REVERT_LIST 163
#define STMT_163_INFO {"STMT_CREATE_REVERT_LIST", NULL}
#define STMT_163 \
"DROP TABLE IF EXISTS revert_list; " \
"CREATE TEMPORARY TABLE revert_list ( " \
" local_relpath TEXT NOT NULL, " \
" actual INTEGER NOT NULL, " \
" conflict_data BLOB, " \
" notify INTEGER, " \
" op_depth INTEGER, " \
" repos_id INTEGER, " \
" kind TEXT, " \
" PRIMARY KEY (local_relpath, actual) " \
" ); " \
"DROP TRIGGER IF EXISTS trigger_revert_list_nodes; " \
"CREATE TEMPORARY TRIGGER trigger_revert_list_nodes " \
"BEFORE DELETE ON nodes " \
"BEGIN " \
" INSERT OR REPLACE INTO revert_list(local_relpath, actual, op_depth, " \
" repos_id, kind) " \
" SELECT OLD.local_relpath, 0, OLD.op_depth, OLD.repos_id, OLD.kind; " \
"END; " \
"DROP TRIGGER IF EXISTS trigger_revert_list_actual_delete; " \
"CREATE TEMPORARY TRIGGER trigger_revert_list_actual_delete " \
"BEFORE DELETE ON actual_node " \
"BEGIN " \
" INSERT OR REPLACE INTO revert_list(local_relpath, actual, conflict_data, " \
" notify) " \
" SELECT OLD.local_relpath, 1, OLD.conflict_data, " \
" CASE " \
" WHEN OLD.properties IS NOT NULL " \
" THEN 1 " \
" WHEN NOT EXISTS(SELECT 1 FROM NODES n " \
" WHERE n.wc_id = OLD.wc_id " \
" AND n.local_relpath = OLD.local_relpath) " \
" THEN 1 " \
" END notify " \
" WHERE OLD.conflict_data IS NOT NULL " \
" OR notify IS NOT NULL; " \
"END; " \
"DROP TRIGGER IF EXISTS trigger_revert_list_actual_update; " \
"CREATE TEMPORARY TRIGGER trigger_revert_list_actual_update " \
"BEFORE UPDATE ON actual_node " \
"BEGIN " \
" INSERT OR REPLACE INTO revert_list(local_relpath, actual, conflict_data, " \
" notify) " \
" SELECT OLD.local_relpath, 1, OLD.conflict_data, " \
" CASE " \
" WHEN OLD.properties IS NOT NULL " \
" THEN 1 " \
" WHEN NOT EXISTS(SELECT 1 FROM NODES n " \
" WHERE n.wc_id = OLD.wc_id " \
" AND n.local_relpath = OLD.local_relpath) " \
" THEN 1 " \
" END notify " \
" WHERE OLD.conflict_data IS NOT NULL " \
" OR notify IS NOT NULL; " \
"END " \
""
#define STMT_DROP_REVERT_LIST_TRIGGERS 164
#define STMT_164_INFO {"STMT_DROP_REVERT_LIST_TRIGGERS", NULL}
#define STMT_164 \
"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 165
#define STMT_165_INFO {"STMT_SELECT_REVERT_LIST", NULL}
#define STMT_165 \
"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 166
#define STMT_166_INFO {"STMT_SELECT_REVERT_LIST_COPIED_CHILDREN", NULL}
#define STMT_166 \
"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)) " \
" AND op_depth >= ?2 " \
" AND repos_id IS NOT NULL " \
"ORDER BY local_relpath " \
""
#define STMT_DELETE_REVERT_LIST 167
#define STMT_167_INFO {"STMT_DELETE_REVERT_LIST", NULL}
#define STMT_167 \
"DELETE FROM revert_list WHERE local_relpath = ?1 " \
""
#define STMT_SELECT_REVERT_LIST_RECURSIVE 168
#define STMT_168_INFO {"STMT_SELECT_REVERT_LIST_RECURSIVE", NULL}
#define STMT_168 \
"SELECT p.local_relpath, n.kind, a.notify, a.kind " \
"FROM (SELECT DISTINCT local_relpath " \
" 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)))) p " \
"LEFT JOIN revert_list n ON n.local_relpath=p.local_relpath AND n.actual=0 " \
"LEFT JOIN revert_list a ON a.local_relpath=p.local_relpath AND a.actual=1 " \
"ORDER BY p.local_relpath " \
""
#define STMT_DELETE_REVERT_LIST_RECURSIVE 169
#define STMT_169_INFO {"STMT_DELETE_REVERT_LIST_RECURSIVE", NULL}
#define STMT_169 \
"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 170
#define STMT_170_INFO {"STMT_DROP_REVERT_LIST", NULL}
#define STMT_170 \
"DROP TABLE IF EXISTS revert_list " \
""
#define STMT_CREATE_DELETE_LIST 171
#define STMT_171_INFO {"STMT_CREATE_DELETE_LIST", NULL}
#define STMT_171 \
"DROP TABLE IF EXISTS delete_list; " \
"CREATE TEMPORARY TABLE delete_list ( " \
" local_relpath TEXT PRIMARY KEY NOT NULL UNIQUE " \
" ) " \
""
#define STMT_INSERT_DELETE_LIST 172
#define STMT_172_INFO {"STMT_INSERT_DELETE_LIST", NULL}
#define STMT_172 \
"INSERT INTO delete_list(local_relpath) " \
"SELECT ?2 " \
"UNION ALL " \
"SELECT local_relpath FROM nodes AS n " \
"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 " \
" AND op_depth = (SELECT MAX(s.op_depth) FROM nodes AS s " \
" WHERE s.wc_id = ?1 " \
" AND s.local_relpath = n.local_relpath) " \
" AND presence NOT IN ('base-deleted', 'not-present', 'excluded', 'server-excluded') " \
" AND file_external IS NULL " \
"ORDER by local_relpath " \
""
#define STMT_SELECT_DELETE_LIST 173
#define STMT_173_INFO {"STMT_SELECT_DELETE_LIST", NULL}
#define STMT_173 \
"SELECT local_relpath FROM delete_list " \
"ORDER BY local_relpath " \
""
#define STMT_FINALIZE_DELETE 174
#define STMT_174_INFO {"STMT_FINALIZE_DELETE", NULL}
#define STMT_174 \
"DROP TABLE IF EXISTS delete_list " \
""
#define STMT_CREATE_UPDATE_MOVE_LIST 175
#define STMT_175_INFO {"STMT_CREATE_UPDATE_MOVE_LIST", NULL}
#define STMT_175 \
"DROP TABLE IF EXISTS update_move_list; " \
"CREATE TEMPORARY TABLE update_move_list ( " \
" local_relpath TEXT PRIMARY KEY NOT NULL UNIQUE, " \
" action INTEGER NOT NULL, " \
" kind TEXT NOT NULL, " \
" content_state INTEGER NOT NULL, " \
" prop_state INTEGER NOT NULL " \
" ) " \
""
#define STMT_INSERT_UPDATE_MOVE_LIST 176
#define STMT_176_INFO {"STMT_INSERT_UPDATE_MOVE_LIST", NULL}
#define STMT_176 \
"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 177
#define STMT_177_INFO {"STMT_SELECT_UPDATE_MOVE_LIST", NULL}
#define STMT_177 \
"SELECT local_relpath, action, kind, content_state, prop_state " \
"FROM update_move_list " \
"ORDER BY local_relpath " \
""
#define STMT_FINALIZE_UPDATE_MOVE 178
#define STMT_178_INFO {"STMT_FINALIZE_UPDATE_MOVE", NULL}
#define STMT_178 \
"DROP TABLE IF EXISTS update_move_list " \
""
#define STMT_MOVE_NOTIFY_TO_REVERT 179
#define STMT_179_INFO {"STMT_MOVE_NOTIFY_TO_REVERT", NULL}
#define STMT_179 \
"INSERT INTO revert_list (local_relpath, notify, kind, actual) " \
" SELECT local_relpath, 2, kind, 1 FROM update_move_list; " \
"DROP TABLE update_move_list " \
""
#define STMT_SELECT_MIN_MAX_REVISIONS 180
#define STMT_180_INFO {"STMT_SELECT_MIN_MAX_REVISIONS", NULL}
#define STMT_180 \
"SELECT MIN(revision), MAX(revision), " \
" MIN(changed_revision), MAX(changed_revision) 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))) " \
" AND presence IN ('normal', 'incomplete') " \
" AND file_external IS NULL " \
" AND op_depth = 0 " \
""
#define STMT_HAS_SPARSE_NODES 181
#define STMT_181_INFO {"STMT_HAS_SPARSE_NODES", NULL}
#define STMT_181 \
"SELECT 1 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))) " \
" AND op_depth = 0 " \
" AND (presence IN ('server-excluded', 'excluded') " \
" OR depth NOT IN ('infinity', 'unknown')) " \
" AND file_external IS NULL " \
"LIMIT 1 " \
""
#define STMT_SUBTREE_HAS_TREE_MODIFICATIONS 182
#define STMT_182_INFO {"STMT_SUBTREE_HAS_TREE_MODIFICATIONS", NULL}
#define STMT_182 \
"SELECT 1 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))) " \
" AND op_depth > 0 " \
"LIMIT 1 " \
""
#define STMT_SUBTREE_HAS_PROP_MODIFICATIONS 183
#define STMT_183_INFO {"STMT_SUBTREE_HAS_PROP_MODIFICATIONS", NULL}
#define STMT_183 \
"SELECT 1 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))) " \
" AND properties IS NOT NULL " \
"LIMIT 1 " \
""
#define STMT_HAS_SWITCHED 184
#define STMT_184_INFO {"STMT_HAS_SWITCHED", NULL}
#define STMT_184 \
"SELECT 1 " \
"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)) " \
" AND op_depth = 0 " \
" AND file_external IS NULL " \
" AND presence IN ('normal', 'incomplete') " \
" AND repos_path IS NOT (CASE WHEN (?2) = '' THEN (CASE WHEN (?3) = '' THEN (local_relpath) WHEN (local_relpath) = '' THEN (?3) ELSE (?3) || '/' || (local_relpath) END) WHEN (?3) = '' THEN (CASE WHEN (?2) = '' THEN (local_relpath) WHEN SUBSTR((local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(local_relpath) THEN '' WHEN SUBSTR((local_relpath), LENGTH(?2)+1, 1) = '/' THEN SUBSTR((local_relpath), LENGTH(?2)+2) END END) WHEN SUBSTR((local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(local_relpath) THEN (?3) WHEN SUBSTR((local_relpath), LENGTH(?2)+1, 1) = '/' THEN (?3) || SUBSTR((local_relpath), LENGTH(?2)+1) END END) " \
"LIMIT 1 " \
""
#define STMT_SELECT_MOVED_FROM_RELPATH 185
#define STMT_185_INFO {"STMT_SELECT_MOVED_FROM_RELPATH", NULL}
#define STMT_185 \
"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 186
#define STMT_186_INFO {"STMT_UPDATE_MOVED_TO_RELPATH", NULL}
#define STMT_186 \
"UPDATE nodes SET moved_to = ?4 " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \
""
#define STMT_CLEAR_MOVED_TO_RELPATH 187
#define STMT_187_INFO {"STMT_CLEAR_MOVED_TO_RELPATH", NULL}
#define STMT_187 \
"UPDATE nodes SET moved_to = NULL " \
"WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3 " \
""
#define STMT_CLEAR_MOVED_HERE_RECURSIVE 188
#define STMT_188_INFO {"STMT_CLEAR_MOVED_HERE_RECURSIVE", NULL}
#define STMT_188 \
"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 189
#define STMT_189_INFO {"STMT_SELECT_MOVED_HERE_CHILDREN", NULL}
#define STMT_189 \
"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 190
#define STMT_190_INFO {"STMT_SELECT_MOVED_FOR_DELETE", NULL}
#define STMT_190 \
"SELECT local_relpath, moved_to, op_depth, " \
" (SELECT CASE WHEN r.moved_here THEN r.op_depth END FROM nodes r " \
" WHERE r.wc_id = ?1 " \
" AND r.local_relpath = n.local_relpath " \
" AND r.op_depth < n.op_depth " \
" ORDER BY r.op_depth DESC LIMIT 1) AS moved_here_op_depth " \
" FROM nodes n " \
"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 moved_to IS NOT NULL " \
" AND op_depth >= ?3 " \
""
#define STMT_SELECT_MOVED_FROM_FOR_DELETE 191
#define STMT_191_INFO {"STMT_SELECT_MOVED_FROM_FOR_DELETE", NULL}
#define STMT_191 \
"SELECT local_relpath, op_depth, " \
" (SELECT CASE WHEN r.moved_here THEN r.op_depth END FROM nodes r " \
" WHERE r.wc_id = ?1 " \
" AND r.local_relpath = n.local_relpath " \
" AND r.op_depth < n.op_depth " \
" ORDER BY r.op_depth DESC LIMIT 1) AS moved_here_op_depth " \
" FROM nodes n " \
"WHERE wc_id = ?1 AND moved_to = ?2 AND op_depth > 0 " \
""
#define STMT_UPDATE_MOVED_TO_DESCENDANTS 192
#define STMT_192_INFO {"STMT_UPDATE_MOVED_TO_DESCENDANTS", NULL}
#define STMT_192 \
"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 193
#define STMT_193_INFO {"STMT_CLEAR_MOVED_TO_DESCENDANTS", NULL}
#define STMT_193 \
"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_PAIR3 194
#define STMT_194_INFO {"STMT_SELECT_MOVED_PAIR3", NULL}
#define STMT_194 \
"SELECT n.local_relpath, d.moved_to, d.op_depth, n.kind " \
"FROM nodes n " \
"JOIN nodes d ON d.wc_id = ?1 AND d.local_relpath = n.local_relpath " \
" AND d.op_depth = (SELECT MIN(dd.op_depth) " \
" FROM nodes dd " \
" WHERE dd.wc_id = ?1 " \
" AND dd.local_relpath = d.local_relpath " \
" AND dd.op_depth > ?3) " \
"WHERE n.wc_id = ?1 AND n.local_relpath = ?2 AND n.op_depth = ?3 " \
" AND d.moved_to IS NOT NULL " \
"UNION ALL " \
"SELECT n.local_relpath, d.moved_to, d.op_depth, n.kind " \
"FROM nodes n " \
"JOIN nodes d ON d.wc_id = ?1 AND d.local_relpath = n.local_relpath " \
" AND d.op_depth = (SELECT MIN(dd.op_depth) " \
" FROM nodes dd " \
" WHERE dd.wc_id = ?1 " \
" AND dd.local_relpath = d.local_relpath " \
" AND dd.op_depth > ?3) " \
"WHERE n.wc_id = ?1 AND (((n.local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((n.local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END)) " \
" AND n.op_depth = ?3 " \
" AND d.moved_to IS NOT NULL " \
"ORDER BY n.local_relpath " \
""
#define STMT_SELECT_MOVED_OUTSIDE 195
#define STMT_195_INFO {"STMT_SELECT_MOVED_OUTSIDE", NULL}
#define STMT_195 \
"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))) " \
" AND op_depth >= ?3 " \
" AND moved_to IS NOT NULL " \
" 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_MOVED_DESCENDANTS_SRC 196
#define STMT_196_INFO {"STMT_SELECT_MOVED_DESCENDANTS_SRC", NULL}
#define STMT_196 \
"SELECT s.op_depth, n.local_relpath, n.kind, n.repos_path, s.moved_to " \
"FROM nodes n " \
"JOIN nodes s ON s.wc_id = n.wc_id AND s.local_relpath = n.local_relpath " \
" AND s.op_depth = (SELECT MIN(d.op_depth) " \
" FROM nodes d " \
" WHERE d.wc_id = ?1 " \
" AND d.local_relpath = s.local_relpath " \
" AND d.op_depth > ?3) " \
"WHERE n.wc_id = ?1 AND n.op_depth = ?3 " \
" AND (n.local_relpath = ?2 OR (((n.local_relpath) > (CASE (?2) WHEN '' THEN '' ELSE (?2) || '/' END)) AND ((n.local_relpath) < CASE (?2) WHEN '' THEN X'FFFF' ELSE (?2) || '0' END))) " \
" AND s.moved_to IS NOT NULL " \
""
#define STMT_COMMIT_UPDATE_ORIGIN 197
#define STMT_197_INFO {"STMT_COMMIT_UPDATE_ORIGIN", NULL}
#define STMT_197 \
"UPDATE nodes SET repos_id = ?4, " \
" repos_path = (CASE WHEN (?2) = '' THEN (CASE WHEN (?5) = '' THEN (local_relpath) WHEN (local_relpath) = '' THEN (?5) ELSE (?5) || '/' || (local_relpath) END) WHEN (?5) = '' THEN (CASE WHEN (?2) = '' THEN (local_relpath) WHEN SUBSTR((local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(local_relpath) THEN '' WHEN SUBSTR((local_relpath), LENGTH(?2)+1, 1) = '/' THEN SUBSTR((local_relpath), LENGTH(?2)+2) END END) WHEN SUBSTR((local_relpath), 1, LENGTH(?2)) = (?2) THEN CASE WHEN LENGTH(?2) = LENGTH(local_relpath) THEN (?5) WHEN SUBSTR((local_relpath), LENGTH(?2)+1, 1) = '/' THEN (?5) || SUBSTR((local_relpath), LENGTH(?2)+1) END END), " \
" revision = ?6 " \
"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_HAS_LAYER_BETWEEN 198
#define STMT_198_INFO {"STMT_HAS_LAYER_BETWEEN", NULL}
#define STMT_198 \
"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 199
#define STMT_199_INFO {"STMT_SELECT_REPOS_PATH_REVISION", NULL}
#define STMT_199 \
"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)) " \
" AND op_depth = 0 " \
"ORDER BY local_relpath " \
""
#define STMT_SELECT_HAS_NON_FILE_CHILDREN 200
#define STMT_200_INFO {"STMT_SELECT_HAS_NON_FILE_CHILDREN", NULL}
#define STMT_200 \
"SELECT 1 FROM nodes " \
"WHERE wc_id = ?1 AND parent_relpath = ?2 AND op_depth = ?3 AND kind != 'file' " \
"LIMIT 1 " \
""
#define STMT_SELECT_HAS_GRANDCHILDREN 201
#define STMT_201_INFO {"STMT_SELECT_HAS_GRANDCHILDREN", NULL}
#define STMT_201 \
"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)) " \
" AND op_depth = ?3 " \
" AND file_external IS NULL " \
"LIMIT 1 " \
""
#define STMT_SELECT_ALL_NODES 202
#define STMT_202_INFO {"STMT_SELECT_ALL_NODES", NULL}
#define STMT_202 \
"SELECT op_depth, local_relpath, parent_relpath, file_external FROM nodes " \
"WHERE wc_id = ?1 " \
""
#define STMT_UPDATE_IPROP 203
#define STMT_203_INFO {"STMT_UPDATE_IPROP", NULL}
#define STMT_203 \
"UPDATE nodes " \
"SET inherited_props = ?3 " \
"WHERE (wc_id = ?1 AND local_relpath = ?2 AND op_depth = 0) " \
""
#define STMT_SELECT_IPROPS_NODE 204
#define STMT_204_INFO {"STMT_SELECT_IPROPS_NODE", NULL}
#define STMT_204 \
"SELECT local_relpath, repos_path FROM nodes " \
"WHERE wc_id = ?1 " \
" AND local_relpath = ?2 " \
" AND op_depth = 0 " \
" AND (inherited_props not null) " \
""
#define STMT_SELECT_IPROPS_RECURSIVE 205
#define STMT_205_INFO {"STMT_SELECT_IPROPS_RECURSIVE", NULL}
#define STMT_205 \
"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)) " \
" AND op_depth = 0 " \
" AND (inherited_props not null) " \
""
#define STMT_SELECT_IPROPS_CHILDREN 206
#define STMT_206_INFO {"STMT_SELECT_IPROPS_CHILDREN", NULL}
#define STMT_206 \
"SELECT local_relpath, repos_path FROM nodes " \
"WHERE wc_id = ?1 " \
" AND parent_relpath = ?2 " \
" AND op_depth = 0 " \
" AND (inherited_props not null) " \
""
#define STMT_HAVE_STAT1_TABLE 207
#define STMT_207_INFO {"STMT_HAVE_STAT1_TABLE", NULL}
#define STMT_207 \
"SELECT 1 FROM sqlite_master WHERE name='sqlite_stat1' AND type='table' " \
"LIMIT 1 " \
""
#define STMT_SELECT_COPIES_OF_REPOS_RELPATH 208
#define STMT_208_INFO {"STMT_SELECT_COPIES_OF_REPOS_RELPATH", NULL}
#define STMT_208 \
"SELECT local_relpath " \
"FROM nodes n " \
"WHERE wc_id = ?1 AND repos_path = ?2 AND kind = ?3 " \
" AND presence = 'normal' " \
" AND op_depth = (SELECT MAX(op_depth) " \
" FROM NODES w " \
" WHERE w.wc_id = ?1 " \
" AND w.local_relpath = n.local_relpath) " \
"ORDER BY local_relpath ASC " \
""
#define STMT_CREATE_SCHEMA 209
#define STMT_209_INFO {"STMT_CREATE_SCHEMA", NULL}
#define STMT_209 \
"CREATE TABLE REPOSITORY ( " \
" id INTEGER PRIMARY KEY AUTOINCREMENT, " \
" root TEXT UNIQUE NOT NULL, " \
" uuid TEXT NOT NULL " \
" ); " \
"CREATE INDEX I_UUID ON REPOSITORY (uuid); " \
"CREATE INDEX I_ROOT ON REPOSITORY (root); " \
"CREATE TABLE WCROOT ( " \
" id INTEGER PRIMARY KEY AUTOINCREMENT, " \
" local_abspath TEXT UNIQUE " \
" ); " \
"CREATE UNIQUE INDEX I_LOCAL_ABSPATH ON WCROOT (local_abspath); " \
"CREATE TABLE PRISTINE ( " \
" checksum TEXT NOT NULL PRIMARY KEY, " \
" compression INTEGER, " \
" size INTEGER NOT NULL, " \
" refcount INTEGER NOT NULL, " \
" md5_checksum TEXT NOT NULL " \
" ); " \
"CREATE INDEX I_PRISTINE_MD5 ON PRISTINE (md5_checksum); " \
"CREATE TABLE ACTUAL_NODE ( " \
" wc_id INTEGER NOT NULL REFERENCES WCROOT (id), " \
" local_relpath TEXT NOT NULL, " \
" parent_relpath TEXT, " \
" properties BLOB, " \
" conflict_old TEXT, " \
" conflict_new TEXT, " \
" conflict_working TEXT, " \
" prop_reject TEXT, " \
" changelist TEXT, " \
" text_mod TEXT, " \
" tree_conflict_data TEXT, " \
" conflict_data BLOB, " \
" older_checksum TEXT REFERENCES PRISTINE (checksum), " \
" left_checksum TEXT REFERENCES PRISTINE (checksum), " \
" right_checksum TEXT REFERENCES PRISTINE (checksum), " \
" PRIMARY KEY (wc_id, local_relpath) " \
" ); " \
"CREATE UNIQUE INDEX I_ACTUAL_PARENT ON ACTUAL_NODE (wc_id, parent_relpath, " \
" local_relpath); " \
"CREATE TABLE LOCK ( " \
" repos_id INTEGER NOT NULL REFERENCES REPOSITORY (id), " \
" repos_relpath TEXT NOT NULL, " \
" lock_token TEXT NOT NULL, " \
" lock_owner TEXT, " \
" lock_comment TEXT, " \
" lock_date INTEGER, " \
" PRIMARY KEY (repos_id, repos_relpath) " \
" ); " \
"CREATE TABLE WORK_QUEUE ( " \
" id INTEGER PRIMARY KEY AUTOINCREMENT, " \
" work BLOB NOT NULL " \
" ); " \
"CREATE TABLE WC_LOCK ( " \
" wc_id INTEGER NOT NULL REFERENCES WCROOT (id), " \
" local_dir_relpath TEXT NOT NULL, " \
" locked_levels INTEGER NOT NULL DEFAULT -1, " \
" PRIMARY KEY (wc_id, local_dir_relpath) " \
" ); " \
"CREATE TABLE NODES ( " \
" wc_id INTEGER NOT NULL REFERENCES WCROOT (id), " \
" local_relpath TEXT NOT NULL, " \
" op_depth INTEGER NOT NULL, " \
" parent_relpath TEXT, " \
" repos_id INTEGER REFERENCES REPOSITORY (id), " \
" repos_path TEXT, " \
" revision INTEGER, " \
" presence TEXT NOT NULL, " \
" moved_here INTEGER, " \
" moved_to TEXT, " \
" kind TEXT NOT NULL, " \
" properties BLOB, " \
" depth TEXT, " \
" checksum TEXT REFERENCES PRISTINE (checksum), " \
" symlink_target TEXT, " \
" changed_revision INTEGER, " \
" changed_date INTEGER, " \
" changed_author TEXT, " \
" translated_size INTEGER, " \
" last_mod_time INTEGER, " \
" dav_cache BLOB, " \
" file_external INTEGER, " \
" inherited_props BLOB, " \
" PRIMARY KEY (wc_id, local_relpath, op_depth) " \
" ); " \
"CREATE UNIQUE INDEX I_NODES_PARENT ON NODES (wc_id, parent_relpath, " \
" local_relpath, op_depth); " \
"CREATE UNIQUE INDEX I_NODES_MOVED ON NODES (wc_id, moved_to, op_depth); " \
"CREATE VIEW NODES_CURRENT AS " \
" SELECT * FROM nodes AS n " \
" WHERE op_depth = (SELECT MAX(op_depth) FROM nodes AS n2 " \
" WHERE n2.wc_id = n.wc_id " \
" AND n2.local_relpath = n.local_relpath); " \
"CREATE VIEW NODES_BASE AS " \
" SELECT * FROM nodes " \
" WHERE op_depth = 0; " \
"CREATE TRIGGER nodes_insert_trigger " \
"AFTER INSERT ON nodes " \
"WHEN NEW.checksum IS NOT NULL " \
"BEGIN " \
" UPDATE pristine SET refcount = refcount + 1 " \
" WHERE checksum = NEW.checksum; " \
"END; " \
"CREATE TRIGGER nodes_delete_trigger " \
"AFTER DELETE ON nodes " \
"WHEN OLD.checksum IS NOT NULL " \
"BEGIN " \
" UPDATE pristine SET refcount = refcount - 1 " \
" WHERE checksum = OLD.checksum; " \
"END; " \
"CREATE TRIGGER nodes_update_checksum_trigger " \
"AFTER UPDATE OF checksum ON nodes " \
"WHEN NEW.checksum IS NOT OLD.checksum " \
"BEGIN " \
" UPDATE pristine SET refcount = refcount + 1 " \
" WHERE checksum = NEW.checksum; " \
" UPDATE pristine SET refcount = refcount - 1 " \
" WHERE checksum = OLD.checksum; " \
"END; " \
"CREATE TABLE EXTERNALS ( " \
" wc_id INTEGER NOT NULL REFERENCES WCROOT (id), " \
" local_relpath TEXT NOT NULL, " \
" parent_relpath TEXT NOT NULL, " \
" repos_id INTEGER NOT NULL REFERENCES REPOSITORY (id), " \
" presence TEXT NOT NULL, " \
" kind TEXT NOT NULL, " \
" def_local_relpath TEXT NOT NULL, " \
" def_repos_relpath TEXT NOT NULL, " \
" def_operational_revision TEXT, " \
" def_revision TEXT, " \
" PRIMARY KEY (wc_id, local_relpath) " \
"); " \
"CREATE UNIQUE INDEX I_EXTERNALS_DEFINED ON EXTERNALS (wc_id, " \
" def_local_relpath, " \
" local_relpath); " \
"PRAGMA user_version = " \
APR_STRINGIFY(SVN_WC__VERSION) \
"; " \
""
#define STMT_INSTALL_SCHEMA_STATISTICS 210
#define STMT_210_INFO {"STMT_INSTALL_SCHEMA_STATISTICS", NULL}
#define STMT_210 \
"ANALYZE sqlite_master; " \
"DELETE FROM sqlite_stat1 " \
"WHERE tbl in ('NODES', 'ACTUAL_NODE', 'LOCK', 'WC_LOCK', 'EXTERNALS'); " \
"INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES " \
" ('NODES', 'sqlite_autoindex_NODES_1', '8000 8000 2 1'); " \
"INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES " \
" ('NODES', 'I_NODES_PARENT', '8000 8000 10 2 1'); " \
"INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES " \
" ('NODES', 'I_NODES_MOVED', '8000 8000 1 1'); " \
"INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES " \
" ('ACTUAL_NODE', 'sqlite_autoindex_ACTUAL_NODE_1', '8000 8000 1'); " \
"INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES " \
" ('ACTUAL_NODE', 'I_ACTUAL_PARENT', '8000 8000 10 1'); " \
"INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES " \
" ('LOCK', 'sqlite_autoindex_LOCK_1', '100 100 1'); " \
"INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES " \
" ('WC_LOCK', 'sqlite_autoindex_WC_LOCK_1', '100 100 1'); " \
"INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES " \
" ('EXTERNALS','sqlite_autoindex_EXTERNALS_1', '100 100 1'); " \
"INSERT INTO sqlite_stat1(tbl, idx, stat) VALUES " \
" ('EXTERNALS','I_EXTERNALS_DEFINED', '100 100 3 1'); " \
"ANALYZE sqlite_master; " \
""
#define STMT_UPGRADE_TO_30 211
#define STMT_211_INFO {"STMT_UPGRADE_TO_30", NULL}
#define STMT_211 \
"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); " \
"UPDATE nodes SET presence = \"server-excluded\" WHERE presence = \"absent\"; " \
"UPDATE nodes SET file_external=1 WHERE file_external IS NOT NULL; " \
""
#define STMT_UPGRADE_30_SELECT_CONFLICT_SEPARATE 212
#define STMT_212_INFO {"STMT_UPGRADE_30_SELECT_CONFLICT_SEPARATE", NULL}
#define STMT_212 \
"SELECT wc_id, local_relpath, " \
" conflict_old, conflict_working, conflict_new, prop_reject, tree_conflict_data " \
"FROM actual_node " \
"WHERE conflict_old IS NOT NULL " \
" OR conflict_working IS NOT NULL " \
" OR conflict_new IS NOT NULL " \
" OR prop_reject IS NOT NULL " \
" OR tree_conflict_data IS NOT NULL " \
"ORDER by wc_id, local_relpath " \
""
#define STMT_UPGRADE_30_SET_CONFLICT 213
#define STMT_213_INFO {"STMT_UPGRADE_30_SET_CONFLICT", NULL}
#define STMT_213 \
"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 214
#define STMT_214_INFO {"STMT_UPGRADE_TO_31", NULL}
#define STMT_214 \
"ALTER TABLE NODES ADD COLUMN inherited_props BLOB; " \
"DROP INDEX IF EXISTS I_ACTUAL_CHANGELIST; " \
"DROP INDEX IF EXISTS I_EXTERNALS_PARENT; " \
"DROP INDEX I_NODES_PARENT; " \
"CREATE UNIQUE INDEX I_NODES_PARENT ON NODES (wc_id, parent_relpath, " \
" local_relpath, op_depth); " \
"DROP INDEX I_ACTUAL_PARENT; " \
"CREATE UNIQUE INDEX I_ACTUAL_PARENT ON ACTUAL_NODE (wc_id, parent_relpath, " \
" local_relpath); " \
"PRAGMA user_version = 31; " \
""
#define STMT_UPGRADE_31_SELECT_WCROOT_NODES 215
#define STMT_215_INFO {"STMT_UPGRADE_31_SELECT_WCROOT_NODES", NULL}
#define STMT_215 \
"SELECT l.wc_id, l.local_relpath FROM nodes as l " \
"LEFT OUTER JOIN nodes as r " \
"ON l.wc_id = r.wc_id " \
" AND r.local_relpath = l.parent_relpath " \
" AND r.op_depth = 0 " \
"WHERE l.op_depth = 0 " \
" AND l.repos_path != '' " \
" AND ((l.repos_id IS NOT r.repos_id) " \
" 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 WC_QUERIES_SQL_99 \
"CREATE TABLE ACTUAL_NODE_BACKUP ( " \
" wc_id INTEGER NOT NULL, " \
" local_relpath TEXT NOT NULL, " \
" parent_relpath TEXT, " \
" properties BLOB, " \
" conflict_old TEXT, " \
" conflict_new TEXT, " \
" conflict_working TEXT, " \
" prop_reject TEXT, " \
" changelist TEXT, " \
" text_mod TEXT " \
" ); " \
"INSERT INTO ACTUAL_NODE_BACKUP SELECT " \
" wc_id, local_relpath, parent_relpath, properties, conflict_old, " \
" conflict_new, conflict_working, prop_reject, changelist, text_mod " \
"FROM ACTUAL_NODE; " \
"DROP TABLE ACTUAL_NODE; " \
"CREATE TABLE ACTUAL_NODE ( " \
" wc_id INTEGER NOT NULL REFERENCES WCROOT (id), " \
" local_relpath TEXT NOT NULL, " \
" parent_relpath TEXT, " \
" properties BLOB, " \
" conflict_old TEXT, " \
" conflict_new TEXT, " \
" conflict_working TEXT, " \
" prop_reject TEXT, " \
" changelist TEXT, " \
" text_mod TEXT, " \
" PRIMARY KEY (wc_id, local_relpath) " \
" ); " \
"CREATE UNIQUE INDEX I_ACTUAL_PARENT ON ACTUAL_NODE (wc_id, parent_relpath, " \
" local_relpath); " \
"INSERT INTO ACTUAL_NODE SELECT " \
" wc_id, local_relpath, parent_relpath, properties, conflict_old, " \
" conflict_new, conflict_working, prop_reject, changelist, text_mod " \
"FROM ACTUAL_NODE_BACKUP; " \
"DROP TABLE ACTUAL_NODE_BACKUP; " \
""
#define STMT_VERIFICATION_TRIGGERS 216
#define STMT_216_INFO {"STMT_VERIFICATION_TRIGGERS", NULL}
#define STMT_216 \
"CREATE TEMPORARY TRIGGER no_repository_updates BEFORE UPDATE ON repository " \
"BEGIN " \
" SELECT RAISE(FAIL, 'Updates to REPOSITORY are not allowed.'); " \
"END; " \
"CREATE TEMPORARY TRIGGER validation_01 BEFORE INSERT ON nodes " \
"WHEN NOT ((new.local_relpath = '' AND new.parent_relpath IS NULL) " \
" OR (relpath_depth(new.local_relpath) " \
" = relpath_depth(new.parent_relpath) + 1)) " \
"BEGIN " \
" SELECT RAISE(FAIL, 'WC DB validity check 01 failed'); " \
"END; " \
"CREATE TEMPORARY TRIGGER validation_02 BEFORE INSERT ON nodes " \
"WHEN NOT new.op_depth <= relpath_depth(new.local_relpath) " \
"BEGIN " \
" SELECT RAISE(FAIL, 'WC DB validity check 02 failed'); " \
"END; " \
"CREATE TEMPORARY TRIGGER validation_03 BEFORE INSERT ON nodes " \
"WHEN NOT ( " \
" (new.op_depth = relpath_depth(new.local_relpath)) " \
" OR " \
" (EXISTS (SELECT 1 FROM nodes " \
" WHERE wc_id = new.wc_id AND op_depth = new.op_depth " \
" AND local_relpath = new.parent_relpath)) " \
" ) " \
" AND NOT (new.file_external IS NOT NULL AND new.op_depth = 0) " \
"BEGIN " \
" SELECT RAISE(FAIL, 'WC DB validity check 03 failed'); " \
"END; " \
"CREATE TEMPORARY TRIGGER validation_04 BEFORE INSERT ON actual_node " \
"WHEN NOT (new.local_relpath = '' " \
" OR EXISTS (SELECT 1 FROM nodes " \
" WHERE wc_id = new.wc_id " \
" AND local_relpath = new.parent_relpath)) " \
"BEGIN " \
" SELECT RAISE(FAIL, 'WC DB validity check 04 failed'); " \
"END; " \
""
#define STMT_STATIC_VERIFY 217
#define STMT_217_INFO {"STMT_STATIC_VERIFY", NULL}
#define STMT_217 \
"SELECT local_relpath, op_depth, 1, 'Invalid parent relpath set in NODES' " \
"FROM nodes n WHERE local_relpath != '' " \
" AND (parent_relpath IS NULL " \
" OR NOT (((local_relpath) > (CASE (parent_relpath) WHEN '' THEN '' ELSE (parent_relpath) || '/' END)) AND ((local_relpath) < CASE (parent_relpath) WHEN '' THEN X'FFFF' ELSE (parent_relpath) || '0' END)) " \
" OR relpath_depth(local_relpath) != relpath_depth(parent_relpath)+1) " \
"UNION ALL " \
"SELECT local_relpath, -1, 2, 'Invalid parent relpath set in ACTUAL' " \
"FROM actual_node a WHERE local_relpath != '' " \
" AND (parent_relpath IS NULL " \
" OR NOT (((local_relpath) > (CASE (parent_relpath) WHEN '' THEN '' ELSE (parent_relpath) || '/' END)) AND ((local_relpath) < CASE (parent_relpath) WHEN '' THEN X'FFFF' ELSE (parent_relpath) || '0' END)) " \
" OR relpath_depth(local_relpath) != relpath_depth(parent_relpath)+1) " \
"UNION ALL " \
"SELECT local_relpath, -1, 10, 'No ancestor in ACTUAL' " \
"FROM actual_node a WHERE local_relpath != '' " \
" AND NOT EXISTS(SELECT 1 from nodes i " \
" WHERE i.wc_id=a.wc_id " \
" AND i.local_relpath=a.parent_relpath) " \
" AND NOT EXISTS(SELECT 1 from nodes i " \
" WHERE i.wc_id=a.wc_id " \
" AND i.local_relpath=a.local_relpath) " \
"UNION ALL " \
"SELECT a.local_relpath, -1, 11, 'Bad or Unneeded actual data' " \
"FROM actual_node a " \
"LEFT JOIN nodes n on n.wc_id = a.wc_id AND n.local_relpath = a.local_relpath " \
" AND n.op_depth = (SELECT MAX(op_depth) from nodes i " \
" WHERE i.wc_id=a.wc_id AND i.local_relpath=a.local_relpath) " \
"WHERE (a.properties IS NOT NULL " \
" AND (n.presence IS NULL " \
" OR n.presence NOT IN ('normal', 'incomplete'))) " \
" OR (a.changelist IS NOT NULL AND (n.kind IS NOT NULL AND n.kind != 'file')) " \
" OR (a.conflict_data IS NULL AND a.properties IS NULL AND a.changelist IS NULL) " \
" AND NOT EXISTS(SELECT 1 from nodes i " \
" WHERE i.wc_id=a.wc_id " \
" AND i.local_relpath=a.parent_relpath) " \
"UNION ALL " \
"SELECT local_relpath, op_depth, 20, 'No ancestor in NODES' " \
"FROM nodes n WHERE local_relpath != '' " \
" AND file_external IS NULL " \
" AND NOT EXISTS(SELECT 1 from nodes i " \
" WHERE i.wc_id=n.wc_id " \
" AND i.local_relpath=n.parent_relpath " \
" AND i.op_depth <= n.op_depth) " \
"UNION ALL " \
"SELECT local_relpath, op_depth, 21, 'Unneeded node data' " \
"FROM nodes " \
"WHERE presence NOT IN ('normal', 'incomplete') " \
"AND (properties IS NOT NULL " \
" OR checksum IS NOT NULL " \
" OR depth IS NOT NULL " \
" OR symlink_target IS NOT NULL " \
" OR changed_revision IS NOT NULL " \
" OR (changed_date IS NOT NULL AND changed_date != 0) " \
" OR changed_author IS NOT NULL " \
" OR translated_size IS NOT NULL " \
" OR last_mod_time IS NOT NULL " \
" OR dav_cache IS NOT NULL " \
" OR file_external IS NOT NULL " \
" OR inherited_props IS NOT NULL) " \
"UNION ALL " \
"SELECT local_relpath, op_depth, 22, 'Unneeded base-deleted node data' " \
"FROM nodes " \
"WHERE presence IN ('base-deleted') " \
"AND (repos_id IS NOT NULL " \
" OR repos_path IS NOT NULL " \
" OR revision IS NOT NULL) " \
"UNION ALL " \
"SELECT local_relpath, op_depth, 23, 'Kind specific data invalid on normal' " \
"FROM nodes " \
"WHERE presence IN ('normal', 'incomplete') " \
"AND (kind IS NULL " \
" OR (repos_path IS NULL " \
" AND (properties IS NOT NULL " \
" OR changed_revision IS NOT NULL " \
" OR changed_author IS NOT NULL " \
" OR (changed_date IS NOT NULL AND changed_date != 0))) " \
" OR (CASE WHEN kind = 'file' AND repos_path IS NOT NULL " \
" THEN checksum IS NULL " \
" ELSE checksum IS NOT NULL END) " \
" OR (CASE WHEN kind = 'dir' THEN depth IS NULL " \
" ELSE depth IS NOT NULL END) " \
" OR (CASE WHEN kind = 'symlink' THEN symlink_target IS NULL " \
" ELSE symlink_target IS NOT NULL END)) " \
"UNION ALL " \
"SELECT local_relpath, op_depth, 24, 'Invalid op-depth for local add' " \
"FROM nodes " \
"WHERE presence IN ('normal', 'incomplete') " \
" AND repos_path IS NULL " \
" AND op_depth != relpath_depth(local_relpath) " \
"UNION ALL " \
"SELECT local_relpath, op_depth, 25, 'Node missing op-depth ancestor' " \
"FROM nodes n " \
"WHERE op_depth < relpath_depth(local_relpath) " \
" AND file_external IS NULL " \
" AND NOT EXISTS(SELECT 1 FROM nodes p " \
" WHERE p.wc_id=n.wc_id AND p.local_relpath=n.parent_relpath " \
" AND p.op_depth=n.op_depth " \
" AND (p.presence IN ('normal', 'incomplete') " \
" OR (p.presence IN ('base-deleted', 'not-present') " \
" AND n.presence = 'base-deleted'))) " \
"UNION ALL " \
"SELECT n.local_relpath, n.op_depth, 26, 'Copied descendant mismatch' " \
"FROM nodes n " \
"JOIN nodes p " \
" ON p.wc_id=n.wc_id AND p.local_relpath=n.parent_relpath " \
" AND n.op_depth=p.op_depth " \
"WHERE n.op_depth > 0 AND n.presence IN ('normal', 'incomplete') " \
" AND (n.repos_id != p.repos_id " \
" OR n.repos_path != " \
" (CASE WHEN (n.parent_relpath) = '' THEN (CASE WHEN (p.repos_path) = '' THEN (n.local_relpath) WHEN (n.local_relpath) = '' THEN (p.repos_path) ELSE (p.repos_path) || '/' || (n.local_relpath) END) WHEN (p.repos_path) = '' THEN (CASE WHEN (n.parent_relpath) = '' THEN (n.local_relpath) WHEN SUBSTR((n.local_relpath), 1, LENGTH(n.parent_relpath)) = (n.parent_relpath) THEN CASE WHEN LENGTH(n.parent_relpath) = LENGTH(n.local_relpath) THEN '' WHEN SUBSTR((n.local_relpath), LENGTH(n.parent_relpath)+1, 1) = '/' THEN SUBSTR((n.local_relpath), LENGTH(n.parent_relpath)+2) END END) WHEN SUBSTR((n.local_relpath), 1, LENGTH(n.parent_relpath)) = (n.parent_relpath) THEN CASE WHEN LENGTH(n.parent_relpath) = LENGTH(n.local_relpath) THEN (p.repos_path) WHEN SUBSTR((n.local_relpath), LENGTH(n.parent_relpath)+1, 1) = '/' THEN (p.repos_path) || SUBSTR((n.local_relpath), LENGTH(n.parent_relpath)+1) END END) " \
" OR n.revision != p.revision " \
" OR p.kind != 'dir' " \
" OR n.moved_here IS NOT p.moved_here) " \
"UNION ALL " \
"SELECT n.local_relpath, n.op_depth, 27, 'Invalid op-root presence' " \
"FROM nodes n " \
"WHERE n.op_depth = relpath_depth(local_relpath) " \
" AND presence NOT IN ('normal', 'incomplete', 'base-deleted') " \
"UNION ALL " \
"SELECT n.local_relpath, s.op_depth, 28, 'Incomplete shadowing' " \
"FROM nodes n " \
"JOIN nodes s ON s.wc_id=n.wc_id AND s.local_relpath=n.local_relpath " \
" AND s.op_depth = relpath_depth(s.local_relpath) " \
" AND s.op_depth = (SELECT MIN(op_depth) FROM nodes d " \
" WHERE d.wc_id=s.wc_id AND d.local_relpath=s.local_relpath " \
" AND d.op_depth > n.op_depth) " \
"WHERE n.presence IN ('normal', 'incomplete') " \
" AND EXISTS(SELECT 1 " \
" FROM nodes dn " \
" WHERE dn.wc_id=n.wc_id AND dn.op_depth=n.op_depth " \
" AND dn.presence IN ('normal', 'incomplete') " \
" AND (((dn.local_relpath) > (CASE (n.local_relpath) WHEN '' THEN '' ELSE (n.local_relpath) || '/' END)) AND ((dn.local_relpath) < CASE (n.local_relpath) WHEN '' THEN X'FFFF' ELSE (n.local_relpath) || '0' END)) " \
" AND dn.file_external IS NULL " \
" AND NOT EXISTS(SELECT 1 " \
" FROM nodes ds " \
" WHERE ds.wc_id=n.wc_id AND ds.op_depth=s.op_depth " \
" AND ds.local_relpath=dn.local_relpath)) " \
"UNION ALL " \
"SELECT s.local_relpath, s.op_depth, 29, 'Invalid base-delete' " \
"FROM nodes s " \
"LEFT JOIN nodes n ON n.wc_id=s.wc_id AND n.local_relpath=s.local_relpath " \
" AND n.op_depth = (SELECT MAX(op_depth) FROM nodes d " \
" WHERE d.wc_id=s.wc_id AND d.local_relpath=s.local_relpath " \
" AND d.op_depth < s.op_depth) " \
"WHERE s.presence = 'base-deleted' " \
" AND (n.presence IS NULL " \
" OR n.presence NOT IN ('normal', 'incomplete') " \
" ) " \
"UNION ALL " \
"SELECT n.local_relpath, n.op_depth, 30, 'Invalid data for BASE' " \
"FROM nodes n " \
"WHERE n.op_depth = 0 " \
" AND (n.moved_to IS NOT NULL " \
" OR n.moved_here IS NOT NULL) " \
"UNION ALL " \
"SELECT d.local_relpath, d.op_depth, 60, 'Moved here without origin' " \
"FROM nodes d " \
"WHERE d.op_depth = relpath_depth(d.local_relpath) " \
" AND d.moved_here IS NOT NULL " \
" AND NOT EXISTS(SELECT 1 FROM nodes s " \
" WHERE s.wc_id = d.wc_id AND s.moved_to = d.local_relpath) " \
"UNION ALL " \
"SELECT s.local_relpath, s.op_depth, 61, 'Moved to without target' " \
"FROM nodes s " \
"WHERE s.moved_to IS NOT NULL " \
" AND NOT EXISTS(SELECT 1 FROM nodes d " \
" WHERE d.wc_id = s.wc_id AND d.local_relpath = s.moved_to " \
" AND d.op_depth = relpath_depth(d.local_relpath) " \
" AND d.moved_here =1 AND d.repos_path IS NOT NULL) " \
""
#define WC_QUERIES_SQL_DECLARE_STATEMENTS(varname) \
static const char * const varname[] = { \
STMT_0, \
STMT_1, \
STMT_2, \
STMT_3, \
STMT_4, \
STMT_5, \
STMT_6, \
STMT_7, \
STMT_8, \
STMT_9, \
STMT_10, \
STMT_11, \
STMT_12, \
STMT_13, \
STMT_14, \
STMT_15, \
STMT_16, \
STMT_17, \
STMT_18, \
STMT_19, \
STMT_20, \
STMT_21, \
STMT_22, \
STMT_23, \
STMT_24, \
STMT_25, \
STMT_26, \
STMT_27, \
STMT_28, \
STMT_29, \
STMT_30, \
STMT_31, \
STMT_32, \
STMT_33, \
STMT_34, \
STMT_35, \
STMT_36, \
STMT_37, \
STMT_38, \
STMT_39, \
STMT_40, \
STMT_41, \
STMT_42, \
STMT_43, \
STMT_44, \
STMT_45, \
STMT_46, \
STMT_47, \
STMT_48, \
STMT_49, \
STMT_50, \
STMT_51, \
STMT_52, \
STMT_53, \
STMT_54, \
STMT_55, \
STMT_56, \
STMT_57, \
STMT_58, \
STMT_59, \
STMT_60, \
STMT_61, \
STMT_62, \
STMT_63, \
STMT_64, \
STMT_65, \
STMT_66, \
STMT_67, \
STMT_68, \
STMT_69, \
STMT_70, \
STMT_71, \
STMT_72, \
STMT_73, \
STMT_74, \
STMT_75, \
STMT_76, \
STMT_77, \
STMT_78, \
STMT_79, \
STMT_80, \
STMT_81, \
STMT_82, \
STMT_83, \
STMT_84, \
STMT_85, \
STMT_86, \
STMT_87, \
STMT_88, \
STMT_89, \
STMT_90, \
STMT_91, \
STMT_92, \
STMT_93, \
STMT_94, \
STMT_95, \
STMT_96, \
STMT_97, \
STMT_98, \
STMT_99, \
STMT_100, \
STMT_101, \
STMT_102, \
STMT_103, \
STMT_104, \
STMT_105, \
STMT_106, \
STMT_107, \
STMT_108, \
STMT_109, \
STMT_110, \
STMT_111, \
STMT_112, \
STMT_113, \
STMT_114, \
STMT_115, \
STMT_116, \
STMT_117, \
STMT_118, \
STMT_119, \
STMT_120, \
STMT_121, \
STMT_122, \
STMT_123, \
STMT_124, \
STMT_125, \
STMT_126, \
STMT_127, \
STMT_128, \
STMT_129, \
STMT_130, \
STMT_131, \
STMT_132, \
STMT_133, \
STMT_134, \
STMT_135, \
STMT_136, \
STMT_137, \
STMT_138, \
STMT_139, \
STMT_140, \
STMT_141, \
STMT_142, \
STMT_143, \
STMT_144, \
STMT_145, \
STMT_146, \
STMT_147, \
STMT_148, \
STMT_149, \
STMT_150, \
STMT_151, \
STMT_152, \
STMT_153, \
STMT_154, \
STMT_155, \
STMT_156, \
STMT_157, \
STMT_158, \
STMT_159, \
STMT_160, \
STMT_161, \
STMT_162, \
STMT_163, \
STMT_164, \
STMT_165, \
STMT_166, \
STMT_167, \
STMT_168, \
STMT_169, \
STMT_170, \
STMT_171, \
STMT_172, \
STMT_173, \
STMT_174, \
STMT_175, \
STMT_176, \
STMT_177, \
STMT_178, \
STMT_179, \
STMT_180, \
STMT_181, \
STMT_182, \
STMT_183, \
STMT_184, \
STMT_185, \
STMT_186, \
STMT_187, \
STMT_188, \
STMT_189, \
STMT_190, \
STMT_191, \
STMT_192, \
STMT_193, \
STMT_194, \
STMT_195, \
STMT_196, \
STMT_197, \
STMT_198, \
STMT_199, \
STMT_200, \
STMT_201, \
STMT_202, \
STMT_203, \
STMT_204, \
STMT_205, \
STMT_206, \
STMT_207, \
STMT_208, \
STMT_209, \
STMT_210, \
STMT_211, \
STMT_212, \
STMT_213, \
STMT_214, \
STMT_215, \
STMT_216, \
STMT_217, \
NULL \
}
#define WC_QUERIES_SQL_DECLARE_STATEMENT_INFO(varname) \
static const char * const varname[][2] = { \
STMT_0_INFO, \
STMT_1_INFO, \
STMT_2_INFO, \
STMT_3_INFO, \
STMT_4_INFO, \
STMT_5_INFO, \
STMT_6_INFO, \
STMT_7_INFO, \
STMT_8_INFO, \
STMT_9_INFO, \
STMT_10_INFO, \
STMT_11_INFO, \
STMT_12_INFO, \
STMT_13_INFO, \
STMT_14_INFO, \
STMT_15_INFO, \
STMT_16_INFO, \
STMT_17_INFO, \
STMT_18_INFO, \
STMT_19_INFO, \
STMT_20_INFO, \
STMT_21_INFO, \
STMT_22_INFO, \
STMT_23_INFO, \
STMT_24_INFO, \
STMT_25_INFO, \
STMT_26_INFO, \
STMT_27_INFO, \
STMT_28_INFO, \
STMT_29_INFO, \
STMT_30_INFO, \
STMT_31_INFO, \
STMT_32_INFO, \
STMT_33_INFO, \
STMT_34_INFO, \
STMT_35_INFO, \
STMT_36_INFO, \
STMT_37_INFO, \
STMT_38_INFO, \
STMT_39_INFO, \
STMT_40_INFO, \
STMT_41_INFO, \
STMT_42_INFO, \
STMT_43_INFO, \
STMT_44_INFO, \
STMT_45_INFO, \
STMT_46_INFO, \
STMT_47_INFO, \
STMT_48_INFO, \
STMT_49_INFO, \
STMT_50_INFO, \
STMT_51_INFO, \
STMT_52_INFO, \
STMT_53_INFO, \
STMT_54_INFO, \
STMT_55_INFO, \
STMT_56_INFO, \
STMT_57_INFO, \
STMT_58_INFO, \
STMT_59_INFO, \
STMT_60_INFO, \
STMT_61_INFO, \
STMT_62_INFO, \
STMT_63_INFO, \
STMT_64_INFO, \
STMT_65_INFO, \
STMT_66_INFO, \
STMT_67_INFO, \
STMT_68_INFO, \
STMT_69_INFO, \
STMT_70_INFO, \
STMT_71_INFO, \
STMT_72_INFO, \
STMT_73_INFO, \
STMT_74_INFO, \
STMT_75_INFO, \
STMT_76_INFO, \
STMT_77_INFO, \
STMT_78_INFO, \
STMT_79_INFO, \
STMT_80_INFO, \
STMT_81_INFO, \
STMT_82_INFO, \
STMT_83_INFO, \
STMT_84_INFO, \
STMT_85_INFO, \
STMT_86_INFO, \
STMT_87_INFO, \
STMT_88_INFO, \
STMT_89_INFO, \
STMT_90_INFO, \
STMT_91_INFO, \
STMT_92_INFO, \
STMT_93_INFO, \
STMT_94_INFO, \
STMT_95_INFO, \
STMT_96_INFO, \
STMT_97_INFO, \
STMT_98_INFO, \
STMT_99_INFO, \
STMT_100_INFO, \
STMT_101_INFO, \
STMT_102_INFO, \
STMT_103_INFO, \
STMT_104_INFO, \
STMT_105_INFO, \
STMT_106_INFO, \
STMT_107_INFO, \
STMT_108_INFO, \
STMT_109_INFO, \
STMT_110_INFO, \
STMT_111_INFO, \
STMT_112_INFO, \
STMT_113_INFO, \
STMT_114_INFO, \
STMT_115_INFO, \
STMT_116_INFO, \
STMT_117_INFO, \
STMT_118_INFO, \
STMT_119_INFO, \
STMT_120_INFO, \
STMT_121_INFO, \
STMT_122_INFO, \
STMT_123_INFO, \
STMT_124_INFO, \
STMT_125_INFO, \
STMT_126_INFO, \
STMT_127_INFO, \
STMT_128_INFO, \
STMT_129_INFO, \
STMT_130_INFO, \
STMT_131_INFO, \
STMT_132_INFO, \
STMT_133_INFO, \
STMT_134_INFO, \
STMT_135_INFO, \
STMT_136_INFO, \
STMT_137_INFO, \
STMT_138_INFO, \
STMT_139_INFO, \
STMT_140_INFO, \
STMT_141_INFO, \
STMT_142_INFO, \
STMT_143_INFO, \
STMT_144_INFO, \
STMT_145_INFO, \
STMT_146_INFO, \
STMT_147_INFO, \
STMT_148_INFO, \
STMT_149_INFO, \
STMT_150_INFO, \
STMT_151_INFO, \
STMT_152_INFO, \
STMT_153_INFO, \
STMT_154_INFO, \
STMT_155_INFO, \
STMT_156_INFO, \
STMT_157_INFO, \
STMT_158_INFO, \
STMT_159_INFO, \
STMT_160_INFO, \
STMT_161_INFO, \
STMT_162_INFO, \
STMT_163_INFO, \
STMT_164_INFO, \
STMT_165_INFO, \
STMT_166_INFO, \
STMT_167_INFO, \
STMT_168_INFO, \
STMT_169_INFO, \
STMT_170_INFO, \
STMT_171_INFO, \
STMT_172_INFO, \
STMT_173_INFO, \
STMT_174_INFO, \
STMT_175_INFO, \
STMT_176_INFO, \
STMT_177_INFO, \
STMT_178_INFO, \
STMT_179_INFO, \
STMT_180_INFO, \
STMT_181_INFO, \
STMT_182_INFO, \
STMT_183_INFO, \
STMT_184_INFO, \
STMT_185_INFO, \
STMT_186_INFO, \
STMT_187_INFO, \
STMT_188_INFO, \
STMT_189_INFO, \
STMT_190_INFO, \
STMT_191_INFO, \
STMT_192_INFO, \
STMT_193_INFO, \
STMT_194_INFO, \
STMT_195_INFO, \
STMT_196_INFO, \
STMT_197_INFO, \
STMT_198_INFO, \
STMT_199_INFO, \
STMT_200_INFO, \
STMT_201_INFO, \
STMT_202_INFO, \
STMT_203_INFO, \
STMT_204_INFO, \
STMT_205_INFO, \
STMT_206_INFO, \
STMT_207_INFO, \
STMT_208_INFO, \
STMT_209_INFO, \
STMT_210_INFO, \
STMT_211_INFO, \
STMT_212_INFO, \
STMT_213_INFO, \
STMT_214_INFO, \
STMT_215_INFO, \
STMT_216_INFO, \
STMT_217_INFO, \
{NULL, NULL} \
}