separate dropping caches into 3 functions