Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion svn commit: r1408325 - /subversion/branches/wc-collat e-path/subversion/libsvn_subr/ sqlite.c

Received: by 10.42.41.9 with SMTP id n9mr5399057ice.29.1352736736512;
        Mon, 12 Nov 2012 08:12:16 -0800 (PST)
X-BeenThere: subversion-development@googlegroups.com
Received: by 10.42.244.193 with SMTP id lr1ls14338428icb.1.gmail; Mon, 12 Nov
 2012 08:12:16 -0800 (PST)
Received: by 10.66.86.98 with SMTP id o2mr7367685paz.29.1352736736306;
        Mon, 12 Nov 2012 08:12:16 -0800 (PST)
Received: by 10.66.86.98 with SMTP id o2mr7367684paz.29.1352736736295;
        Mon, 12 Nov 2012 08:12:16 -0800 (PST)
Return-Path: <dev-return-22682-subversion-development+garchive-20679=googlegroups....@subversion.apache.org>
Received: from mail.apache.org (hermes.apache.org. [140.211.11.3])
        by gmr-mx.google.com with SMTP id js4si1522999pbb.2.2012.11.12.08.12.16;
        Mon, 12 Nov 2012 08:12:16 -0800 (PST)
Received-SPF: pass (google.com: domain of dev-return-22682-subversion-development+garchive-20679=googlegroups....@subversion.apache.org designates 140.211.11.3 as permitted sender) client-ip=140.211.11.3;
Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of dev-return-22682-subversion-development+garchive-20679=googlegroups....@subversion.apache.org designates 140.211.11.3 as permitted sender) smtp.mail=dev-return-22682-subversion-development+garchive-20679=googlegroups....@subversion.apache.org
Received: (qmail 31986 invoked by uid 500); 12 Nov 2012 16:12:15 -0000
Mailing-List: contact dev-h...@subversion.apache.org; run by ezmlm
Precedence: bulk
List-Help: <mailto:dev-h...@subversion.apache.org>
List-Unsubscribe: <mailto:dev-unsubscr...@subversion.apache.org>
List-Post: <mailto:d...@subversion.apache.org>
List-Id: <dev.subversion.apache.org>
Delivered-To: mailing list d...@subversion.apache.org
Received: (qmail 31931 invoked by uid 99); 12 Nov 2012 16:12:14 -0000
Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230)
    by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Nov 2012 16:12:14 +0000
X-ASF-Spam-Status: No, hits=-0.0 required=5.0
	tests=RCVD_IN_DNSWL_LOW,SPF_NEUTRAL
X-Spam-Check-By: apache.org
Received-SPF: neutral (nike.apache.org: local policy)
Received: from [74.125.82.47] (HELO mail-wg0-f47.google.com) (74.125.82.47)
    by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Nov 2012 16:12:06 +0000
Received: by mail-wg0-f47.google.com with SMTP id ez12so3061602wgb.16
        for <d...@subversion.apache.org>; Mon, 12 Nov 2012 08:11:45 -0800 (PST)
        d=google.com; s=20120113;
        h=from:to:references:in-reply-to:subject:date:message-id:mime-version
         :content-type:content-transfer-encoding:x-mailer:thread-index
         :content-language:x-gm-message-state;
        bh=2eCrbFkcHz82VR1gXXxl/VUmb4IKEZOF/FMWcezEmFk=;
        b=pkxCJ2jem8BScYDIJZZXuy4IEI9mMNpHJQJun7FPCbaZnUdPh3OGrbK2UGroOD6xgS
         jVg1eOaOa0UclU1uwi5YNQFxZYu6v/aKwCMSCwwNvbl54jcP8bSu06l94xTgRJ53Gkw2
         HETmH8+ell08Jf2JWkKtO5RXHrjZh6l/3Y5rHef0P3A071IOVGv0qb6wl+J5DhlihSRR
         FFtGRdParSMNOdQbLWpXV4/H+slPdzh0imJSHH/vdoVIsDr3/GG9WEbKO/5qEovzORdD
         DjWsctMPeBcLdbEvlp7I0fWFvYCRZwqHIQzrlfTqqG+37kxMgQc9KwTVZrXqFnbwXliT
         /ILw==
Received: by 10.216.56.82 with SMTP id l60mr7534406wec.18.1352736705744;
        Mon, 12 Nov 2012 08:11:45 -0800 (PST)
Received: from i72600 ([2001:610:66e:0:59f6:6194:a164:dbd7])
        by mx.google.com with ESMTPS id ei1sm12289386wid.7.2012.11.12.08.11.44
        (version=TLSv1/SSLv3 cipher=OTHER);
        Mon, 12 Nov 2012 08:11:44 -0800 (PST)
From: "Bert Huijben" <b...@qqmail.nl>
To: =?utf-8?Q?Branko_=C4=8Cibej?= <br...@apache.org>,
	<d...@subversion.apache.org>
References: <20121112153648.7ED082388...@eris.apache.org>
In-Reply-To: <20121112153648.7ED082388...@eris.apache.org>
Subject: RE: svn commit: r1408325 - /subversion/branches/wc-collate-path/subversion/libsvn_subr/sqlite.c
Date: Mon, 12 Nov 2012 17:11:38 +0100
Message-ID: <020101cdc0f0$660c0440$32240c...@qqmail.nl>
MIME-Version: 1.0
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQEUjRRFMRL4aat5A22ZEXKwyl6aL5lYwpDQ
Content-Language: nl
X-Gm-Message-State: ALoCoQmWdtpcRksf9Mo+cwhz3JoHWhIq7tFE4NZCqLwIzD3zDpT/eOs7reYz1u6pJjDKbILjZJIu
X-Virus-Checked: Checked by ClamAV on apache.org



> -----Original Message-----
> From: br...@apache.org [mailto:br...@apache.org]
> Sent: maandag 12 november 2012 16:37
> To: comm...@subversion.apache.org
> Subject: svn commit: r1408325 - /subversion/branches/wc-collate-
> path/subversion/libsvn_subr/sqlite.c
>=20
> Author: brane
> Date: Mon Nov 12 15:36:47 2012
> New Revision: 1408325
>=20
> URL: http://svn.apache.org/viewvc?rev=3D1408325&view=3Drev
> Log:
> On the wc-collate-path branch: Enable GLOB and LIKE operator
> replacements.

Completely unrelated to this patch, but I'm still wondering what your =
total approach/plan on this branch will be.

I can see that we handle this collate in sqlite (even though this breaks =
using a plain sqlite3 as tool on wc.db, etc.), but the =
notes/unicode-composition-for-filenames describes several other problems =
that need a fix at the same time in order not to break at least some =
current subversion users.

One of these things is that we use hashtables to represent all nodes in =
a directory in several places. In some cases we get this from the =
working copy, in some cases from the db and in even other cases from the =
repository. Some of these may be normalized in some way, while others =
are not (especially with our compatibility guarantees within 1.X)

I'm afraid that just getting wc.db compatible with normalization will =
just shift the problem one layer, while still not fixing the real =
problem. Erik Huelsmann thoroughly investigated this problem space some =
years ago and he documented that fixing the wc library is not enough for =
fixing the generic case. And if we are not fixing the generic case, I'm =
wondering if we should really work on a major slowdown of every common =
operation.

We currently have a binary format, that can be used as a hash key, so =
many comparison and lookup operations are constant time.
I'm not sure how they are after installing the collate handling.


If we leave the generic case, there are easier ways to resolve this =
issue. One such thing would be to make apr (or a wrapper in Subversion) =
normalize the on disk paths in the other direction and deny (on the =
server) the non-normalized paths. This would eliminate the slowdown on =
most use cases that don't have a problem right now, and keep the code =
clean for future problems.

If we have to check for collate handling everywhere in libsvn_wc and =
libsvn_client we make it much harder for outside developers to create =
patches and even fewer core subversion developers would dare touch these =
layers.



I'm glad somebody is finally looking into these issues, but I think we =
should look at the full picture before we can talk about getting this =
back on trunk.

	Bert