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

Re: Question regarding svn_ra_do_update()

From: Ph. Marek <philipp.marek_at_bmlv.gv.at>
Date: 2006-11-16 07:56:51 CET

On Wednesday 15 November 2006 15:39, Ben Collins-Sussman wrote:
> On 11/15/06, Ph. Marek <philipp.marek@bmlv.gv.at> wrote:
> > > Yes, that's one possibility. Another possibility is to call do_diff()
> > > with textdeltas==FALSE.
> >
> > Does that textdeltas argument now mean "I don't need the text" or "If it
> > has changes, send the full text"? From the documentation I'd expect the
> > first - which doesn't help in my case.
>
> The do_diff() routine causes two trees to be compared on the server:
> the temporary tree that you build (via the reporter), and some
> revision tree. Thus, if a file has changed, the response will
> *always* mention the file. That's not something you can control!
>
> The only thing the textdeltas argument does is either put the deltas
> in the original response (just like the update response does), or not.
> In other words, if a file has changed, your open_file() editor
> function will be called no matter what; the only thing you can
> control is whether your apply_textdelta() function gets called or not.
>
> So yes, you'll have to do what 'svn diff URL1 URL2' does: call
> do_diff(textdeltas=false), and manually call svn_ra_get_file() each
> time open_file() or add_file() is called.
The other option would be to allow ->set_path to define a *file* as locally
empty, meaning the full-text has to be transfered.

Then it's clearly defined whether a delta or fulltext is needed - and the
existing intergace has just to be extended a bit, no new function has to be
made.
Any volunteers?

Although I'm not so sure what I want. This would be the Right Way (having only
a single round-trip to the server), but waiting for the users to upgrade to
(optimistically) 1.4.3 is probably not good ...
OTOH, needing many round-trips just for updating is bad, too.

BTW: is the data of a property deltified or stored as-is?
Eg. if I write a 128kB property, and change a single byte, will it take
additional 128kB in the repository?

Regards,

Phil

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Nov 16 07:56:51 2006

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