From dev-return-4273-daniel=haxx.se@subversion.apache.org Thu Jun 10 23:23:00 2010 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on giant.haxx.se X-Spam-Level: X-Spam-Status: No, score=-1.5 required=3.0 tests=BAYES_00,T_RP_MATCHES_RCVD autolearn=ham version=3.3.1 Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by giant.haxx.se (8.14.3/8.14.3/Debian-9.1) with SMTP id o5ALMxhr004023 for ; Thu, 10 Jun 2010 23:23:00 +0200 Received: (qmail 54065 invoked by uid 500); 10 Jun 2010 21:22:49 -0000 Mailing-List: contact dev-help@subversion.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list dev@subversion.apache.org Received: (qmail 54050 invoked by uid 99); 10 Jun 2010 21:22:49 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 10 Jun 2010 21:22:49 +0000 X-ASF-Spam-Status: No, hits=1.8 required=10.0 tests=AWL,HTML_MESSAGE,SPF_NEUTRAL Received-SPF: neutral (athena.apache.org: local policy) Received: from [74.125.82.171] (HELO mail-wy0-f171.google.com) (74.125.82.171) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 10 Jun 2010 21:22:43 +0000 Received: by wyf19 with SMTP id 19so336691wyf.16 for ; Thu, 10 Jun 2010 14:22:20 -0700 (PDT) Received: by 10.227.142.69 with SMTP id p5mr890117wbu.2.1276204940218; Thu, 10 Jun 2010 14:22:20 -0700 (PDT) Received: from dv7 (i577B55C3.versanet.de [87.123.85.195]) by mx.google.com with ESMTPS id y31sm3029391wby.10.2010.06.10.14.22.17 (version=TLSv1/SSLv3 cipher=RC4-MD5); Thu, 10 Jun 2010 14:22:18 -0700 (PDT) Sender: Bert Huijben From: "Bert Huijben" To: Cc: References: <20100601083309.37B6323889D7@eris.apache.org> In-Reply-To: Subject: RE: svn commit: r949964 - /subversion/trunk/subversion/libsvn_wc/wc_db.c Date: Thu, 10 Jun 2010 23:22:15 +0200 Message-ID: <2c5201cb08e3$00bd1060$02373120$@vmoo.com> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_2C53_01CB08F3.C4485160" X-Mailer: Microsoft Outlook 14.0 Thread-Index: AQFoFwKwHg0Klwckdf6TGHaDYtiVUAH07L17kzHvoiA= Content-Language: nl X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.3.5 (giant.haxx.se [80.67.6.50]); Thu, 10 Jun 2010 23:23:00 +0200 (CEST) X-Friend: Nope ------=_NextPart_000_2C53_01CB08F3.C4485160 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit STMT_INSERT_ACTUAL_NODE does an insert or replace, which might be invalid in this case. (It's documentation says that it is only used from entries.c). I think we should create a similar statement (maybe with the missing rows) that is always safe to use Bert From: hyrum@hyrumwright.org [mailto:hyrum@hyrumwright.org] On Behalf Of Hyrum K. Wright Sent: dinsdag 1 juni 2010 13:48 To: dev@subversion.apache.org Cc: commits@subversion.apache.org Subject: Re: svn commit: r949964 - /subversion/trunk/subversion/libsvn_wc/wc_db.c On Tue, Jun 1, 2010 at 4:33 AM, wrote: Author: philip Date: Tue Jun 1 08:33:08 2010 New Revision: 949964 URL: http://svn.apache.org/viewvc?rev=949964 &view=rev Log: * subversion/libsvn_wc/wc_db.c (temp_cross_db_copy): Bind all the parameters when copying the ACTUAL_NODE, use a blob for properties. 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?r ev=949964 &r1=949963&r2=949964&view=diff ============================================================================ == --- subversion/trunk/subversion/libsvn_wc/wc_db.c (original) +++ subversion/trunk/subversion/libsvn_wc/wc_db.c Tue Jun 1 08:33:08 2010 @@ -2267,14 +2267,16 @@ temp_cross_db_copy(svn_wc__db_t *db, scratch_pool); const char *tree_conflict_data = svn_sqlite__column_text(stmt, 5, scratch_pool); - const char *properties = svn_sqlite__column_text(stmt, 6, scratch_pool); + apr_size_t props_size; + const char *properties = svn_sqlite__column_blob(stmt, 6, &props_size, + scratch_pool); Should we be using svn_sqlite__column_properties() here (and extending _bindf() so that it knows about properties)? I understand we're just doing a straight copy, so we don't necessarily need to parse and unparse the properties, but if this is the case, perhaps a comment in the code would be useful. SVN_ERR(svn_sqlite__reset(stmt)); SVN_ERR(svn_sqlite__get_statement(&stmt, dst_pdh->wcroot->sdb, STMT_INSERT_ACTUAL_NODE)); - SVN_ERR(svn_sqlite__bindf(stmt, "isss", + SVN_ERR(svn_sqlite__bindf(stmt, "issbsssss", dst_pdh->wcroot->wc_id, dst_relpath, svn_relpath_dirname(dst_relpath, scratch_pool), - properties, + properties, props_size, conflict_old, conflict_new, conflict_working, changelist, tree_conflict_data)); SVN_ERR(svn_sqlite__step(&have_row, stmt)); -Hyrum ------=_NextPart_000_2C53_01CB08F3.C4485160--