sounds like a plan. angela
On 06/02/14 10:45, "Thomas Mueller" <[email protected]> wrote: >Hi, > >We have some abstract classes that implement some methods for convenience. >For example, AbstractBlob.equals() is implemented by comparing all bytes >of a blob, which is very slow (OAK-1392). Or >AbstractNodeState.compareAgainstBaseState. > >Because we forgot(?) to override those methods, we sometimes ended up with >very slow performance. > >I would prefer if the implementations in the abstract classes are not >slow. Instead, I would prefer if such methods would be abstract or not >implemented (in the case of equals). If a "convenience" implementation is >useful, but slow, it should have a different name, for example >"equalsBruteForce" or >AbstractNodeState.compareAgainstBaseStateBruteForce(..). > >That way, a non-abstract implementation could still use the default (slow) >implementation (for example for the in-memory case, or if the amount of >data is known to be small), but it would have to do that explicitly. > >Regards, >Thomas >
