[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r37419 - trunk/subversion/libsvn_wc

From: Greg Stein <gstein_at_gmail.com>
Date: Wed, 22 Apr 2009 03:45:03 +0200

Last time, I hadn't run the test suite before declaring near-victory.
Apparently, there were a few regressions that had to be cleared up
first. (or more like: changes I was making, exposed bugs in svn)

I just got done running the wc-ng test suite, and the only failing
test is "update 24". But see my email about add/add conflicts. I
believe that update 24 exposes an underlying problem in our tree
conflicts and scheduling code that is unrelated to wc-ng.

Almost there...

Cheers,
-g

On Wed, Apr 22, 2009 at 03:37, Greg Stein <gstein_at_gmail.com> wrote:
> Author: gstein
> Date: Tue Apr 21 18:37:16 2009
> New Revision: 37419
>
> Log:
> write_entry() was incorrectly constructing not-present rows in the
> BASE_NODE table. We added this code a while back, but it turns out that it
> was trying to compensate for incorrect values on ENTRY->DELETED. In
> r37414, we fixed the construction of the DELETED value, so this code is
> incorrect and obsolete.
>
> * subversion/libsvn_wc/entries.c:
>  (write_entry): remove insertion of not-present rows for certain
>    schedule-add conditions. the DELETED handling takes care of it for us.
>  (svn_wc__entry_remove, svn_wc__entry_modify, svn_wc__tweak_entry): add
>    calls to svn_error_return() on function exit to support tracing.
>
> Modified:
>   trunk/subversion/libsvn_wc/entries.c
>
> Modified: trunk/subversion/libsvn_wc/entries.c
> URL: http://svn.collab.net/viewvc/svn/trunk/subversion/libsvn_wc/entries.c?pathrev=37419&r1=37418&r2=37419
> ==============================================================================
> --- trunk/subversion/libsvn_wc/entries.c        Tue Apr 21 12:28:36 2009        (r37418)
> +++ trunk/subversion/libsvn_wc/entries.c        Tue Apr 21 18:37:16 2009        (r37419)
> @@ -2220,11 +2220,6 @@ write_entry(svn_wc__db_t *db,
>
>       case svn_wc_schedule_add:
>         working_node = MAYBE_ALLOC(working_node, scratch_pool);
> -        if (entry->revision > 0
> -              && entry->revision != this_dir->revision)
> -          {
> -            base_node = MAYBE_ALLOC(base_node, scratch_pool);
> -          }
>         break;
>
>       case svn_wc_schedule_delete:
> @@ -2397,9 +2392,6 @@ write_entry(svn_wc__db_t *db,
>       else
>         base_node->kind = entry->kind;
>
> -      if (entry->revision > 0 && entry->schedule == svn_wc_schedule_add)
> -        base_node->presence = svn_wc__db_status_not_present;
> -
>       if (entry->kind == svn_node_dir)
>         base_node->checksum = NULL;
>       else
> @@ -2960,7 +2952,8 @@ svn_wc__entry_remove(apr_hash_t *entries
>
>   apr_hash_set(entries, name, APR_HASH_KEY_STRING, NULL);
>
> -  return svn_wc__entries_write(entries, adm_access, scratch_pool);
> +  return svn_error_return(svn_wc__entries_write(entries, adm_access,
> +                                                scratch_pool));
>  }
>
>
> @@ -3240,7 +3233,7 @@ svn_wc__entry_modify(svn_wc_adm_access_t
>     }
>
>   /* Sync changes to disk. */
> -  return svn_wc__entries_write(entries, adm_access, pool);
> +  return svn_error_return(svn_wc__entries_write(entries, adm_access, pool));
>  }
>
>
> @@ -3394,7 +3387,8 @@ svn_wc__tweak_entry(svn_wc_adm_access_t
>       apr_hash_set(entries, name, APR_HASH_KEY_STRING, NULL);
>     }
>
> -  return svn_wc__entries_write(entries, adm_access, scratch_pool);
> +  return svn_error_return(svn_wc__entries_write(entries, adm_access,
> +                                                scratch_pool));
>  }
>
> ------------------------------------------------------
> http://subversion.tigris.org/ds/viewMessage.do?dsForumId=495&dsMessageId=1852032
>

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1852121
Received on 2009-04-22 04:08:13 CEST

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.