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

Re: svn commit: r1129818 - /subversion/trunk/subversion/libsvn_wc/wc-checks.sql

From: Johan Corveleyn <jcorvel_at_gmail.com>
Date: Tue, 31 May 2011 21:13:42 +0200

On Tue, May 31, 2011 at 7:37 PM, <philip_at_apache.org> wrote:
> Author: philip
> Date: Tue May 31 17:37:33 2011
> New Revision: 1129818
>
> URL: http://svn.apache.org/viewvc?rev=1129818&view=rev
> Log:
> * subversion/libsvn_wc/wc-checks.sql
>  (validation_03): Use EXISTS rather than COUNT.
>
> Modified:
>    subversion/trunk/subversion/libsvn_wc/wc-checks.sql
>
> Modified: subversion/trunk/subversion/libsvn_wc/wc-checks.sql
> URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/wc-checks.sql?rev=1129818&r1=1129817&r2=1129818&view=diff
> ==============================================================================
> --- subversion/trunk/subversion/libsvn_wc/wc-checks.sql (original)
> +++ subversion/trunk/subversion/libsvn_wc/wc-checks.sql Tue May 31 17:37:33 2011
> @@ -54,10 +54,9 @@ CREATE TEMPORARY TRIGGER validation_03 B
>  WHEN NOT (
>     (new.op_depth = relpath_depth(new.local_relpath))
>     OR
> -    ((SELECT COUNT(*) FROM nodes
> -      WHERE wc_id = new.wc_id AND op_depth = new.op_depth
> -        AND local_relpath = new.parent_relpath
> -      LIMIT 2) == 1)
> +    (EXISTS (SELECT 1 FROM nodes
> +              WHERE wc_id = new.wc_id AND op_depth = new.op_depth
> +                AND local_relpath = new.parent_relpath))
>   )
>  BEGIN
>   SELECT RAISE(FAIL, 'WC DB validity check 03 failed');

I don't know the context, but are you sure this is a non-functional change?

The SELECT COUNT you removed checked for == 1. The EXISTS allows for
>= 1. So if there are 2 such nodes, the condition you removed would
have been false, but the one you put in place would be true.

-- 
Johan
Received on 2011-05-31 21:14:35 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.