Skip to content

AthenaConfiguration: Fix CA caching issue.

We can use AccumulatorCache to memoize results of functions returning a CA. The memoized results are looked up by a hash of the arguments.

However, the hash of a set of configuration flags is based on the object id (since only locked flags can be hashed). But this can fail if flag objects are deleted and recreated, since then we can have flags objects with different values but the same hash.

When we hash a set of flags, save a reference to it, so that the address won't be reused. Shouldn't significantly affect typical configurations which don't reuse flags objects, but some unit tests do that.

See ATLASRECTS-8070.

Merge request reports