On Fri, Mar 11, 2022 at 9:17 PM Nathan Hartman <hartman.nat...@gmail.com> wrote:
> If possible and not overly burdensome, I think it would be a good
> thing to keep the "restore" functionality for the following reasons:
[snip]

I agree. I know about the restore feature too, and am used to it.
Also, I think it would be a mistake to create different behaviour
between "normal (pristine-full)" and "pristines-on-demand" working
copies.

On "update's essential functionality": the main problem, I feel, is
that the current implementation fetches missing pristines for modified
files *even if they will not be updated*. I understand that this
happens because, at the point of "textbase-sync" (check for and
download missing pristines, which happens before the operation goes
into details), it doesn't know yet which files will effectively
receive an update. So this really feels like a waste (fetching stuff
which will not even be needed, and indeed in many use cases like
Karl's often won't be).

But you all know that already, I guess, and I appreciate all efforts
in trying to come up with creative approaches to avoid this "waste"
:-).

Don't know if this is realistic or useful, but:
Apart from pushing this textbase-sync closer to the point of access,
one could imagine that during textbase-sync the client would already
have more information about what will be updated later on. For example
by organizing the client-server exchange so that the client first
receives a report, without texts, about what will be updated, then
fetching missing pristines if needed, and then going on to request the
actual update texts. IIRC, this kind of exchange is already the
default since 1.8 with serf (except if certain directives / config
flags are set) [1]. Then again, it might be quite awkward to implement
this kind of flow only for one particular variation of our
client-server protocol.

[1] 
https://subversion.apache.org/docs/release-notes/1.8.html#serf-skelta-default

-- 
Johan

Reply via email to