You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ph...@apache.org on 2010/06/14 11:44:39 UTC

svn commit: r954389 - /subversion/trunk/subversion/libsvn_wc/wc_db.c

Author: philip
Date: Mon Jun 14 09:44:38 2010
New Revision: 954389

URL: http://svn.apache.org/viewvc?rev=954389&view=rev
Log:
* subversion/libsvn_wc/wc_db.c
  (svn_wc__db_global_relocate): Avoid an SQL query when base_shadowed
   is TRUE for excluded or incomplete nodes.

Modified:
    subversion/trunk/subversion/libsvn_wc/wc_db.c

Modified: subversion/trunk/subversion/libsvn_wc/wc_db.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/wc_db.c?rev=954389&r1=954388&r2=954389&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/wc_db.c (original)
+++ subversion/trunk/subversion/libsvn_wc/wc_db.c Mon Jun 14 09:44:38 2010
@@ -4866,14 +4866,19 @@ svn_wc__db_global_relocate(svn_wc__db_t 
   if (status == svn_wc__db_status_excluded
       || status == svn_wc__db_status_incomplete)
     {
-      svn_sqlite__stmt_t *stmt;
+      if (base_shadowed)
+        rb.have_base_node = TRUE;
+      else
+        {
+          svn_sqlite__stmt_t *stmt;
 
-      SVN_ERR(svn_sqlite__get_statement(&stmt, pdh->wcroot->sdb,
-                                        STMT_SELECT_BASE_NODE));
-      SVN_ERR(svn_sqlite__bindf(stmt, "is",
-                                pdh->wcroot->wc_id, rb.local_relpath));
-      SVN_ERR(svn_sqlite__step(&rb.have_base_node, stmt));
-      SVN_ERR(svn_sqlite__reset(stmt));
+          SVN_ERR(svn_sqlite__get_statement(&stmt, pdh->wcroot->sdb,
+                                            STMT_SELECT_BASE_NODE));
+          SVN_ERR(svn_sqlite__bindf(stmt, "is",
+                                    pdh->wcroot->wc_id, rb.local_relpath));
+          SVN_ERR(svn_sqlite__step(&rb.have_base_node, stmt));
+          SVN_ERR(svn_sqlite__reset(stmt));
+        }
     }
   else if (base_shadowed || status == svn_wc__db_status_normal
            || status == svn_wc__db_status_absent