LocalDynamic + MetadataFilters = possible bug?

Cantor, Scott cantor.2 at osu.edu
Thu Oct 15 15:35:50 UTC 2020


On 10/15/20, 11:26 AM, "users on behalf of Mak, Steve" <users-bounces at shibboleth.net on behalf of makst at upenn.edu> wrote:

>    Is it possible for the MetadataProvider cleanupTaskInterval to kill cached md before the user finishes logging in?

No. Java just keeps the reference to all of the objects around until they're gone. The lock is long released but swapping in new metadata won't affect a request that already fetched the old copy. Whenever all the old requests are done, nothing else references the old metadata and it's eligible to be collected.

That's what makes Java easy and C++ painful. The IdP can scope locks very easily around a swap of the entire service configuration because anything old is still around being referenced as long as it needs to be. The SP has to use formal read/write lock patterns to prevent service reloads from taking effect until no requests are active. The IdP doesn't have to care.

-- Scott




More information about the users mailing list