On Mon, Jul 12, 2010 at 06:32, Erik Huelsmann <ehuels_at_gmail.com> wrote:
> On Sun, Jul 11, 2010 at 1:04 AM, Greg Stein <gstein_at_gmail.com> wrote:
>>> * translated_size
>>> * last_mod_time
> Thinking about it a bit more, I think translated_size and
> last_mod_time are a bit odd to have in NODE_DATA - although they are
> part of both BASE_NODE and WORKING_NODE: they really do apply only to
> BASE and the *current* working node: they are part of the optimization
> to determine if a file has changed. Presumably, when a different layer
> of WORKING becomes visible, we'll be recalculating both fields.
> If that's the case, shouldn't we just hold onto them in their respective tables?
>>> * symlink_target
>>> * file_external
>> I'm not sure that file_external belongs here. We certainly don't have
>> it in WORKING_NODE.
> I've been informing around on IRC to understand the difference between
> why that would apply to file_external, but not to symlink_target. The
> difference isn't clear to me yet. Do you have anything which might
> help me?
To be honest, file external state is kind of a hand-wave. It is
possible they need storage in WORKING_NODE (well... NODE_DATA), too.
The column was added to BASE_NODE to kind of get things working.
The proper solution is to review the file externals implementation
across WC and figure out what is needed. None of the currently active
committers has a good handle on file externals.
Received on 2010-07-12 18:22:49 CEST