Optimize error regeneration in the survey tool

Description

The way we are set up right now, the error values need to be recalculated on
every item in the whole locale, if any element changes in that locale or any
element changes in a locale that that locale depends on (inherited or aliased).
(Or if the voting algorithm changes, or the CVS data is uploaded.)

The error values could be kept in a cache, but that cache needs to get flushed
with any change.

There is a possible optimization: for any path P, the CheckCLDR routine could
figure out which other paths OPs depend on P. So that would allows us to only
recalculate the OPs when P changes value. For example, almost everything depends
on the exemplar set for computing error values, but only other language names
depend on a lanugage name for computed error values (for collisions). This could
limit the recalculation substantially.

I think we could do it by having an API on each subclass, something like:

getPathsAffectedBy(String path, Set<String> affectedByThisPath);

We would then walk through all the subclasses, like we do now for the tests, and
each subclass would add to the affectedByThisPath parameter according to the
whatever dependencies that subclass has for testing.

xpath

None

locale

None

Status

Priority

TBD

Assignee

Steven R. Loomis

Reporter

TracBot

tracReporter

mark@01bc3d7696af9fbb

Reviewer

None

Labels

Components

Fix versions

None

phase

None
Configure