only refilters data when needed