fixed invalidation cycle